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

Количество вопросов - 241

На какой конвейер отправляется первая инструкция из пары декодированных?

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 128…int rr[LOOP_SIZE];for(int k = 0; k < LOOP_SIZE; k++){  rr[k] = number % k;}
Возможна ли векторизация данного цикла средствами компилятора для исполнения на Intel Xeon Phi?

Пусть разработан код представленный ниже:
  F1();  #pragma offload target(mic:0)  signal(s1)  {  F2(p1, p2);  }
В каком порядке будут исполняться функции F1 и F2?

Что определяет количество потоков в рамках параллельной секции?

Код «D[:] = sin(S[:]);» в Cilk Plus приведёт к:

Какого потенциального ускорения можно добиться при векторизации функции, работающей с вещественными числами двойной точности, на сопроцессоре Intel Xeon Phi

Поддерживает ли ядро сопроцессора Intel Xeon Phi внеочередное выполнение инструкций?

Что такое Symmetric Communication Interface API (SCIF API)?

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 128…int rr[LOOP_SIZE];…p = 1;for(int k = 0; k < LOOP_SIZE; k++){  p *= rr[k];}
Возможна ли векторизация данного цикла средствами компилятора, для исполнения на Intel Xeon Phi?

Теоретическая производительность сопроцессора Intel Xeon Phi больше производительности процессоров общего назначения.

Какого потенциального ускорения можно добиться при векторизации функции, работающей с вещественными числами одинарной точности, на сопроцессоре Intel Xeon Phi

Intel Cilk Plus – это:

Какой процент от пиковой производительности можно получить в функции, работающей с вещественными числами одинарной точности, без использования векторных расширений на процессоре Intel Xeon

Современные персональные компьютеры в основном относятся к:

Следующая функция
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

Директива #pragma offload target(mic) обеспечивает:

#!/bin/shmpicc –O2 –openmp main.cpp –o ./program_namempicc –O2 –openmp –mmic main.cpp –o ./program_name.mic
Данный скрипт используется для компиляции программы, которая должна исполняться в режиме:

При использовании режима Offload:

Размер векторного регистра для хранения данных с плавающей запятой в наборе команд AVX составляет:

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

S,N,1,2.0.0.#!/bin/shexport PPN=2export MICperNODE=2sbatch –N 2 –-gres=mic:2 symmetric_run.sh ./program_name
Данный скрипт обеспечивает запуск программы в симметричном режиме на кластере с системой управления SLURM.Сколько всего процессов будет создано при запуске программы?

Какая из предложенных ниже синтаксических конструкций обеспечивает выравнивание статических массивов?

Уменьшение техпроцесса производства процессоров приводит к:

Информационная целостность (когерентность) кэшей может быть организована на аппаратном уровне.

Какое из следующих утверждений является верным?

Какие из приведенных ниже языков программирования поддерживают явную схему работы с памятью в режиме offload:

Какую латентность имеют большинство векторных инструкций?

Какова латентность доступа к памяти сопроцессора Intel Xeon Phi?

Какие схемы взаимодействия между кешем и основной памятью реализованы в сопроцессоре Intel Xeon Phi?

Какие из указанных состояний строки кэша используются в протоколе MESI:

Одна из формулировок закона Мура гласит:

Уменьшение техпроцесса производства процессоров приводит к:

Главным преимуществом кластерных систем является:

Какой порог производительности преодолевают лидеры списка Top 500?

Какой порог производительности преодолеют лидеры списка Top 500 в ближайшие годы?

Информационная целостность (когерентность) кэшей может быть организована на программном уровне.

При использовании политики обратной записи (write back) данных из кэша в оперативную память:

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

Какие из указанных состояний строки кэша используются в протоколе MESI:

Сколько ядер содержит сопроцессор Intel Xeon Phi?

Сколько каналов доступа к памяти включает каждый контроллер памяти сопроцессора Intel Xeon Phi?

