Главная / Программирование /
Параллельное программирование с использованием технологии MPI / Тест 5
Параллельное программирование с использованием технологии MPI - тест 5
Упражнение 1:
Номер 1
Какие задачи можно решить при помощи создания независимого коммуникатора
Ответ:
 (1) работа над своей независимой подзадачей некоторой группе процессов 
 (2) обмен данными только для части процессов 
 (3) непересечение между пересылками данных в библиотечных модулях и пересылками в основной программе 
Номер 2
Упорядоченное множество процессов называется
Ответ:
 (1) коммуникатором 
 (2) группой 
 (3) рангом 
Номер 3
Как называется целое число, сопоставленное каждому процессу в группе
Ответ:
 (1) ранг 
 (2) идентификатор 
 (3) номер 
Упражнение 2:
Номер 1
Какой коммуникатор обозначает пустую группу, не содержащую ни одного процесса
Ответ:
 (1) MPI_GROUP_EMPTY
 
 (2) MPI_GROUP_NULL
 
 (3) MPI_GROUP_WORLD
 
Номер 2
Какой коммуникатор обозначает значение, используемое для ошибочной группы
Ответ:
 (1) MPI_GROUP_EMPTY
 
 (2) MPI_GROUP_NULL
 
 (3) MPI_GROUP_WORLD
 
Номер 3
С каким коммуникатором связана базовая группа, из которой создаются все остальные группы процессов
Ответ:
 (1) MPI_GROUP_EMPTY
 
 (2) MPI_GROUP_NULL
 
 (3) MPI_COMM_WORLD
 
Упражнение 3:
Номер 1
Новые группы можно создавать на основе...
Ответ:
 (1) существующих групп 
 (2) коммуникаторов 
 (3) процессов 
Номер 2
Какие новые группы могут использоваться в операциях обмена
Ответ:
 (1) созданные на основе существующих групп 
 (2) созданные на основе коммуникаторов 
 (3) созданные на основе процессов 
Номер 3
Любой процесс может производить операции...
Ответ:
 (1) над любыми группами 
 (2) над любыми группами, которые содержат данный процесс 
 (3) над любыми группами, которые не содержат данный процесс 
Упражнение 4:
Номер 1
С помощью какой процедуры возможно получение группы GROUP
, соответствующей коммуникатору COMM
Ответ:
 (1)
MPI_GROUP_INCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
 
 (2)
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
 
 (3)
MPI_COMM_GROUP(COMM, GROUP, IERR)
INTEGER COMM, GROUP, IERR
 
Номер 2
При помощи какого вызова можно получить группу, соответствующую коммуникатору MPI_COMM_WORLD
Ответ:
 (1)
call MPI_GROUP_INCL(MPI_COMM_WORLD, group, ierr) 
 (2)
call MPI_COMM_GROUP(MPI_COMM_WORLD, group, ierr) 
 (3)
call MPI_GROUP_EXCL(MPI_COMM_WORLD, group, ierr) 
Номер 3
Какие процедуры определяют операции над группами процессов, как над множествами
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Упражнение 5:
Номер 1
С помощью какой процедуры можно задать новый порядок процессов в группе
Ответ:
 (1)
MPI_GROUP_INCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
 
 (2)
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
 
 (3)
MPI_COMM_GROUP(COMM, GROUP, IERR)
INTEGER COMM, GROUP, IERR
 
Номер 2
В каком случае в данном процессе будет создана пустая группа MPI_GROUP_EMPTY
MPI_GROUP_INCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
Ответ:
 (1) N=1
 
 (2) N=0
 
 (3) N=-1
 
Номер 3
Какая группа будет создана в данном процессе при N=0
MPI_GROUP_INCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
Ответ:
 (1) пустая группа MPI_GROUP_EMPTY
 
 (2) новая группа 
 (3) группа, идентичная старой группе 
Упражнение 6:
Номер 1
С помощью данной процедуры возможно...
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
Ответ:
 (1) получение группы GROUP
, соответствующей коммуникатору COMM
 
 (2) создание группы NEWGROUP
из N
процессов прежней группы GROUP
с рангами RANKS (l),...,RANKS (N)
 
 (3) создание группы NEWGROUP
ИЗ процессов группы GROUP
, исключая процессы с рангами RANKS (1),...,RANKS (N)
 
Номер 2
В каком случае в данном процессе будет создана группа, идентичная старой группе
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
Ответ:
 (1) N=1
 
 (2) N=0
 
 (3) N=-1
 
Номер 3
Какая группа будет создана в данном процессе при N=0
MPI_GROUP_EXCL(GROUP, N, RANKS, NEWGROUP, IERR)
INTEGER GROUP, N, RANKS(*), NEWGROUP, IERR
Ответ:
 (1) пустая группа MPI_GROUP_EMPTY
 
 (2) новая группа 
 (3) группа,идентичная старой группе 
Упражнение 7:
Номер 1
С помощью какой процедуры происходит создание группы NEWGROUP
из пересечения групп GROUP 1
и GROUP 2
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Номер 2
С помощью какой процедуры происходит создание группы NEWGROUP ИЗ объединения групп GROUP 1
и GROUP 2
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Номер 3
С помощью какой процедуры происходит создание группы NEWGROUP ИЗ разности групп GROUP 1
и GROUP 2
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Упражнение 8:
Номер 1
В какой процедуре полученная группа содержит все процессы группы GROUP 1
, входящие также в группу GROUP2
и упорядоченные, как в первой группе
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Номер 2
В какой процедуре полученная группа содержит все процессы группы GROUP l
в прежнем порядке, за которыми следуют процессы группы GROUP 2
, не вошедшие в группу GROUP 1
, также в прежнем порядке
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Номер 3
В какой процедуре полученная группа содержит все элементы группы GROUP 1
, не входящие в группу GROUP 2
и упорядоченные, как в первой группе
Ответ:
 (1)
MPI_GROUP_INTERSECTION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (2)
MPI_GROUP_UNION(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
 (3)
MPI_GROUP_DIFFERENCE(GROUP1, GROUP2, NEWGROUP, IERR)
INTEGER GROUP1, GROUP2, NEWGROUP, IERR
 
Упражнение 9:
Номер 1
С помощью какой процедуры можно сравнить группы GROUP1
и GROUP2
Ответ:
 (1)
MPI_GROUP_SIZE(GROUP, SIZE, IERR)
INTEGER GROUP, SIZE, IERR
 
 (2)
MPI_GROUP_RANK(GROUP, RANK, IERR)
INTEGER GROUP, RANK, IERR
 
 (3)
МРI_GROUP_COMPARE(GROUP1, GROUP2, RESULT, IERR)
INTEGER GROUP1, GROUP2, RESULT, IERR
 
Номер 2
Если группы GROUP1
и GROUP2
полностью совпадают, то какое значение возвращается
МРI_GROUP_COMPARE(GROUP1, GROUP2, RESULT, IERR)
INTEGER GROUP1, GROUP2, RESULT, IERR
Ответ:
 (1) MPI_IDENT
 
 (2) MPI_SIMILAR
 
 (3) MPI_UNEQUAL
 
Номер 3
Если группы GROUP1
и GROUP2
отличаются рангами процессов, то какое значение возвращается
МРI_GROUP_COMPARE(GROUP1, GROUP2, RESULT, IERR)
INTEGER GROUP1, GROUP2, RESULT, IERR
Ответ:
 (1) MPI_IDENT
 
 (2) MPI_SIMILAR
 
 (3) MPI_UNEQUAL
 
Упражнение 10:
Номер 1
После выполнения данной процедуры какое значение принимает переменная GROUP
МРI_GROUP_FREE(GROUP, IERR)
INTEGER GROUP, IERR
Ответ:
 (1) MPI_GROUP_EMPTY
 
 (2) MPI_GROUP_NULL
 
 (3) MPI_COMM_WORLD
 
Номер 2
Какие коммуникаторы создаются сразу после вызова процедуры MPI_INIT
Ответ:
 (1) MPI_COMM_WORLD
 
 (2) MPI_COMM_NULL
 
 (3) MPI_COMM_SELF
 
Номер 3
Создание коммуникатора является
Ответ:
 (1) индивидуальной операцией 
 (2) коллективной операцией 
 (3) смешанной операцией 
Упражнение 11:
Номер 1
Какой коммуникатор объединяет все процессы приложения
Ответ:
 (1) MPI_COMM_WORLD
 
 (2) MPI_COMM_NULL
 
 (3) MPI_COMM_SELF
 
Номер 2
Какое значение используется для ошибочного коммуникатора
Ответ:
 (1) MPI_COMM_WORLD
 
 (2) MPI_COMM_NULL
 
 (3) MPI_COMM_SELF
 
Номер 3
Какой коммуникатор включает только вызвавшие процессы
Ответ:
 (1) MPI_COMM_WORLD
 
 (2) MPI_COMM_NULL
 
 (3) MPI_COMM_SELF
 
Упражнение 12:
Номер 1
С помощью какой процедуры возможно Создание нового коммуникатора NEWCOMM
с той же группой процессов и атрибутами, что и у коммуникатора сомм
Ответ:
 (1)
МРI_GROUP_FREE(GROUP, IERR)
INTEGER GROUP, IERR
 
 (2)
MPI_COMM_CREATE(COMM, GROUP, NEWCOMM, IERR)
INTEGER COMM, GROUP, NEWCOMM, IERR
 
 (3)
MPI_COMM_DUP(COMM, NEWCOMM, IERR)
INTEGER COMM, NEWCOMM, IERR
 
Номер 2
С помощью какой процедуры возможно создание нового коммуникатора NEWCOMM
Ответ:
 (1)
МРI_GROUP_FREE(GROUP, NEWCOMM, IERR)
INTEGER GROUP, NEWCOMM, IERR
 
 (2)
MPI_COMM_CREATE(COMM, GROUP, NEWCOMM, IERR)
INTEGER COMM, GROUP, NEWCOMM, IERR
 
 (3)
MPI_COMM_DUP(COMM, NEWCOMM, IERR)
INTEGER COMM, NEWCOMM, IERR
 
Номер 3
Какую процедуру можно использовать для перенумерации процессов
Ответ:
 (1) MPI_COMM_FREE
 
 (2) MPI_COMM_SPLIT
 
 (3) MPI_COMM_NULL