Внимание ! Вопросы к тесту выложены исключительно в ознакомительных целях: количество вопросов может не совпадать с действительным, актуальность не поддерживается,- за решением теста Welcome to the cashier! При компиляции программы на языке Фортран90 прилинковать библиотечные модули можно с помощью скрипта...
mpiCC mpif90 mpicc
Наиболее распространенной технологией программирования для параллельных ПК с рапределенной памятью является...
MPI MPT HPI
Какие объекты, используемые в MPI, имеют префикс MPI_?
Константы предопределенные типы данных имена процедур
В каком файле собираются все описания интерфейса MPI?
mpif.h mpicc.h mpirun.h
При использовании какого языка являются существенным в названиях функций регистр символов?
Фортран Паскаль Си
Назовите основной способ взаимодействия параллельных процессов
распределение памяти на вычислительной платформе передача сообщений друг другу передача цифровых данных
Технология MPI - это...
интерфейс получения данных интерфейс распределения сообщений интерфейс передачи сообщений
Каким образом записывается название функций MPI на языке Си?
название полностью записывается в нижнем регистре первая буква после префикса MPI_ пишется в верхнем регистре, последующие буквы - в нижнем регистре название полностью записывается в верхнем регистре
Отметьте основной способ взаимодействия между процессами в MPI:
передача общих данных регистрация общих переменных явная посылка сообщений
Почему в начале MPI-программы должна стоять директива include 'mpif.h'?
будут устранены конфликты с объектами MPI все описания интерфейса MPI собраны в файле mpif.h названия констант MPI будут писаться в нижнем регистре
Интерфейс, зафиксированный стандартом MPI, должен соблюдаться...
параллельным процессом системы системой программирования на каждой вычислительной платформе пользователем при создании программ
Какая версия стандарта MPI получила широкое распространение?
версия 1.1 версия 1.0 версия 2.0
В какой версии стандарта MPI появилась возможность уничтожение существующих процессов?
версия 1.1 версия 1.0 версия 2.0
Что не допускается в ходе выполнения MPI-программы в версиях до MPI 2.0
уничтожение существующих процессов порождение дополнительных процессов параллельное взаимодействие процессов
Все процессы в MPI порождаются...
много раз, образуя резервную часть программы один раз, образуя параллельную часть программы один раз, образуя общую часть программы
Каждый процесс MPI-программы имеет...
общие данные свое адресное пространство общие переменные
В каком году появилась версия 2.0 стандарта MPI?
в 1993 - 1994 гг. в 1997 - 1998 гг. в 1995 - 1996 гг.
Отдельная среда для общения группы процессов называется...
В каком случае разность возвращаемых значений покажет время работы определенного участка?
если некоторый участок программы окружить функцией DOUBLE PRECISION MPI_WTICK если некоторый участок программы окружить функцией MPI_GET_PROCESSOR_NAME если некоторый участок программы окружить функцией DOUBLE PRECISION MPI_WTIME
Какая функция возвращает разрешение таймера на вызвавшем процессе в секундах?
DOUBLE PRECISION MPI_WTICE(IERR) INTEGER IERR
DOUBLE PRECISION MPI_WTICK(IERR) INTEGER IERR
DOUBLE PRECISION MPI_WTIME(IERR) INTEGER IERR
Какая функция возвращает на вызвавшем процессе астрономическое время в секундах, прошедшее с некоторого момента в прошлом
DOUBLE PRECISION MPI_WTICK(IERR) INTEGER IERR
DOUBLE PRECISION MPI_WTIME(IERR) INTEGER IERR
DOUBLE PRECISION MPI_WTICE(IERR) INTEGER IERR
С помощью какой процедуры можно определить, на какие физические процессоры были спланированы процессы MPI-приложения
MPI_GET_PROCESSOR_NAME(NAME, LEN, IERR) CHARACTER*(*) NAME INTEGER LEN, IERR
Какое количество символов в имени возвращается в данной процедуре в переменной LEN
MPI_GET_PROCESSOR_NAME(NAME, LEN, IERR) CHARACTER*(*) NAME INTEGER LEN, IERR
не превышающее значения константы MPI_MAX_PROCESSOR_NAME равное значению константы MPI_MAX_PROCESSOR_NAME превышающее значения константы MPI_MAX_PROCESSOR_NAME
При работе с атрибутами сообщений массив (структура) дает доступ...
к идентификаторам сообщений к коммуникатору сообщений к значениям сообщений
Какие атрибуты можно отнести к сообщению?
Коммуникатор тэг сообщения номер процесса-отправителя
Какой атрибут является уникальным для каждого процесса MPI-программы в каждой группе, в которую он входит?
номер в коммуникаторе коммуникатор номер процесса
В каких пределах лежит номер любого процесса в определенной группе, если группа содержит n процессов?
от 0 до n+1 от 0 до n-1 от 0 до 1-n
Назовите основные атрибуты процесса
Коммуникатор номер в коммуникаторе номер процесса
С помощью чего осуществляется взаимодействие запущенных процессов между собой в MPI?
посредством явной посылки сообщений посредством получения сообщений посредством передачи цифровых данных
В каком случае блокировка может гарантировать корректность повторного использования всех параметров после возврата из процедуры?
при непосредственной передаче процессу DEST при копировании в промежуточный буфер при получении сообщения от процесса DEST
Какие средства должны содержать программы, написанные с использованием коммуникационной технологии MPI?
для взаимодействия запущенных процессов между собой для завершения параллельных процессов для порождения параллельных процессов
Какие процессы обязательно участвуют в операциях типа точка-точка?
процесс-отправитель как тот, так и другой процесс-получатель
Операции, предназначенные для взаимодействия всех процессов некоторого коммуникатора, называются...
коллективными операциями типа точка-точка индивидуальными
Коллективные операции предназначены...
для взаимодействия всех процессов некоторого коммуникатора для взаимодействия одинаковых процессов для взаимодействия двух процессов программы
Операции предназначенные для взаимодействия двух процессов программы называются...
коллективными индивидуальными операциями типа точка-точка
Операции типа точка-точка предназначены...
для взаимодействия двух процессов программы для взаимодействия всех процессов для взаимодействия одинаковых процессов
В каких операциях участвуют процессы отправления и получения сообщения?
как в тех, так и вдругих коллективных индивидуальных
Какой из процессов операции типа точка-точка должен вызвать одну из процедур и явно указать номер в некотором коммуникаторе
как тот, так и другой процесс-отправитель процесс-получатель
Какой из процессов операции типа точка-точка должен вызвать одну из процедур с указанием того же коммутатора
как тот, так и другой процесс-отправитель процесс-получатель
Использование каких процедур может привести к возникновению тупиковых ситуаций?
асинхронных процедур процедур без блокировки процедур с блокировкой
К каким операциям относятся процедуры с блокировкой и без блокировки?
индивидуальным коллективным к тем и другим
Процедуры с синхронизацией приостанавливают работу процесса...
во время проверки массивов данных после инициализации соответствующей коммуникационной операции до выполнения некоторого условия
Какое значение используется при пересылке сообщений для несуществующих процессов?
MPI_COMM_NULL MPI_PROC_NULL MPI_PROG_NULL
Каким образом должен указываться тип передаваемых элементов?
с помощью предопределенных констант типа с помощь значения COUNT с помощью посылаемого сообщения
В каком файле перечислен полный список предопределенных имен типов данных?
mpi.h mpiff.h mpif.h
С каким кодом завершения завершаются операции с несуществующим процессом?
MPI_REAL MPI_WORLD MPI_SUCCESS
Как называется модификация процедуры передачи сообщения с синхронизацией?
MPI_SSEND MPI_RSEND MPI_BSEND
Как называется модификация процедуры передачи сообщения по готовности?
MPI_RSEND MPI_BSEND MPI_SSEND
Какой процедурой можно пользоваться, если процесс-получатель уже инициировал прием сообщения?
MPI_BSEND MPI_RSEND MPI_SSEND
Выполнение какой процедуры не зависит от соответствующего вызова процедуры приема сообщения?
MPI_SSEND MPI_BSEND MPI_RSEND
При какой процедуре возможно повторное использование буфера посылки?
MPI_RSEND MPI_BSEND MPI_SSEND
Какой константой используется в определении размера массива, выделяемого для буферизации?
Каким образом определяется размер необходимого буфера при передачи сообщения?
размер сообщения плюс значение константы MPI_RSEND_OVERHEAD размер сообщения плюс значение константы MPI_BSEND_OVERHEAD размер сообщения плюс значение константы MPI_SSEND_OVERHEAD
В каком аргументе указывается адрес освобождаемого массива?
SIZE IERR BUF
Какую предопределенную константу можно использовать при приеме сообщения с любым идентификатором?
MPI_ANY_TAG MPI_ANY_SOURCE MPI_ANY_STATUS
С помощью какой процедуры можно узнать точное число элементов в принимаемом сообщении?
MPI_RECV MPI_GET_COUNT MPI_PROBE
В каком случае может возникнуть ошибка переполнения в буфере BUF?
если количество элементов в принимаемом сообщении больше значения COUNT если количество элементов в принимаемом сообщении равно значению COUNT если количество элементов в принимаемом сообщении меньше значения COUNT
Какое будет принято сообщение при одновременном использовании констант MPI_ANY_SOURCE и MPI_ANY_TAG
сообщение от любого процесса сообщение с любым идентификатором сообщение с любым идентификатором от любого процесса
Какие константы являются индексом по массиву status?
MPI_ERROR MPI_TAG MPI_SOURCE
С помощью какой константы можно получить доступ к идентификатору сообщения?
MPI_TAG MPI_ERROR MPI_SOURCE
Возврат из процедур какой группы происходит сразу после вызова без какой-либо остановки работы процессов
синхронной асинхронной блокирующей
Для какой константы характерна несимметричность операций посылки и приема сообщений
MPI_ANY_SOURCE MPI_ANY_ERROR MPI_ANY_TAG
Какая процедура необходима для определения размера области памяти,выделяемой для хранения принимаемого сообщения?
В каком случае используется данная процедура MPI_REQUEST_FREE(REQUEST, IERR) INTEGER REQUEST, IERR
удаление структуры данных, связанной с параметром REQUEST формирование отложенного запроса на прием сообщения инициализация COUNT отложенных запросов на выполнение операций обмена
Назовите способы разрешения тупиковых ситуаций
использование процедуры MPI_SENDRECV изменение порядка следования процедур посылки и приема сообщения использование неблокирующих ситуаций
Какой функцией будет вычисляться создание пользовательской глобальной операции OP
LEN COMMUTE FUNC
Могут ли использоваться в коллективных операциях те же коммуникаторы, использовавшиеся для операций точка-точка?
нет иногда да
Каких коллективных операций в MPI не существует?
с блокировкой без блокировки как тех, так и других
В MPI сообщения, вызванные коллективными операциями, не могут...
пересекаться с сообщениями, появившимися в результате индивидуального взаимодействия процессов повлиять на выполнение других операций иметь доступ к буферу приема или посылки
Какой атрибут не используется в коллективных операциях?
номер процесса тег номер в коммутаторе
С помощью какой коллективной процедуры возможна синхронизация процессов
MPI_BARRIER MPI_STARTAL MPI_WAITALL
Возможна ли синхронизация процессов с помощью коллективных операций?
не всегда нет да
Какая из перечисленных процедур используется для барьерной синхронизации процессов?
DOUBLE PRECISION MPI_WTIME(IERR) INTEGER IERR
MPI_START (REQUEST, IERR) INTEGER REQUEST, IERR
MPI_BARRIER (COMM, IERR) INTEGER COMM, IERR
Для чего используется процедура
MPI_BARRIER (COMM, IERR) INTEGER COMM, IERR
для инициализации отложенных запросов для совмещенного приема и передачи сообщений с блокировкой для барьерной синхронизации процессов
Какая из предложенных процедур является коллективной?
DOUBLE PRECISION MPI_WTIME(IERR) INTEGER IERR
MPI_BARRIER (COMM, IERR) INTEGER COMM, IERR
MPI_START (REQUEST, IERR) INTEGER REQUEST, IERR
С помощью какой процедуры можно проиллюстрировать действие процедуры MPI_BCAST?
С помощью какой процедуры можно проиллюстрировать действие процедуры MPI_GATHER? Каким образом собирающий процесс сохраняет данные в буфере RBUF?
в порядке возрастания номеров процессов в произвольном порядке в порядке убывания номеров процессов
Какие значения в данной процедуре должны быть одинаковыми у всех процессов?
Внимание ! Вопросы к тесту выложены исключительно в ознакомительных целях: количество вопросов может не совпадать с действительным, актуальность не поддерживается,- за решением теста Welcome to the cashier! Какая из перечисленных процедур является обратной по своему действию MPI_SCATTER
MPI_BARRIER MPI_GATHER MPI_BCAST
С помощью какой процедуры возможна рассылка каждым процессом коммуникатора COMM различных порций данных всем другим процессам
MPI_BARRIER MPI_ALLTOALL MPI_ALLGATHER
какая схема моделирования операции глобального суммирования по эффективности сравнивается с коллективной операцией MPI_REDUCE
схема сдваивания с использованием асинхронных процедур схема сдваивания с использованием пересылок данных типа точка-точка схема сдваивания с использованием синхронных пересылок данных
С помощью какой процедуры можно задать свою функцию для выполнения глобальной операции
MPI_COMM_RANK MPI_INIT MPI_OP_CREATE
С помощью каких констант возможно определение максимального и минимального значения
FUNCTION FUNC(INVEC(*), INOUTVEC(*), LEN, TYPE) <type> INVEC(LEN), INOUTVEC(LEN) INTEGER LEN, TYPE
Из какого параметра данной процедуры берется первый аргумент
FUNCTION FUNC(INVEC(*), INOUTVEC(*), LEN, TYPE) <type> INVEC(LEN), INOUTVEC(LEN) INTEGER LEN, TYPE
LEN INVEC INOUTVEC
Какой из параметров данной процедуры задает тип входных и выходных данных
FUNCTION FUNC(INVEC(*), INOUTVEC(*), LEN, TYPE) <type> INVEC(LEN), INOUTVEC(LEN) INTEGER LEN, TYPE
TYPE INOUTVEC LEN
Какой из параметров данной процедуры задает количество элементов входного и выходного массивов
FUNCTION FUNC(INVEC(*), INOUTVEC(*), LEN, TYPE) <type> INVEC(LEN), INOUTVEC(LEN) INTEGER LEN, TYPE
INOUTVEC TYPE LEN
Какая функция в данном процессе вычисляет поэлементную сумму по модулю 5 векторов целочисленных аргументов
MPI_OP_FREE. program example15 include 'mpif.h' integer ierr, rank, i, n parameter (n = 1 000) integer a(n), b(n) integer op external smod5 call MPI_INIT(ierr) call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr) do i = 1, n a(i) = i + rank end do print *, 'process ', rank, ' a(1) =', a(1) call MPI_OP_CREATE(smod5, .TRUE., op, ierr) call MPI_REDUCE(a, b, n, MPI_INTEGER, op, 0, & MPI_COMM_WORLD, ierr) call MPI_OP_FREE(op, ierr) if(rank .eq. 0) print *, ' b(1) =', b(1) call MPI_FINALIZE(ierr) end integer function smod5(in, inout, l, type) integer l, type integer in(l), inout(l), i do i = 1, l inout(i) = mod(in(i)+inout(i), 5) end do return end
smod5 op inout
В вызове какой процедуры функция smod5 объявляется в качестве глобальной процедуры op
MPI_OP_FREE. program example15 include 'mpif.h' integer ierr, rank, i, n parameter (n = 1 000) integer a(n), b(n) integer op external smod5 call MPI_INIT(ierr) call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr) do i = 1, n a(i) = i + rank end do print *, 'process ', rank, ' a(1) =', a(1) call MPI_OP_CREATE(smod5, .TRUE., op, ierr) call MPI_REDUCE(a, b, n, MPI_INTEGER, op, 0, & MPI_COMM_WORLD, ierr) call MPI_OP_FREE(op, ierr) if(rank .eq. 0) print *, ' b(1) =', b(1) call MPI_FINALIZE(ierr) end integer function smod5(in, inout, l, type) integer l, type integer in(l), inout(l), i do i = 1, l inout(i) = mod(in(i)+inout(i), 5) end do return end
MPI_REDUCE MPI_OP_CREATE MPI_OP_FREE
С помощью вызова какой процедуры удаляется функция smod5
MPI_OP_FREE. program example15 include 'mpif.h' integer ierr, rank, i, n parameter (n = 1 000) integer a(n), b(n) integer op external smod5 call MPI_INIT(ierr) call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr) do i = 1, n a(i) = i + rank end do print *, 'process ', rank, ' a(1) =', a(1) call MPI_OP_CREATE(smod5, .TRUE., op, ierr) call MPI_REDUCE(a, b, n, MPI_INTEGER, op, 0, & MPI_COMM_WORLD, ierr) call MPI_OP_FREE(op, ierr) if(rank .eq. 0) print *, ' b(1) =', b(1) call MPI_FINALIZE(ierr) end integer function smod5(in, inout, l, type) integer l, type integer in(l), inout(l), i do i = 1, l inout(i) = mod(in(i)+inout(i), 5) end do return end
MPI_OP_CREATE MPI_OP_FREE MPI_REDUCE
Как называется целое число, сопоставленное каждому процессу в группе
Идентификатор Ранг Номер
Упорядоченное множество процессов называется
группой коммуникатором рангом
Какие задачи можно решить при помощи создания независимого коммуникатора
работа над своей независимой подзадачей некоторой группе процессов непересечение между пересылками данных в библиотечных модулях и пересылками в основной программе обмен данными только для части процессов
С каким коммуникатором связана базовая группа, из которой создаются все остальные групы процессов
MPI_GROUP_EMPTY MPI_COMM_WORLD MPI_GROUP_NULL
Какой коммуникатор обозначает пустую группу, не содержащую ни одного процесса
MPI_GROUP_EMPTY MPI_GROUP_WORLD MPI_GROUP_NULL
Какой коммуникатор обозначает значение, используемое для ошибочной группы
MPI_GROUP_EMPTY MPI_GROUP_NULL MPI_GROUP_WORLD
Любой процесс может производить операции...
над любыми группами над любыми группами, которые содержат данный процесс над любыми группами, которые не содержат данный процесс
Какие новые группы могут использоваться в операциях обмена
созданные на основе существующих групп созданные на основе процессов созданные на основе коммуникаторов
Новые группы можно создавать на основе...
Коммуникаторов существующих групп процессов
При помощи какого вызова можно получить группу, соответствующую коммуникатору MPI_COMM_WORLD
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR) INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
MPI_GROUP_INCL(GROUP, N, RANKS, NEWGROUP, IERR) INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
В каком случае в данном процессе будет создана пустая группа MPI_GROUP_EMPTY
MPI_GROUP_INCL(GROUP, N, RANKS, NEWGROUP, IERR) INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
N=1 N=-1 N=0
С помощью данной процедуры возможно...
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR) INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
создание группы NEWGROUP ИЗ процессов группы GROUP, исключая процессы с рангами RANKS (1),...,RANKS (N) получение группы GROUP, соответствующей коммуникатору COMM создание группы NEWGROUP из N процессов прежней группы GROUP с рангами RANKS (l),...,RANKS (N)
В каком случае в данном процессе будет создана группа, идентичная старой группе
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR) INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
N=0 N=-1 N=1
Какая группа будет создана в данном процессе при N=0
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR) INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
пустая группа MPI_GROUP_EMPTY группа,идентичная старой группе новая группа
С помощью какой процедуры происходит создание группы NEWGROUP из пересечения групп GROUP 1 и GROUP 2
для проверки эффективности выполнения программы вычисления чисел в определенном процессоре для приближения параллельной программы к структуре математического алгоритма для оптимизации распределения процессов по физическим процессорам используемого параллельного компьютера
В MPI топологии с физической топологией коммуникационной сети...
сопоставляются не связаны связаны
Топология - это...
механизм сопоставления процессам некоторого коммуникатора альтернативной схемы адресации механизм упорядочивания коллективных процессов механизм предоставления отдельного контекста обмена процессов некоторой группы
Какие типы топологии предусмотрены в MPI?
декартова топологи топология графа топология тега
Какая топология является прямоугольной решеткой произвольной размерности?
декартова топологи топология тега топология графа
С помощью чего топология используется системой для оптимизации распределения процессов по физическим процессорам используемого параллельного компьютера?
при помощи изменения самого коммуникатора при помощи изменения порядка нумерации процессов внутри коммуникатора при помощи удаления дублирующих процессов внутри коммуникатора
Какое значение параметра TYPE в данной процедуре будет для декартовой типологии
если количество процессов в задаваемой топологии больше числа процессов в исходном коммуникаторе если количество процессов в задаваемой топологии равно числу процессов в исходном коммуникаторе если количество процессов в задаваемой топологии меньше числа процессов в исходном коммуникаторе
В каком случае в данной процедуре некоторые процессы не будут принимать участие в создаваемой топологии
если количество процессов в задаваемой топологии COMM_CART равно числу процессов в исходном коммуникаторе сомм если количество процессов в задаваемой топологии COMM_CART меньше числа процессов в исходном коммуникаторе сомм если количество процессов в задаваемой топологии COMM_CART больше числа процессов в исходном коммуникаторе сомм
Какая из предложенных процедур не требует межпроцессорного взаимодействия
определение количества непосредственных соседей процесса с рангом RANK в графовой топологии, связанной с коммуникатором сомм определение числа вершин И числа ребер графовой топологии, связанной с коммуникатором сомм определение рангов непосредственных соседей процесса с рангом RANK В графовой топологии, связанной с коммуникатором сомм
Какие параметры задают ограничения на размеры соответсвующих массивов
MAXINDEX MAXNEDGES MAXEDGES
С помощью какого процесса можно определить ранги непосредственных соседей процесса с рангом RANK в графовой топологии, связанной с коммуникатором сомм
данных, расположенных не в последовательных ячейках памяти разнотипных данных однотипных данных
Сообщение в MPI - это...
массив данных, расположенных в параллельных ячейках памяти массив разнотипных данных, расположенных в последовательных ячейках памяти массив однотипных данных, расположенных в последовательных ячейках памяти
Какие способы пересылки разнотипных данных в MPI существуют
упаковка данных производственные типы данных временная буферизация
В каких операциях можно использовать производный тип после регистрации?
в операциях пересылки в коллективных операциях в операциях типа точка-точка
Назовите основные этапы создания типа данных
передача типа конструирование типа регистрация типа
Какие типы данных создаются во время выполнения программы с помощью процедур-конструкторов на основе существующих к моменту вызова конструктора типов данных
производные коллективные предопределенные
При какой процедуре создаваемый тип данных представляет массив данных базового типа как отдельный объект
Назовите основные характеристики производственного типа данных
последовательность базовых типов данных упаковка данных, расположенных не в последовательных ячейках памяти набор целочисленных значений смещения элементов типа относительно начала буфера обмена
С помощью каких процедур возможно создание нового типа данных NEWTYPE
Какой тип данных newtype задается в данном примере
do i = 1, n blocklens (i) = n-i + 1 displs(i) = n*(i-1)+i-1 end do call MPI_TYPE_INDEXED(n, blocklens, displs, MPI_DOUBLE_PRECISION, newtype, ierr)
который после регистрации может быть использован для пересылки как единого целого шести элементов данных который в дальнейшем может использоваться для пересылки пяти расположенных подряд целых чисел для описания нижнетреугольной матрицы типа double precision
В какой процедуре следующий блок начинается через STRIDE элементов базового типа данных после начала предыдущего блока