игра брюс 2048
Главная / Программирование / Intel Parallel Programming Professional (Introduction) / Тест 6

Intel Parallel Programming Professional (Introduction) - тест 6

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

Ответ:

 (1) Parallel Composer 

 (2) Parallel Inspector 

 (3) Parallel Amplifier 

 (4) Parallel Adviser 


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

Ответ:

 (1) Parallel Composer 

 (2) Parallel Inspector 

 (3) Parallel Amplifier 

 (4) Parallel Adviser 


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

Ответ:

 (1) Parallel Composer 

 (2) Parallel Inspector 

 (3) Parallel Amplifier 

 (4) Parallel Adviser 


Номер 4
Вы написали программу на языке C. При сборке вашей программы выдаётся ошибка: "error LNK2019: unresolved external symbol…". Чем вы воспользуетесь для устранения этой ошибки?

Ответ:

 (1) Parallel Composer 

 (2) Parallel Inspector 

 (3) Parallel Amplifier 

 (4) Parallel Adviser 

 (5) Другое 


Упражнение 2:
Номер 1
Вы написали параллельную программу с использованием потоков на языке C. Вы запустили вашу программу 100 раз на 4-хядерной машине. 98 раз программа отработала корректно, 2 раза программа выдала не корректные данные. Чем вы воспользуетесь в первую очередь при дальнейшей разработке программы?

Ответ:

 (1) Parallel Inspector в режиме Memory Errors 

 (2) Parallel Amplifier в режиме Hotspots 

 (3) Parallel Inspector в режиме Threading Errors 

 (4) Parallel Amplifier в режиме Concurrency 


Номер 2
Вы написали параллельную программу с использованием OpenMP на языке C. Распараллеливание осуществляется за счёт одной строчки: “#pragma omp parallel for”. Другие средства OpenMP не используются, переменные окружения не меняются. Вы запустили вашу программу 100 раз на 1-оядерной машине. 58 раз программа отработала корректно, 32 раза программа выдала не корректные данные, 10 раз программа не доработала до конца и завершила работу с ошибкой. Чем вы воспользуетесь в первую очередь при дальнейшей разработке программы?

Ответ:

 (1) Parallel Inspector в режиме Memory Errors 

 (2) Parallel Amplifier в режиме Hotspots 

 (3) Parallel Inspector в режиме Threading Errors 

 (4) Parallel Amplifier в режиме Concurrency 


Номер 3
Вы написали параллельную программу с использованием OpenMP на языке C. Эта программа работает корректно на подготовленных тестовых данных. Вы запустили вашу программу два раза на 4-хядерной машине. Первый раз вы запустили программу в один поток, и она работала 39 секунд, второй – в 4 потока и она работала 34 секунды. Чем вы воспользуетесь в первую очередь при дальнейшей разработке программы?

Ответ:

 (1) Parallel Inspector в режиме Memory Errors 

 (2) Parallel Amplifier в режиме Hotspots 

 (3) Parallel Inspector в режиме Threading Errors 

 (4) Parallel Amplifier в режиме Concurrency 


Номер 4
Вам выдали работающую последовательную программу, написанную на языке C++. Программа компилируется час, а объём исходников составляет 1.5 MB. Перед вами стоит задача распараллеливания программы. Чем вы воспользуетесь в первую очередь?

Ответ:

 (1) Parallel Composer 

 (2) Серым веществом головного мозга для анализа алгоритма, реализованного в программе, и разработки параллельной версии этого алгоритма 

 (3) Parallel Inspector в режиме Memory Errors 

 (4) Parallel Amplifier в режиме Hotspots 

 (5) Parallel Inspector в режиме Threading Errors 

 (6) Parallel Amplifier в режиме Concurrency 


Упражнение 3:
Номер 1
Вам выдали работающую последовательную программу на языке C++. Вы выполняете оптимизацию программы. Чем вы воспользуетесь в первую очередь для получения более быстрой версии программы?

Ответ:

 (1) Intel Compiler из Parallel Composer 

 (2) Intel TBB из Parallel Composer 

 (3) Intel IPP из Parallel Composer 

 (4) Parallel Advisor 


Номер 2
Программный продукт Intel Parallel Inspector решает следующие задачи:

Ответ:

 (1) позволяет полностью гарантировать корректность работы параллельной программы 

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

 (3) позволяет обеспечить максимальную утилизацию вычислительных ресурсов 

 (4) помогает в поиске ошибок в параллельной программе и работе с памятью 


Номер 3
Программный продукт Intel Parallel Amplifier решает следующие задачи:

Ответ:

 (1) позволяет полностью гарантировать корректность работы параллельной программы 

 (2) помогает понять причины недостаточно быстрой работы параллельной программы 

 (3) помогает в поиске ошибок в параллельной программе 


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

Ответ:

 (1) принципиальными сложностями, возникающими при отладке и профилировании параллельных программ, по сравнению с последовательными 

 (2) исключительно маркетинговыми причинами; принципиальных проблем с отладкой и профилированием параллельных программ по сравнению с последовательными не возникает 

 (3) необходимостью повышения производительности труда разработчиков параллельного ПО 


Упражнение 4:
Номер 1
Назначение программного продукта Intel Parallel Inspector состоит в следующем:

Ответ:

 (1) поиск мест с возможным недетерминированным поведением многопоточной программы, написанной как на основе библиотеки потоков (Windows или POSIX threads), так и с использованием технологии OpenMP 

 (2) поиск мест с возможным недетерминированным поведением программы, написанной с использованием технологии MPI 

 (3) отладка и оптимизация параллельных программ 

 (4) поиск мест с возможным не корректным обращением с памятью 


Номер 2
Назначение программного продукта Intel Parallel Amplifier состоит в следующем:

