Главная / Программирование /
Параллельное программирование с использованием OpenMP / Тест 3
Параллельное программирование с использованием OpenMP - тест 3
Упражнение 1:
Номер 1
Назовите основные группы методов балансировки потоков в параллельных вычислительных системах?
Ответ:
 (1) гетерогенные 
 (2) однородные 
 (3) гибридные 
 (4) статические и динамические 
Номер 2
Назовите основные группы методов балансировки потоков в SMP параллельных вычислительных системах?
Ответ:
 (1) гетерогенно-динамические 
 (2) однородные 
 (3) гибридно-однородные 
 (4) статические и динамические 
Номер 3
Назовите основные группы методов балансировки потоков в MPP параллельных вычислительных системах?
Ответ:
 (1) локальные 
 (2) глобальные 
 (3) гибридные 
 (4) статические и динамические 
Упражнение 2:
Номер 1
Для чего используется директива nowait
?
Ответ:
 (1) для распараллеливания 
 (2) для завершения процесса 
 (3) для преодоления процедуры неявной синхронизации 
Номер 2
В каких из следующих предложениях можно использовать директиву nowait
?
Ответ:
 (1) A$omp
 
 (2) ! omp private
 
 (3) c$omp parallel
 
Номер 3
Можно ли с помощью директивы nowait
получить значения из главного потока в параллельном?
Ответ:
 (1) да 
 (2) да, при определенных условиях 
 (3) нет 
Упражнение 3:
Номер 1
Для чего используется синхронизация типа critical
?
Ответ:
 (1) для ускорения работы параллельных потоков 
 (2) для ускорения работы главного потока 
 (3) для описания структурных блоков, выполняющихся только в одном потоке из всего набора параллельных потоков 
 (4) для корректной передачи данных из главного потока в параллельные 
Номер 2
Где неявно задается синхронизация типа barrier
?
Ответ:
 (1) в начале структурного блока 
 (2) в конце структурного блока 
 (3) в начале циклов 
 (4) в конце циклов 
Номер 3
Для чего служит синхронизация типа master
?
Ответ:
 (1) для распараллеливания 
 (2) для завершения процесса 
 (3) для ускорения процесса выполнения задачи 
 (4) для задания структурного блока, который будет выполняться исключительно в главном потоке 
Упражнение 4:
Номер 1
Зачем нужна синхронизация типа ordered
?
Ответ:
 (1) для правильного определения структурного блока 
 (2) для выполнения параллельных потоков в порядке соответствующем последовательной версии программы 
 (3) для определения изменения порядка выполнения циклов 
 (4) для ускорения процесса выполнения задачи 
Номер 2
Для чего нужна директива schedule
?
Ответ:
 (1) для правильного определения структурного блока 
 (2) для распределения работы между процессами 
 (3) для выполнения параллельных потоков в порядке соответствующем последовательной версии программы  
 (4) для определения изменения порядка выполнения циклов 
 (5) для ускорения процесса выполнения задачи 
Номер 3
Зачем используется параметр chunk
в директиве schedule
?
Ответ:
 (1) для правильного определения структурного блока 
 (2) для распределения работы между процессами 
 (3) для задания числа процессов выполняемых в одном потоке 
 (4) для определения изменения порядка выполнения циклов 
 (5) для ускорения процесса выполнения задачи 
Упражнение 5:
Номер 1
Зачем нужна синхронизация типа atomic
?
Ответ:
 (1) для правильного определения структурного блока 
 (2) для корректного выполнения оператора присваивания в параллельном режиме для переменной, присутствующей в правой и левой части этого оператора 
 (3) для определения изменения порядка выполнения циклов 
 (4) для ускорения процесса выполнения задачи 
Номер 2
Как определяется синхронизация atomic
в программе на языке C?
Ответ:
 (1) ! opm atomic
 
 (2) #pragma omp atomic
 
 (3) !pragma omp atomic
 
 (4) c$omp atomic
 
Номер 3
Как определяется синхронизация atomic
в программе на языке Fortran?
Ответ:
 (1) ! opm ! atomic
 
 (2) #pragma omp atomic
 
 (3) !pragma omp atomic
 
 (4) c$omp atomic
 
Упражнение 6:
Номер 1
Зачем нужна синхронизация типа critical
?
Ответ:
 (1) для правильного определения выполнения структурного блока в параллельном режиме 
 (2) для задания структурных блоков, выполняющихся только в одном потоке из всего набора параллельных потоков 
 (3) для определения изменения порядка выполнения циклов 
 (4) для ускорения процесса выполнения задачи 
Номер 2
Как определяется синхронизация critical
в программе на языке C?
Ответ:
 (1) ! opm critical
 
 (2) #pragma omp critical
 
 (3) !pragma omp critical
 
 (4) c$omp critical
 
Номер 3
Как определяется синхронизация critical
в программе на языке Fortran?
Ответ:
 (1) ! opm ! critical
 
 (2) #pragma omp critical
 
 (3) !pragma omp atomic
 
 (4) c$omp critical