Какова разрядность блока векторных вычислений сопроцессора Intel Xeon Phi (длина обрабатываемых векторов)?

Выберите верное утверждения.

Какова латентность доступа к памяти сопроцессора Intel Xeon Phi?

Какие базовые операционные системы позволяют использовать сопроцессор Intel Xeon Phi?

Каким образом можно передавать данные между памятью хост-системы и памятью сопроцессора Intel Xeon Phi?

При использовании модели использования только сопроцессоров (Coprocessor-only model)

Сколько этапов (стадий) содержит конвейер сопроцессора Intel Xeon Phi?

При разработке программ для сопроцессора Intel Xeon Phi

Какое количество потоков может быть создано в рамках параллельной секции?

В программе на MPI необходимо распределить итерации цикла между процессами, считая, что время выполнения итераций примерно одинаковое

Сколько потоков для вычислений будет создано библиотекой TBB после выполнения указанного ниже кода?
task_scheduler_init init; init.initialize(4);      

При реализации функтора для функции parallel_for:

Какой ключ компилятора icc следует использовать для компиляции программы, если она должна запускаться только на сопроцессоре:

Для компиляции программы, исполняемой только на сопроцессоре, следует использовать скрипт:

Какой из представленных ниже скриптов обеспечивает запуск программы в симметричном режиме:

Какой скрипт обеспечивает получение монопольного доступа к двум узлам кластера, на каждом из которых установлено не менее двух сопроцессоров?Работа ведется на кластере с системой управления SLURM.

Пусть разработан код представленный ниже:
  #pragma offload target(mic:0) wait (s1)  {  F1(p1, p2);  }  F2();
В каком порядке будут исполняться функции F1 и F2?

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 24…int rr[LOOP_SIZE];for(int k = 0; k < LOOP_SIZE; k++){  rr[k] = number % k;}
Какого следует ожидать ускорения в результате векторизации по сравнению со скалярной версией на Intel Xeon Phi?

Размер векторного регистра для хранения данных с плавающей запятой в наборе команд Intel Xeon Phi составляет:

Какого потенциального ускорения можно добиться при векторизации функции, работающей с вещественными числами одинарной точности, с использованием расширения AVX на процессоре Intel Xeon

Какого потенциального ускорения можно добиться при векторизации функции, работающей с вещественными числами двойной точности, с использованием расширения SSE на процессоре Intel Xeon

Какой процент от пиковой производительности можно получить в функции, работающей с вещественными числами одинарной точности, без использования векторных расширений на сопроцессоре Intel Xeon Phi

Инструкция вида FMA позволяет выполнить следующую операцию:

Каким образом возможно использование векторных инструкций в программе?

Для данного цикла определите, зависимы ли его итерации. При наличии зависимости охарактеризуйте ее характер.
for (int i = 0; i < n – 2; i++)    a[i + 2] = a[i] * 3 + 1;

Следующую функцию
void GetOptionPricesV7(float *pT, float *pK, float *pS0, float *pC){  int i;  float d1, d2, erf1, erf2, invf;  float sig2 = sig * sig;#pragma omp parallel for private(invf, d1, d2, erf1, erf2)  for (i = 0; i < N; i++)  {    invf = invsqrtf(sig2 * pT[i]);    d1 = (logf(pS0[i] / pK[i]) + (r + sig2 * 0.5f) *          pT[i]) * invf;    d2 = (logf(pS0[i] / pK[i]) + (r - sig2 * 0.5f) *          pT[i]) * invf;    erf1 = 0.5f + 0.5f * erff(d1 * invsqrt2);    erf2 = 0.5f + 0.5f * erff(d2 * invsqrt2);    pC[i] = pS0[i] * erf1 - pK[i] * expf((-1.0f) * r *            pT[i]) * erf2;  }}
требуется собрать с поддержкой векторного набора команд AVX (ключ –mavx). Нужно ли модифицировать код?

Пусть в программе присутствует следующий код:
    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?

Выберите синтаксическую конструкцию, которая бы обеспечивала запуск участка кода на сопроцессоре (язык C/C++):

В системе доступно 3 сопроцессора.Директива #pragma offload target(mic:6) обеспечивает:

Какой параметр директивы #pragma offload используется для явного указания, где запускать код?

При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?

__attribute__((target(mic))) void func(float* a,     float* b, int count, float c, float d){    #pragma omp parallel for     for (int i = 0; i < count; ++i)    {        a[i] = b[i]*c + d;    }}int main(){    const int count = 100;    float a[count], b[count], c, d;    …    #pragma offload target(mic) [Параметры]        func(a, b, count, c, d);    …}
Какие параметры нужно добавить в соответствующее место в приведенном выше коде (вместо "[Параметры]"), чтобы обеспечить корректное и эффективное выполнение кода:

Какая директива предназначена для указания компилятору на то, что все используемые массивы в цикле являются выровненными?

Дан массив A размером 100 элементов. Как с помощью технологии Array Notation получить доступ к элементам 10, 11, 12, 13, 14:

Технология Elemental Functions в Intel Cilk Plus используется для

Какая из предложенных ниже синтаксических конструкций говорит компилятору о том, что значение данной переменной кратно 16?

Опция компилятора Intel -opt-report позволяет получить:

Признаками наличия неравномерной вычислительной нагрузки между потоками являются:

Какова цель балансировки нагрузки между потоками:

Выберите технологии и API, которые вы можете использовать при программировании для сопроцессора Intel Xeon Phi?

Теоретическая производительность сопроцессора Intel Xeon Phi больше производительности процессоров общего назначения.

Как могут использоваться вычислительные мощности системы с установленным сопроцессором Intel Xeon Phi? Выберите все правильные варианты.

Какие из указанных состояний строки кэша используются в протоколе MESI:

#!/bin/shmpiexec.hydra –perhost 1 ./program_name
Данный скрипт обеспечивает запуск программы в режиме:

Выберите все верные утверждения.

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

Суть парадигмы SIMD заключается в следующем:

Алгоритм распределения потоков по ядрам сопроцессора Intel Xeon Phi, максимально заполняющий ядра потоками (часть ядер при этом может быть свободна), можно задать как:

Что происходит, если при вызове offload-кода сопроцессор Intel Xeon Phi оказывается занят?

Сколько конвейеров содержит одно ядро сопроцессора Intel Xeon Phi?

Для данного цикла определите, зависимы ли его итерации. При наличии зависимости охарактеризуйте ее характер. Массивы a, b не пересекаются.
for (int i = 0; i < n - 2; i++)    a[i] = b[i + 2] * 4 - 5;

Для данного цикла определите, зависимы ли его итерации. При наличии зависимости охарактеризуйте ее характер. Массивы a, b не пересекаются.
for (int i = 0; i < n; i++)    a[i] = b[i] * 2 + 8;

Ключ компилятора Intel -vec-report6 позволяет получить сообщения о невозможности векторизовать цикл вида:

Какие дополнительные возможности реализованы в сопроцессоре Intel Xeon Phi по сравнению с процессорами Xeon?

Какая из предложенных ниже синтаксических конструкций говорит компилятору о том, что данный адрес выровнен по границе в 64 байта?

Отметьте некорректное утверждение касательно правил вызова элементарных функций (технология Elemental Functions):

Какая директива предназначена для того, чтобы сообщить компилятору об отсутствии зависимостей в цикле?

При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?

Какой параметр директивы #pragma offload используется для асинхронного выполнения кода на сопроцессоре?

В системе доступно 3 сопроцессора.Директива #pragma offload target(mic:0) обеспечивает

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 16…int rr[LOOP_SIZE];for(int k = 0; k < LOOP_SIZE; k++){  rr[k] = number % k;}
Возможна ли векторизация данного цикла средствами компилятора, для исполнения на Intel Xeon Phi?

Какие ключи компилятора необходимо указать для корректной компиляции следующей функции
void GetOptionPrices(  float * restrict pT, float * restrict pK,   float * restrict pS0, float * restrict pC){  int i;  float d1, d2, erf1, erf2;  for (i = 0; i < N; i++)  {    d1 = (logf(pS0[i] / pK[i]) + (r + sig * sig * 0.5f) *         pT[i]) / (sig * sqrtf(pT[i]));    d2 = (logf(pS0[i] / pK[i]) + (r - sig * sig * 0.5f) *          pT[i]) / (sig * sqrtf(pT[i]));    erf1 = 0.5f + 0.5f * erff(d1 / sqrtf(2.0f));    erf2 = 0.5f + 0.5f * erff(d2 / sqrtf(2.0f));    pC[i] = pS0[i] * erf1 - pK[i] * expf((-1.0f) * r *             pT[i]) * erf2;  }}

Для данного цикла определите, зависимы ли его итерации. При наличии зависимости охарактеризуйте ее характер.
for (int i = 0; i < n – 1; i++)    a[i + 1] = a[i] * 2 – 5;

Векторизация является параллелизмом на уровне:

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 16…int rr[LOOP_SIZE];…p = 1;for(int k = 0; k < LOOP_SIZE; k++){  p *= rr[k];}
Какого следует ожидать ускорения в результате векторизации по сравнению со скалярной версией на Intel Xeon Phi?

Пусть разработан код представленный ниже:
  #pragma offload target(mic:0)   {  F1(p1, p2);  }  F2();
В каком порядке будут исполняться функции F1 и F2?

Задача факторизации натурального числа N состоит в

#!/bin/shexport MICperNODE=1sbatch –N 4 –-gres=mic:2 native_run.sh ./program_name
Данный скрипт обеспечивает запуск программы в режиме исполнения только на сопроцессоре на кластере с системой управления SLURM.Сколько процессов на узел будет создано при запуске программы?

#!/bin/shmpiexec.hydra –host mic0 –n 1 –perhost 1 ./program_name.mic
Данный скрипт обеспечивает запуск программы в режиме:

Какой из представленных ниже скриптов обеспечивает запуск программы в режиме offload:

Код на сопроцессоре Intel Xeon Phi исполняется в

Для чего предназначена операция расщепления в итерационном пространстве?

Планировщик Cilk Plus основан на распределении работы путём:

Какая директива OpenMP может быть использована для синхронизации потоков?

Технология программирования OpenMP расширяет язык программирования за счет:

Техника двойной буферизации позволяет

При использовании модели симметричного выполнения (Symmetric model) для взаимодействия между процессорами базовой системы, в пределах сопроцессора и между сопроцессором и процессорами базовой системы по умолчанию используется

Какие типы передачи данных могут выполнять ядра сопроцессора Intel Xeon Phi?

Какая архитектура Кеша используется в сопроцессоре Intel Xeon Phi?

Какова теоретическая производительность сопроцессора Intel Xeon Phi для вещественных чисел двойной точности при использовании 60 ядер?

Какие векторные расширения поддерживает сопроцессор Intel Xeon Phi?

Сколько потоков может одновременно выполняться на сопроцессоре Intel Xeon Phi?

Теоретическая производительность сопроцессора Intel Xeon Phi больше производительности процессоров общего назначения.

Какие из указанных состояний строки кэша используются в протоколе MESI:

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

К классу систем с однородным доступом к памяти (UMA) относятся:

Один гигафлопс это?

Основным способом построения суперкомпьютеров на данный момент является:

Для каких вычислительных систем предназначена технология OpenMP?

Сколько контроллеров памяти содержит сопроцессор Intel Xeon Phi?

Для данного цикла определите, зависимы ли его итерации. При наличии зависимости охарактеризуйте ее характер. Массивы a, b, c не пересекаются.
for (int i = 1; i < n - 2; i++)    a[i] = b[i + 2] * c[i – 1];

Технология Array Notation в Intel Cilk Plus используется для

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 30…int rr[LOOP_SIZE];…p = 1;for(int k = 0; k < LOOP_SIZE; k++){  p *= rr[k];}
Возможна ли векторизация данного цикла средствами компилятора, для исполнения на Intel Xeon Phi?

Размер векторного регистра для хранения данных с плавающей запятой в наборах команд SSE составляет:

Какие из указанных состояний строки кэша используются в протоколе MESI:

Для создания параллельной области необходимо использовать директиву:

Одна из формулировок закона Мура гласит:

Уменьшение техпроцесса производства процессоров приводит к:

В системе доступно 3 сопроцессора.Директива #pragma offload target(mic:5) обеспечивает:

Какое из приведенных ниже ключевых слов расширения Intel Cilk Plus отвечает за неблокирующее выполнение кода на сопроцессоре (центральный процессор не ждет, пока сопроцессор закончит свою работу):

При использовании политики сквозной записи (write through) данных из кэша в оперативную память:

Опция компилятора Intel -guide позволяет получить:

К чему приводит неравномерное распределение вычислительной нагрузки между потоками?

Сколько ядер рекомендуется использовать для вычислений на сопроцессоре Intel Xeon Phi?

Планирование вычислений в функции parallel_for:

Выберите синтаксические конструкции, посредством которых выделяются те участки кода, которые должны быть скомпилированы для выполнения на сопроцессоре:

Какие из перечисленных директив компилятора предназначены для векторизации кода?

Вы написали программу на языке C. Эта программа работает корректно на подготовленных тестовых данных, но скорость работы вас не устраивает. Какими инструментами, входящими в комплект поставки Intel Parallel Studio, вы воспользуетесь для увеличения скорости работы вашей программы?

Для распределения итераций цикла между потоками необходимо использовать следующую директиву OpenMP:

Следующая функция
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) приведет к

Какое из следующих замечаний является верным:

#!/bin/shexport MICperNODE=2sbatch –N 2 –-gres=mic:4 native_run.sh ./program_name
Данный скрипт обеспечивает запуск программы в режиме исполнения только на сопроцессоре на кластере с системой управления SLURM.Сколько всего процессов будет создано при запуске программы?

Отметьте корректные утверждения касательно правил вызова элементарных функций (технология Elemental Functions):

Какое из приведенных ниже ключевых слов расширения Intel Cilk Plus позволяет объявить переменную, которая будет доступна как на процессоре, так и на сопроцессоре:

Выберите верное утверждение.

Какой параметр директивы #pragma offload используется для копирования данных с сопроцессора на хост?

Какая директива предназначена для безусловной векторизации цикла?

Какой ключ компилятора icc следует использовать для компиляции программы, исполняемой в режиме offload:

Необходимыми средствами при реализации одновременной многопоточности (simul-taneous multithreading, SMT) являются:

Одна из формулировок закона Мура гласит:

Один гигафлопс это?

В каких случаях одновременная многопоточность может положительно сказаться на производительности:

Реализовано ли в ядрах сопроцессора Intel Xeon Phi аппаратное предсказание переходов и спекулятивное выполнение инструкций?

Какова теоретическая производительность сопроцессора Intel Xeon Phi для вещественных чисел одинарной точности при использовании 60 ядер?

Выберите все верные утверждения.

Выберите верное утверждение.

Отметьте верные утверждения об OpenMP:

Минимально необходимый набор операций для организации информационного взаимодействия между процессорами в вычислительных системах с распределенной памятью включает в себя только:

Какой из представленных ниже скриптов обеспечивает запуск программы в режиме исполнения только на сопроцессоре:

Пусть разработан код представленный ниже:
  #pragma offload target(mic:0)  signal(s1)  {  F1(p1, p2);  }  F2();
В каком порядке будут исполняться функции F1 и F2?

Подход, основанный на организации вычислений с использованием команд SIMD (SSE, SSE2, etc.), называется:

Какого потенциального ускорения можно добиться при векторизации функции, работающей с вещественными числами одинарной точности, с использованием расширения SSE на процессоре Intel Xeon

Какого потенциального ускорения можно добиться при векторизации функции, работающей с вещественными числами двойной точности, с использованием расширения AVX на процессоре Intel Xeon

Как реализована расширенная поддержка математических функций в Xeon Phi?

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 130…int rr[LOOP_SIZE];for(int k = 0; k < LOOP_SIZE; k++){  rr[k] = number % k;}
Возможна ли векторизация данного цикла средствами компилятора, для исполнения на Intel Xeon Phi?

При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?

Использование какого ключевого слова в языках программирования C/C++ позволяет сказать компилятору о том, что доступ к некоторой памяти возможен с использованием только одного указателя (нет перекрытий по памяти с другими указателями)?

Дан массив A размером 100 элементов. Как с помощью технологии Array Notation получить доступ ко всем элементам массива:

Ключ компилятора Intel -vec-report3 позволяет получить сообщения о невозможности векторизовать цикл вида:

Опция компилятора Intel -vec-report позволяет получить:

Вы написали программу на языке C. Эта программа работает корректно на подготовленных тестовых данных, но скорость работы вас не устраивает. Каким инструментом, входящим в комплект поставки Intel Parallel Studio, вы воспользуетесь для определения участка программы, на выполнение которого расходуется наибольшее количество времени?

Следующую функцию
void GetOptionPricesV4(float *pT, float *pK, float *pS0, float *pC){  int i;  float d1, d2, erf1, erf2;#pragma simd  for (i = 0; i < N; i++)  {    d1 = (logf(pS0[i] / pK[i]) + (r + sig * sig * 0.5f) *         pT[i]) / (sig * sqrtf(pT[i]));    d2 = (logf(pS0[i] / pK[i]) + (r - sig * sig * 0.5f) *         pT[i]) / (sig * sqrtf(pT[i]));    erf1 = 0.5f + 0.5f * erff(d1 / sqrtf(2.0f));    erf2 = 0.5f + 0.5f * erff(d2 / sqrtf(2.0f));    pC[i] = pS0[i] * erf1 - pK[i] * expf((-1.0f) * r *             pT[i]) * erf2;  }}
требуется собрать с поддержкой векторного набора команд AVX. Какие ключи компилятора необходимо использовать

В системе доступно 3 сопроцессора.Директива #pragma offload target(mic:4) обеспечивает:

Следующий код
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--;      }    }

Какие характеристики имеют кеши L1 (кеш инструкций L1 I-Cache и кеш данных L1 D-Cache) ядра сопроцессора Intel Xeon Phi?

Модели программирования для сопроцессора Intel Xeon Phi это

В Cilk Plus входят:

Пусть разработан код представленный ниже:
  F1();  #pragma offload target(mic:0) wait(s1)  {  F2(p1, p2);  }
В каком порядке будут исполняться функции F1 и F2?

Можно ли в OpenMP программе управлять количеством потоков выполняющих работу, не меняя кода программы?

Блок векторных вычислений:

Отметьте корректные выражения с точки зрения использования технологии Array Notation:

На эффективность работы параллельной программы существенное влияние оказывают следующие факторы:

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 24…int rr[LOOP_SIZE];…p = 1;for(int k = 0; k < LOOP_SIZE; k++){  p *= rr[k];}
Какого следует ожидать ускорения в результате векторизации по сравнению со скалярной версией на Intel Xeon Phi?

При использовании модели симметричного выполнения (Symmetric model)

Какие режимы работы и разрядность физического адреса поддерживает сопроцессор Intel Xeon Phi?

К классу мультикомпьютеров относятся:

К классу систем с неоднородным доступом к памяти (NUMA) относятся:

Необходимыми средствами при реализации одновременной многопоточности (simul-taneous multithreading, SMT) являются:

Сколько потоков может одновременно выполняться на одном ядре сопроцессоре Intel Xeon Phi?

Какой размер имеет кеш L2 ядра сопроцессора Intel Xeon Phi?

Какова суммарная пропускная способность всех контроллеров памяти сопроцессора Intel Xeon Phi?

Можно ли при использовании режима Offload организовать передачу между хостом и сопроцессором сложных структур данных, например, использующих указатели?

Процессы параллельной программой в рамках MPI:

В коде "cilk_spawn F1(); F2(); cilk_sync;"

#!/bin/shmpiexec.hydra –hosts 2 node0 node1 –n 2 –perhost 1 ./program_name: \–hosts 4 mic0 mic1 mic2 mic3 –n 4 –perhost 1 ./program_name.mic
Данный скрипт обеспечивает запуск программы в режиме:

Какой ключ компилятора Intel позволяет получить наиболее полный отчет о векторизации вашего кода:

Какая из предложенных ниже синтаксических конструкций говорит компилятору о том, все массивы в рамках цикла выровнены?

Дан массив A размером 100 элементов. Как с помощью технологии Array Notation получить доступ к элементам 2, 4, 6, 8, 10:

Следующая функция
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) уменьшит время

Планирование вычислений в функции parallel_for:

Какая операционная система по умолчанию выполняется на и сопроцессоре Intel Xeon Phi?

Какие из приведенных ниже языков программирования поддерживают неявную схему работы с памятью в режиме offload:

Следующий псевдокод
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;

В каких случаях одновременная многопоточность может негативно сказаться на производительности:

В каких случаях предпочтительнее использовать DMA-передачу, а не копирование памяти (выберите все подходящие варианты)?

Для компиляции программы, исполняемой в симметричном режиме, следует использовать скрипт:

Какую латентность имеют большинство инструкций - арифметических операций с целыми числами и масками?

Можно ли при использовании режима Offload выполнять в Offload-части кода вызовы MPI-функций?

Пусть разработан код представленный ниже:
int r = 0;int main(){  #pragma offload target(mic:0)  {    setR();   }  printf("%d", r);}...setR(){  r = 1;}
Что будет выведено на экран?

Опция компилятора Intel -guide-vec позволяет получить:

Пусть в программе присутствует следующий код:
#define LOOP_SIZE 16…int rr[LOOP_SIZE];…p = 1;for(int k = 0; k < LOOP_SIZE; k++){  p *= rr[k];}
Возможна ли векторизация данного цикла средствами компилятора, для исполнения на Intel Xeon Phi?

Код "cilk_for(int i=0; i<maxi; i++) Func(); " позволяет:

Выберите синтаксические конструкции, которые позволяют обеспечить обмен данными между процессором и сопроцессором:

Операционная система, выполняющаяся на сопроцессоре Intel Xeon Phi:

Какой параметр директивы #pragma offload используется для копирования данных с хоста на сопроцессор?

Отметьте некорректные выражения с точки зрения использования технологии Array Notation:

Какая из предложенных ниже синтаксических конструкций обеспечивает выравнивание динамических массивов?

Какие из приведенных ниже ключевых слов расширения Intel Cilk Plus позволяют выполнить функцию на сопроцессоре:

При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?

Какие размеры страниц поддерживает сопроцессор Intel Xeon Phi?

Информационную целостность (когерентность) кэшей на аппаратном уровне могут обеспечить:

Какие режимы выполнения приложений поддерживаются для систем с установленными сопроцессорами Intel Xeon Phi? Выберите все правильные варианты.

Какие из указанных состояний строки кэша используются в протоколе MESI:

При использовании директивы #pragma offload с параметром in для каких данных поддерживается копирование?

При разработке программ для сопроцессора Intel Xeon Phi

Под параллельной программой в рамках MPI понимается:

Для компиляции программы, исполняемой в режиме offload, следует использовать скрипт:

Как определяется число процессов при запуске MPI-программы?