Ответ:

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

 (2) помощь в разработке архитектуры параллельной программы 

 (3) отладка и оптимизация параллельных программ 


Номер 3
Назначение программного продукта Intel Parallel Advisor состоит в следующем:

Ответ:

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

 (2) помощь в разработке архитектуры параллельной программы 

 (3) отладка и оптимизация параллельных программ 


Номер 4
Процесс оптимизации параллельных программ обычно устроен следующим образом:

Ответ:

 (1) сбор информации о работе программы, выявление "узких мест", обнаружение причины падения производительности, устранение этих причин 

 (2) сбор информации о работе программы, выявление "узких мест", отладка, обнаружение причины падения производительности, устранение этих причин 

 (3) сборка приложения в режиме отладки (конфигурация Debug), инструментирование бинарного кода, запуск программы, оптимизация программы 


Упражнение 5:
Номер 1
Успешная отладка и оптимизация параллельных программ в системах с общей памятью требуют:

Ответ:

 (1) знания основных разновидностей ошибок, специфичных для параллельных программ, типичных проблем с точки зрения производительности многопоточных приложений 

 (2) знаний особенностей операционных системы, связанных с обеспечением работы в многопоточном режиме (примитивы синхронизации и др.) 

 (3) использования специальных отладочных инструментов 

 (4) знания технологии программирования MPI 


Номер 2
Процесс обнаружения ошибки в параллельных программах обычно устроен следующим образом:

Ответ:

 (1) определение факта наличия ошибки, выяснение причин ошибки, поиск ошибки, определение способа устранения ошибки, устранение ошибки 

 (2) определение факта наличия ошибки, поиск ошибки, выяснение причин ошибки, определение способа устранения ошибки, устранение ошибки 

 (3) определение факта наличия ошибки, выяснение причин ошибки, определение способа устранения ошибки, поиск ошибки, устранение ошибки 


Номер 3
Под "гонками данных" понимается ситуация, когда:

Ответ:

 (1) несколько потоков работают с разделяемыми данными, и конечный результат зависит от соотношения скоростей потоков 

 (2) несколько потоков работают с данными, локализованными для каждого из потоков, и конечный результат собирается в одну переменную 

 (3) не хватает памяти для размещения данных 


Номер 4
Под "тупиками" понимается ситуация, когда:

Ответ:

 (1) все потоки завершили свою работу 

 (2) возникла взаимная блокировка потоков, ожидающих наступление некоторого события для продолжения работы 

 (3) недостаточно ресурсов для запуска всех потоков 


Упражнение 6:
Номер 1
Под ситуацией "заброшенные замки" понимается:

Ответ:

 (1) положение, возникающее при завершении работы одним из потоков, захватившим ресурс и не освободившим его 

 (2) утечка памяти, вызванная наличием запроса на выделение памяти при отсутствии ее освобождения 

 (3) ситуация, когда несколько потоков работают с разделяемыми данными, и конечный результат зависит от соотношения скоростей потоков 


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

Ответ:

 (1) к неэффективной работе программы 

 (2) к ошибкам в процессе вычислений 

 (3) к нехватке памяти 


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

Ответ:

 (1) неправильные результаты расчетов 

 (2) большая доля последовательного выполнения 

 (3) малое ускорение по сравнению с последовательной программой 


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

Ответ:

 (1) выбор примитивов синхронизации 

 (2) синхронизация между потоками 

 (3) доля времени, которое приложение проводит в режиме последовательного выполнения 

 (4) объем исходного кода программы 

 (5) балансировка вычислительной загрузки 

 (6) минимизация непроизводительных издержек при работе с потоками 


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

Ответ:

 (1) для успешного применения профилировщика Intel Parallel Amplifier желательно при сборке программного проекта указать некоторые специальные ключи компилятора 

 (2) профилировщик Intel Parallel Amplifier может быть использован только при работе в операционной системе Linux 

 (3) профилировщик Intel Parallel Amplifier может быть использован только при работе в операционной системе Windows 

 (4) профилировщик Intel Parallel Amplifier позволяет построить критический путь для профилируемой программы 


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

Ответ:

 (1) для успешного применения отладчика Intel Parallel Inspector желательно при сборке программного проекта указать некоторые специальные ключи компилятора 

 (2) отладчик Intel Parallel Inspector может быть использован только при работе в операционной системе Linux 

 (3) отладчик Intel Parallel Inspector может быть использован только при работе в операционной системе Windows 

 (4) отладчик Intel Parallel Inspector обнаруживает 100% ошибок в многопоточных параллельных программах 


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

Ответ:

 (1) необходимо избегать запуска других приложений во время профилирования параллельной программы. Деятельность посторонних приложений (особенно потребляющих много ресурсов) может существенно исказить интересующую информацию 

 (2) желательно производить профилирование несколько раз и для анализа выбирать тот запуск, когда приложение отработало быстрее всего 

 (3) для корректной работы отладчика параллельных программ необходимо осуществить несколько запусков и выбрать тот запуск, когда приложение отработало быстрее всего 


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

Ответ:

 (1) обеспечить корректность работы параллельной программы 

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

 (3) обеспечить максимальную утилизацию вычислительных ресурсов 


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

Ответ:

 (1) создание потоков 

 (2) вычисления, выполняемые потоком 

 (3) синхронизация между потоками 


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

Ответ:

 (1) работа с глобальными переменными многопоточного приложения 

 (2) уничтожение потоков 

 (3) работа с мьютексами 


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

Ответ:

 (1) управление потоками 

 (2) работа с атомарными функциями ОС 

 (3) работа с критическими секциями 

 (4) вычисления в главной функции потока 




Главная / Программирование / Intel Parallel Programming Professional (Introduction) / Тест 6