База ответов ИНТУИТ

Введение в принципы функционирования и применения современных мультиядерных архитектур (на примере Intel Xeon Phi)

<<- Назад к вопросам

Следующая функция
void factorization() {#pragma omp parallel for  for (int i = 1; i < NUM_NUMBERS; i++)  {    int number = i;    int idx = number;    for (int j = 2; j < idx; j++)    {      if (number == 1) break;       int r;      r = number % j;      if (r == 0)      {        number /= j;        divisors[idx].push_back(j);        j--;      }    }      }}
факторизует числа в диапазоне от 1 до NUM_NUMBERS. Добавление к прагме parallel параметра schedule(dynamic) уменьшит время

(Отметьте один правильный вариант ответа.)

Варианты ответа
не изменит время работы
уменьшит время работы
увеличит время работы(Верный ответ)
Похожие вопросы
Следующая функция
void factorization() {#pragma omp parallel for  for (int i = 1; i < NUM_NUMBERS; i++)  {    int number = i;    int idx = number;    for (int j = 2; j < idx; j++)    {      if (number == 1) break;       int r;      r = number % j;      if (r == 0)      {        number /= j;        divisors[idx].push_back(j);        j--;      }    }      }}
факторизует числа в диапазоне от 1 до NUM_NUMBERS. Добавление к прагме parallel параметра schedule(static, 1) приведет к
Следующая функция
void factorization() {#pragma omp parallel for  for (int i = 1; i < NUM_NUMBERS; i++)  {    int number = i;    int idx = number;    for (int j = 2; j < idx; j++)    {      if (number == 1) break;       int r;      r = number % j;      if (r == 0)      {        number /= j;        divisors[idx].push_back(j);        j--;      }    }      }}
факторизует числа в диапазоне от 1 до NUM_NUMBERS. Добавление к прагме parallel параметра schedule(static, chunk) при правильном выборе chunk
Следующий код
int idx = number;    for (int j = 2; j < number; j++)    {      if (idx == 1) break;       int r;      r = idx % j;      if (r == 0)      {        idx /= j;        divisors[number].push_back(j);        j--;      }    }
Пусть в программе присутствует следующий код:
    for (int j = 2; j < 1000; j++)    {      if (number == 1) break;       int r;      r = number % j;      if (r == 0)      {        number /= j;        divisors[idx].push_back(j);        j--;      }    }    
Возможна ли векторизация данного цикла средствами компилятора для исполнения на Intel Xeon Phi?
Следующий псевдокод
1.   i  number;2.   for j = 2 to number3.     if (i == 1) break; 4.     r  i % j;5.     if (r == 0)6.       i  i / j;7.       save_divisor(number, j);8.       j  j - 1;
При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?
При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?
При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?
При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?
При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?