игра брюс 2048
Главная / Программирование / Параллельное программирование с использованием OpenMP / Тест 6

Параллельное программирование с использованием OpenMP - тест 6

Упражнение 1:
Номер 1
Для чего нужна профилировка программ?

Ответ:

 (1) для нахождения мертвого кода 

 (2) для нахождения критического пути и ускорения 

 (3) для нахождения неопределенных переменных 

 (4) для нахождения некорректно заданных данных 


Номер 2
Какие инструменты можно использовать для профилировки программ?

Ответ:

 (1) отладчики 

 (2) Total View 

 (3) Intel Thread Checker 

 (4) Intel Thread Analyzer 


Номер 3
Можно ли использовать Intel VTune Performance Analyser для профилировки программ?

Ответ:

 (1) нет 

 (2) да 


Упражнение 2:
Номер 1
К какой памяти, из перечисленных (локальная память, регистры, кэш 1-го уровня, кэш 2-го уровня), обращение осуществляется наиболее быстро?

Ответ:

 (1) локальная память 

 (2) регистры 

 (3) кэш 1-го уровня 

 (4) кэш 2-го уровня 


Номер 2
К какой памяти из ниже перечисленных (локальная память, кэш 1-го уровня, кэш 2-го уровня) обращение осуществляется наиболее быстро?

Ответ:

 (1) локальная память 

 (2) кэш 1-го уровня 

 (3) кэш 2-го уровня 


Номер 3
К какой памяти из ниже перечисленных (локальная память, регистры, кэш 1-го уровня, кэш 2-го уровня) обращение осуществляется наиболее медленно?

Ответ:

 (1) локальная память 

 (2) регистры 

 (3) кэш 1-го уровня 

 (4) кэш 2-го уровня 


Упражнение 3:
Номер 1
Что такое зависимость по данным?

Ответ:

 (1) это когда значение переменной зависит от результата предыдущей операции 

 (2) это когда значение переменной в параллельном потоке зависит от значения аналогичной переменной в главном потоке 

 (3) это когда значение переменной в петле цикла зависит от значения другой переменной или ее самой в другой петле цикла 


Номер 2
Для эффективного распараллеливания циклов нужно по возможности 

Ответ:

 (1) обеспечить независимость петель вложенных циклов 

 (2) установить дополнительные операторы выхода из циклов 

 (3) ничего не надо делать 


Номер 3
При распараллеливании вложенных циклов надо стремиться к 

Ответ:

 (1) вынесению независимых по данным петель циклов на верхний уровень и проводить распараллеливание только на этом уровне 

 (2) вынесению независимых по данным петель циклов на нижний уровень и проводить распараллеливание только на этом уровне 

 (3) ничего не надо делать 


Упражнение 4:
Номер 1
Для эффективного распараллеливания циклов нужно использовать 

Ответ:

 (1) многомерные массивы в одномерном виде 

 (2) многомерные массивы в двумерном виде 

 (3) многомерные массивы в естественном виде 


Номер 2
Для эффективного распараллеливания циклов в программе на Fortran нужно осуществлять перебор элементов двумерных массивов 

Ответ:

 (1) по столбцам 

 (2) по строкам 


Номер 3
Для эффективного распараллеливания циклов в программе на С++ нужно осуществлять перебор элементов двумерных массивов 

Ответ:

 (1) по столбцам 

 (2) по строкам 


Упражнение 5:
Номер 1
Пусть суммарная доля последовательных блоков в программе равна 0.2, а число ядер в процессоре равно 4. Во сколько раз может быть быстрее параллельная версия такой программы по сравнению с последовательной?

Ответ:

 (1)

 (2) 4.5 

 (3) 2.5 

 (4)


Номер 2
Пусть суммарная доля последовательных блоков в программе равна 0.1, а число процессоров в вычислительной системе равно 9. Во сколько раз может быть быстрее параллельная версия такой программы по сравнению с последовательной?

Ответ:

 (1)

 (2) 4.5 

 (3)

 (4)


Номер 3
Пусть суммарная доля последовательных блоков в программе равна 0.4, а число ядер в процессоре равно 6. Во сколько раз может быть быстрее параллельная версия такой программы по сравнению с последовательной?

Ответ:

 (1)

 (2)

 (3) 2.5 

 (4)


Упражнение 6:
Номер 1
Пусть суммарная доля последовательных блоков в программе равна 0.1. Сколько должно быть в системе одноядерных процессоров, чтобы ускорить работу программы в 4 раза?

Ответ:

 (1)

 (2)

 (3) не менее 6 

 (4)


Номер 2
Пусть суммарная доля последовательных блоков в программе равна 0.1. Сколько должно быть в системе 2-ядерных процессоров, чтобы ускорить работу программы в 4 раза?

Ответ:

 (1)

 (2)

 (3) не менее 3 


Номер 3
Пусть суммарная доля последовательных блоков в программе равна 0.1. Каково наименьшее число 6-ядерных процессоров может быть в такой системе, чтобы ускорить работу программы в 4 раза?

Ответ:

 (1)

 (2)

 (3)

 (4)




Главная / Программирование / Параллельное программирование с использованием OpenMP / Тест 6