Внимание ! Вопросы к тесту выложены исключительно в ознакомительных целях: количество вопросов может не совпадать с действительным, актуальность не поддерживается,- за решением теста Welcome to the cashier! Особенностью последовательной модели программирования является:
Особенностью параллельной модели программирования является:
вероятность утраты детерминизма выполнения программы вероятность возникновения блокировок нелокальный и динамический характер ошибок
Одной из схем организации параллельных программ является:
иерархическая схема "хозяин-работник" (master-slave) схема "хозяин-работник" (master-slave) схема "первый вошёл - первый вышел" (FIFO)
Параллельное программирование с использованием MPI имеет дело с параллелизмом на уровне:
задач заданий машинных команд
Последовательная модель программирования это:
подход к разработке программного обеспечения, основанный на систематическом применении одного и того же языка программирования модель программирования, ориентированная на SISD-компьютеры по классификации Флинна подход к разработке программного обеспечения, ориентированный на традиционную фон-неймановскую архитектуру вычислительных систем
Процессы, относящиеся к одному параллельному приложению, характеризуются:
общим адресным пространством в операционных системах UNIX одинаковым значением идентификатора PID (Process IDentifier) разными и непересекающимися адресными пространствами
MPICH это:
программный пакет, позволяющий разрабатывать параллельные программы на основе модели обмена сообщениями коммерческая библиотека, реализующая операции обмена сообщениями язык программирования, позволяющий разрабатывать многопоточные программы для вычислительных систем с общей памятью
Потоки выполнения, относящиеся к одному параллельному приложению, характеризуются:
общим адресным пространством общими дескрипторами файлов разными и непересекающимися адресными пространствами На программирование для систем с распределённой памятью ориентированы: OpenMP POSIX Threads Intel (R) Cluster OpenMP
Одним из распространённых средств разработки многопоточных программ является:
OpenMP PVM MPI
Одним из распространённых средств разработки программ, основанных на модели обмена сообщениями, является:
POSIX Threads OpenMP любая реализация MPI
Запуск демонов mpd выполняется командой:
mpdtrace mpirun mpdboot
Компиляция MPI-программы выполняется командой:
Mpirun mpif90 mpicxx
Запуск MPI-программы выполняется командой:
Mpdboot mpirun mpiexec
В MPI-программах на языке C устанавливается следующее соответствие между типами MPI и стандартными типами языка:
MPI_INT и unsigned int MPI_FLOAT и float MPI_CHAR и signed char
Ранг процесса:
назначается процессу системой принимает неотрицательные целые значения принимает как отрицательные, так и положительные целые значения
MPI_COMM_WORLD это:
имя стандартного коммуникатора, включающего все запущенные процессы MPI-программы имя процедуры MPI имя стандартного коммуникатора, включающего все запущенные процессы, исполняющиеся в операционной системе
Коммуникатор это:
устройство связи между вычислительными узлами кластера область взаимодействия процессов, объединяющая все процессы с общим контекстом обмена процедура MPI, выполняющая передачу сообщения от одного процесса другому
MPI_COMM_NULL это:
обозначение "нулевого" указателя в MPI имя стандартного "пустого" коммуникатора имя процедуры MPI
Первым по порядку вызовом подпрограммы MPI может быть вызов:
MPI_Init MPI_Initialized MPI_Comm_size
Отметьте правильную последовательность обращений к подпрограммам MPI:
Последним по порядку вызовом подпрограммы MPI может быть вызов:
MPI_Abort MPI_Finalize MPI_Finalized
При двухточечном обмене:
количество вариантов отправки сообщений превосходит количество вариантов приёма допускается передача только одного скалярного значения за одну операцию обмена допускается передача структуры
При двухточечном обмене:
пересылаются данные одного типа важна принадлежность одному коммуникатору принадлежность одному коммуникатору не имеет значения
В двухточечном обмене сообщениями могут участвовать
не менее двух процессов 2 процесса 3 процесса
В MPI существуют следующие типы двухточечных обменов:
обмен с буферизацией стандартный обмен синхронный обмен
В MPI существуют следующие типы двухточечных обменов:
полублокирующие блокирующие неблокирующие
В MPI существуют следующие типы двухточечных обменов:
быстрый обмен обмен "по готовности" обмен с буферизацией
Двухточечная передача с буферизацией выполняется подпрограммой
MPI_Send MPI_Bsend MPI_Buffer_attach
При организации двухточечного обмена с буферизацией используется подпрограмма:
MPI_Buffer_detach MPI_Buffer_attach MPI_Bsend
"Джокер" используется в подпрограмме двухточечного приема сообщения:
для обозначения произвольного тега сообщения для задания буфера приёма произвольного размера для обозначения произвольного источника сообщения
При организации двухточечного обмена с буферизацией размер буфера должен превосходить объём пересылаемых данных на величину:
MPI_BSEND_OVERHEAD MPI_BUFFER_ATTACH 100 байт
Пусть значение параметра count в подпрограмме приёма двухточечного сообщения больше, чем количество элементов в принятом сообщении. Тогда:
в буфере приёма изменится значение только тех элементов, которые соответствуют элементам фактически принятого сообщения выполнение подпрограммы приёма завершится с кодом ошибки, но выполнение параллельной программы продолжится выполнение программы завершится аварийно
При стандартной блокирующей двухточечной передаче сообщения:
после завершения вызова нельзя использовать переменные, использовавшиеся в списке параметров после завершения вызова можно использовать любые переменные, использовавшиеся в списке параметров выполнение параллельной программы приостанавливается до тех пор, пока сообщение будет принято процессом-адресатом
Укажите, является ли данное утверждение верным для буферизованного двухточечного обмена:
при выполнении буферизованного обмена программист должен заранее создать буфер достаточного размера после завершения работы с буфером его необходимо отключить при выполнении буферизованного обмена к процессу можно подключить до 1024 буферов передачи
При выполнении блокирующей передачи "по готовности":
передача сообщения выполняется, как только будет готов результат вычислений, выполняемых процессом-источником сообщения передача должна начинаться до того, как зарегистрирован прием передача должна начинаться, если уже зарегистрирован соответствующий прием
Операция совместных приёма и передачи:
не существует для двухточечных обменов существует только для коллективных обменов существует для двухточечных обменов
Двухточечный обмен "по готовности" позволяет:
повысить предсказуемость поведения параллельной программы увеличить производительность параллельной MPI-программы упростить процесс отладки
Неблокирующий прием сообщений реализован в MPI:
двумя подпрограммами одной подпрограммой тремя подпрограммами
Неблокирующий вариант операций передачи сообщений существует для:
обмена с буферизацией стандартного обмена обмена «по готовности»
При неблокирующем двухточечном обмене:
передача сообщения происходит одновременно с выполнением процесса не блокируется выполнение всех процессов параллельной программы буфер передачи/приема можно использовать сразу после завершения вызова подпрограммы инициализации обмена
Неблокирующий прием в MPI выполняется подпрограммой:
MPI_Nonblocking_recv MPI_Irecv MPI_Recv
Неблокирующая передача с буферизацией выполняется подпрограммой:
повысить предсказуемость поведения программы повысить производительность параллельной программы повысить надежность передачи сообщений
Второй этап выполнения неблокирующего обмена это:
проверка доступности буфера обмена создание буфера обмена проверка выполнения обмена
Первый этап выполнения неблокирующего обмена это:
инициализация обмена проверка доступности буфера обмена создание буфера обмена
Подпрограмма MPI_Wait предназначена для:
блокирующей проверки выполнения обмена неблокирующей проверки выполнения обмена приостановки выполнения программы на заданный период времени
После завершения вызова MPI_Wait:
возобновляется выполнение всех процессов, относящихся к данной параллельной программе неблокирующий обмен не выполнен неблокирующий обмен выполнен
Подпрограмма MPI_Test предназначена для:
проверки доступности коммуникационной среды неблокирующей проверки выполнения обмена блокирующей проверки выполнения обмена
Подпрограмма MPI_Iprobe:
является подпрограммой неблокирующей проверки сообщения не является подпрограммой проверки сообщения является подпрограммой блокирующей проверки сообщения
Подпрограммы-пробники предназначены для:
тестирования коммуникационной подсистемы тестирования программ проверки фактической доставки сообщений
Размер полученного сообщения можно определить с помощью подпрограммы:
MPI_Get_count MPI_Count MPI_Comm_size
Подпрограмма MPI_Waitall выполняет проверку:
завершения любого числа обменов завершения одного обмена завершения всех обменов
Подпрограмма MPI_Testall выполняет проверку:
завершения одного обмена завершения всех обменов завершения любого числа обменов
Подпрограмма MPI_Testany выполняет проверку:
завершения любого из нескольких обменов завершения первого обмена завершения всех обменов
Для выполнения коллективного обмена:
требуется инициализация посредством вызова подпрограммы MPI_Collective_init не требуется создание специального коммуникатора, если это не диктуется особенностями задачи требуется создание специального "коллективного" коммуникатора
Операции коллективного обмена для инициировавших их процессов являются:
неблокирующими понятия "блокирующий/неблокирующий обмен" к ним неприменимы блокирующими
В коллективном обмене принимают участие:
два процесса произвольное количество процессов, но большее двух все процессы из указанного коммуникатора
Коллективная передача данных может сочетаться с двухточечным приемом:
иногда нет да
Широковещательная рассылка сообщения выполняется подпрограммой:
MPI_Send MPI_Bsend MPI_Bcast
К числу коллективных обменов не относится:
обмен по готовности обмен с буферизацией векторная операция распределения данных
К числу коллективных обменов относятся:
сбор данных распределение данных операция приведения
Данная операция является операцией приведения:
определение максимального элемента умножение двух матриц суммирование элементов массива
Подпрограмма MPI_Bcast:
пересылает всем остальным процессам разные фрагменты данных пересылает одну и ту же порцию данных всем остальным процессам выполняет операцию частичного приведения
Подпрограмма MPI_Scatter:
выполняет широковещательную рассылку выполняет синхронизацию процессов выполняет распределение данных
Подпрограмма MPI_Gather:
выполняет широковещательную рассылку является операцией коллективного обмена выполняет сбор данных
Какие подпрограммы выполняют сборку данных?
MPI_Gatherv MPI_Allgather MPI_Gather
Подпрограмма выполняет сбор данных:
MPI_Allgather MPI_Scatterv MPI_Get_count
Подпрограмма является векторным вариантом операции коллективного обмена:
MPI_Allgatherv MPI_Alltoallv MPI_Alltoall
"Толщина барьера" при барьерной синхронизации это:
величина которая определяется пропускной способностью сети один из параметров при вызове подпрограммы барьерной синхронизации количество процессов, в которых для продолжения выполнения должен быть выполнен вызов процедуры барьерной синхронизации
Подпрограмма MPI_Alltoall:
выполняет передачу данных по схеме "каждый-всем" выполняет операцию полной редукции выполняет операцию сканирования (частичной редукции)
Подпрограмма MPI_Scan:
выполняет операцию полной редукции выполняет операцию частичной редукции выполняет проверку доступности узлов многопроцессорной вычислительной системы
В терминологии MPI "интракоммуникатор" - это:
коммуникатор, обеспечивающий обмены сообщениями между группами подпрограмма, выполняющая передачу или прием сообщения коммуникатор, обеспечивающий обмены сообщениями внутри группы
В терминологии MPI "интеркоммуникатор" - это:
коммуникатор, обеспечивающий обмены сообщениями между группами коммуникатор, обеспечивающий обмены сообщениями внутри группы подпрограмма, выполняющая передачу или прием сообщения
В терминологии MPI "коммуникатор" - это:
мобильное устройство связи подпрограмма, выполняющая передачу или прием сообщения группа процессов, наделенная общим контекстом обмена
может одновременно принадлежать нескольким группам не может одновременно принадлежать нескольким группам может одновременно принадлежать только непересекающимся группам
Подпрограмма MPI_Comm_dup:
создает точную копию коммуникатора выполняет сравнение двух коммуникаторов выполняет синхронизацию процессов
Подпрограмма MPI_Comm_size:
является операцией двухточечного обмена позволяет определить количество процессов в указанном коммуникаторе позволяет задать количество процессов в указанном коммуникаторе
Подпрограмма MPI_Comm_compare возвращает значение MPI_CONGRUENT:
если первая из сравниваемых групп является подмножеством второй если первая из сравниваемых групп является надмножеством второй если группы, соответствующие двум коммуникаторам, содержат одни и те же процессы, но контекст обмена у них разный
должен предшествовать любым операциям над группой процессов позволяет определить характеристики указанной группы процессов дает доступ к группе процессов
Подпрограмма позволяет определить количество процессов в коммуникаторе:
MPI_Comm_size MPI_Comm_sum MPI_Comm_rank
Выберите правильную последовательность действий при создании пользовательского типа:
преодоления ограничений в организации пересылаемых данных описания в MPI-программах тех типов, для которых нет аналога в соответствующем языке программирования создания сложных структур данных
Создание производного типа в MPI выполняется подпрограммой:
MPI_Comm_create MPI_Type_create MPI_Type_struct
Создание векторного типа в MPI выполняется подпрограммой:
MPI_Type_vector MPI_Vector_commit MPI_Comm_create
Создание структурного типа в MPI выполняется подпрограммой:
MPI_Type_commit MPI_Create_struct MPI_Type_struct
Регистрация производного типа выполняется подпрограммой:
Следующие подпрограммы являются конструкторами векторного типа:
MPI_Type_hvector MPI_Type_vector MPI_Type_indexed
Подпрограмма MPI_Type_extent:
позволяет определить экстент пересылаемого массива позволяет получить количество элементов в одном объекте производного типа позволяет определить объем памяти, выделяемый для хранения одного элемента производного типа
Декартова топология характеризуется:
граничными условиями размером решетки размерностью решетки
В MPI имеются следующие виртуальные топологии:
топология гиперкуба декартова топология топология графа
Виртуальная топология:
отражает топологию коммуникационной подсистемы параллельного компьютера отражает топологические свойства решаемой задачи является одним из атрибутов коммуникатора
Виртуальная топология графа характеризуется:
связностью графа количеством вершин графа порядками узлов
Вызов подпрограммы MPI_Cart_create:
не создает нового коммуникатора создает новый коммуникатор, наделенный топологией графа создает новый коммуникатор, наделенный декартовой топологией
Подпрограмма MPI_Cart_sub:
используется для расщепления коммуникатора, наделенного декартовой топологией, на подгруппы, соответствующие декартовым подрешеткам меньшей размерности используется для регистрации новой топологии используется для создания составных виртуальных топологий
Виртуальная топология:
является атрибутом коммуникатора является пользовательским атрибутом не является атрибутом коммуникатора
Атрибут коммуникатора:
может быть системным или пользовательским дополнительная информация, добавляемая к коммуникатору может быть назначен пользователем
Атрибут коммуникатора:
создается вызовом подпрограммы MPI_Attr_put аннулируется вызовом подпрограммы MPI_Key_free связан с ключом
"Кольцо демонов":
создается один раз и может быть использовано многократно, разными программами одного пользователя может взаимодействовать с демонами mpd других пользователей не может взаимодействовать с демонами mpd других пользователей
Запуск процесса из MPI-программы выполняется подпрограммой: