Главная /
Параллельное программирование с использованием инструментов и технологий Intel, Проверка знаний /
Отметьте верные утверждения об OpenMP:
Отметьте верные утверждения об OpenMP:
вопросПравильный ответ:
OpenMP ориентирован в первую очередь на написание программ для векторно-конвейерных компьютеров
большинство конструкций OpenMP реализуется с помощью директив и/или специальных комментариев
все переменные программы делятся на два класса: локальные (private) и общие (shared)
число параллельных потоков OpenMP приложения может определяться переменной окружения
весь параллелизм приложения реализуется только с помощью параллельных циклов
Сложность вопроса
60
Сложность курса: Параллельное программирование с использованием инструментов и технологий Intel, Проверка знаний
78
Оценить вопрос
Комментарии:
Аноним
Это очень простой решебник по интуиту.
01 окт 2017
Другие ответы на вопросы из темы программирование интуит.
- # Рассмотрим задачу использования кольцевого буфера (задача "поставщик-потребитель"). Функции AddItemToBuffer и RemoveItemFromBuffer модифицируют структуру данных, разделяемую поставщиком и потребителем, и не используют синхронизацию. Предположим, что программа может выполняться как на однопроцессорных, так и на многопроцессорных системах, и одновременно могут выполняться несколько потоков-поставщиков и потоков-потребителей. Укажите, является ли решение корректным (всегда работает), или (2) некорректным (никогда не работает), или (3) опасным (в одних случаях работает, в других – нет). Semaphore Empty = N; // Буфер содержит N записейM = unlocked;Full = 0;() { M.Lock(); Empty.P(); AddItemToBuffer(); Full.V(); M.Unlock(); }() { M.Lock(); full.P(); RemoveItemFromBuffer(); empty.V(); M.Unlock(); }
- # Рассмотрим задачу использования кольцевого буфера (задача "поставщик-потребитель"). Функции AddItemToBuffer и RemoveItemFromBuffer модифицируют структуру данных, разделяемую поставщиком и потребителем, и не используют синхронизацию. Предположим, что программа может выполняться как на однопроцессорных, так и на многопроцессорных системах, и одновременно могут выполняться несколько потоков-поставщиков и потоков-потребителей. Укажите, является ли решение корректным (всегда работает), или (2) некорректным (никогда не работает), или (3) опасным (в одних случаях работает, в других – нет). Semaphore Empty = N; // Буфер содержит N записейM = unlocked;Full = 0;() { Empty.P(); M.Lock(); AddItemToBuffer(); Full.V(); }() { full.P(); M.Lock(); RemoveItemFromBuffer(); empty.V(); }
- # В программе на OpenMP имеется вычислительный блок, содержащий два вложенных цикла с независимыми итерациями. Требуется распараллелить его с помощью OpenMP. Количество итераций внешнего цикла 1000, внутреннего – 1000000. Какой цикл выгоднее распараллелить: внешний или внутренний?
- # Минимально необходимый набор операций для организации информационного взаимодействия между процессорами в вычислительных системах с распределенной памятью включает в себя только:
- # Обобщенная передача данных от всех процессов всем процессам может быть описана как: