Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

все

.doc
Скачиваний:
299
Добавлен:
05.03.2016
Размер:
6.35 Mб
Скачать

Розмір блока ітерацій зменшується експоненціально до величини m

Вибирається під час виконання

Запитання 125: Множина варіантів

Опція GUIDED,m команди SCHEDULE

Визначає статичний спосіб розподілу ітерацій по потоках, блоками по m ітерацій

Визначає динамічний спосіб розподілу ітерацій по потоках, блоками по m ітерацій

Розмір блока ітерацій зменшується експоненціально до величини m

Вибирається під час виконання

Запитання 126: Відповідність (графічне)

Поставте у відповідність опції команди SCHEDULE

A. STATIC,m

B. DYNAMIC,m

C. GUIDED

D. RUNTIME

A. Визначає статичний спосіб розподілу ітерацій по потоках, блоками по m ітерацій

B. Визначає динамічний спосіб розподілу ітерацій по потоках, блоками по m ітерацій

C. Розмір блока ітерацій зменшується експоненціально до величини m

D. Вибирається під час виконання

Запитання 127: Множина варіантів

Директива MASTER ... END MASTER:

Визначає блок коду що буде виконаний тільки потоком – майстром

Визначає блок коду що буде виконаний тільки нульовим потоком

Визначає точку в якій реалізація має забезпечувати одинаків вигляд пам’яті

Визначає блок який має виконуватися, у відповідності з порядком ітерацій послідовного циклу

Запитання 128: Множинна відповідь

Що із нижче наведеного відноситься до директив синхронізації

MASTER ... END MASTER

CRITICAL ... END CRITICAL

ATOMIC

SECTIONS ... END SECTIONS

Запитання 129: Множинна відповідь

Що із нижче наведеного не відноситься до директив синхронізації

SINGLE ... END SINGLE

SECTIONS ... END SECTIONS

MASTER ... END MASTER

CRITICAL ... END CRITICAL

Запитання 130: Множинна відповідь

Що з нижче наведеного є класами змінних?

SHARED

COPYIN

SCHEDULЕ

DYNAMIC

Запитання 131: Множинна відповідь

Що з нижче наведеного є змінними середовища:

SHARED

COPYIN

OMP_SCHEDULЕ

OPM_DYNAMIC

Запитання 132: Відповідність (графічне)

Поставте у відповідність

A. OMP_SCHEDULE

B. OMP_NUM_THREADS

C. OMP_DYNAMIC

D. OMP_NESTED

A. Визначає спосіб розподілу ітерацій в циклі

B. Визначає число потоків для використання паралельних областей програми

C. Дозволяє/Забороняє динамічну зміну числа потоків

D. Дозволяє/забороняє вкладений паралелізм

Запитання 133: Множинна відповідь

Що із нижче наведеного є процедурами контролю параметрів середовища виконання

OMP_SET_NUM_THREADS

OMP_GET_NUM_PROCS

OMP_SET_LOCK

OMP_UNSET_LOCK

Запитання 134: Множинна відповідь

Що із нижче наведеного не є процедурами контролю параметрів середовища виконання?

OMP_GET_NESTED

OMP_GET_MAX_THREADS

OMP_NUM_THREADS

OMP_NESTED

Запитання 135: Відповідність (графічне)

Поставте у відповідність

A. OMP_SET_NUM_THREADS

B. OMP_GET_MAX_THREADS

C. OMP_GET_NUM_THREADS

D. OMP_GET_NUM_PROCS

A. Дозволяє встановити максимальне число потоків для використання в паралельній області

B. Повертає максимальне число потоків

C. Повертає фактичне число потоків в паралельній області програми

D. Повертає число процесорів що доступні додатку

Запитання 136: Відповідність (графічне)

Поставте у відповідність

A. OMP_IN_PARALLEL

B. OMP_SET_DYNAMIC

C. OMP_GET_NESTED

A. Повертає TRUE якщо викликана з паралельної області програми

B. Встановлює стан прапорця, що дозволяє динамічно змінювати число потоків

C. Запитує стан прапорця, що дозволяє вкладений паралелізм

Запитання 137: Множинна відповідь

Які ви знаєте процедури на базі замків?

OMP_SET_LOCK

OMP_INIT_LOCK

OMP_TEST_LOCK

OMP_RESET_LOCK

Запитання 138: Множинна відповідь

Що з нижче наведеного не відноситься до процедур на базі замків

OMP_SET_LOCK

OMP_INIT_LOCK

OMP_SETEST_LOCK

OMP_RESET_LOCK

Запитання 139: Множина варіантів

Процедура OMP_TEST_LOCK:

Здійснює спробу захвату вказаного замка якщо це в неї не виходить то повертає значення False.

змушує дочекатися звільнення замка, а потім захопити його

Тестує швидкість блокування замка

Тестує швидкість розблокування замка

Запитання 140: Відповідність (графічне)

Встановіть відповідність

A. OMP_INIT_LOCK

B. OMP_SET_LOCK

C. OMP_UNSET_LOCK

D. OMP_TEST_LOCK

A. Ініціалізує замок

B. змушує дочекатися звільнення замка, а потім захопити його

C. Звільнює замок якщо він був захоплений потоком

D. Здійснює спробу захвату вказаного замка якщо це в неї не виходить то повертає значення False.

Запитання 141: Множинна відповідь

Які моделі паралельного програмування реалізовані в стандарті OpenMP?

SPMD (Single Program Multiple Data)

MPMD (Multiple Program Multiple Data)

Передача повідомлень

Спільна пам’ять

Паралелізм "fork-join"

Запитання 142: Множинна відповідь

Для яких мов програмування штатно призначений стандарт OpenMP?

C

C++

FORTRAN

Pascal

Object Pascal (Delphi)

Java

Запитання 143: Множина варіантів

Відзначте вірні твердження

Якщо середовище програмування не налаштоване для підтримки стандарту OpenMP, то це не впливає на можливість запуску програми, що використовує даний стандарт.

Якщо середовище програмування не налаштоване для підтримки стандарту OpenMP, то запуск програми, що використовує даний стандарт, неможливий через помилки часу виконання програми.

Якщо середовище програмування не налаштоване для підтримки стандарту OpenMP, то це не впливає на можливість запуску програми, що використовує даний стандарт.

Запитання 144: Множина варіантів

 Дано фрагмент OpenMP – програми

void main()

{

  int a,b,c,d;

#pragma omp parallel

   private (c) shared (d,e)

{

  int e,f;

...

}

}

Вкажіть всі змінні, що являються спільними

a,b,c,d

e,f

a,b,d,e

a,b,d

c,e,f

Запитання 145: Множина варіантів

    Дано фрагмент OpenMP – програми

void main()

{

  int a,b,c,d;

#pragma omp parallel

   private (c) shared (d,e)

{

  int e,f;

  …

}

  …

}

Вкажіть всі змінні, що являються приватними

a,b,d

c,e,f

c,f

c,d

Запитання 146: Множина варіантів

 Дана OpenMP-програма:

#include "omp.h"

#include <stdio.h>

void main()

{

  int r;

#pragma omp parallel

{

  r=omp_get_thread_num();

  printf("%d\n", r);

}

}

Що буде видано на екран в результаті роботи даної програми?

Числа 0, 1, …, N-1 без повторень, де N – кількість створюваних потоків

Одне число із діапазону 0, 1, …, N-1, де N – кількість створюваних потоків.

Числа (що можливо, повторюються) із діапазону 0, 1, …, N-1, де N – кількість створюваних потоків.

Запитання 147: Множина варіантів

1)       Дана OpenMP-програма:

#include "omp.h"

#include <stdio.h>

void main()

{

  int r;

#pragma omp parallel private(r)

{

  r=omp_get_thread_num();

  printf("%d\n", r);

}

}

Що буде видано на екран в результаті роботи даної програми?

Числа 0, 1, …, N-1 без повторень, де N – кількість створюваних потоків

Одне число із діапазону 0, 1, …, N-1, де N – кількість створюваних потоків.

Числа (що можливо, повторюються) із діапазону 0, 1, …, N-1, де N – кількість створюваних потоків.

Запитання 148: Множинна відповідь

    Даний фрагмент OpenMP-програми:

#pragma omp директива

{

  оператори

}

Вкажіть всі директиви, що створюють паралельну ділянку.

Master

parallel

single

parallel sections

Запитання 149: Множина варіантів

   Даний фрагмент OpenMP-програми:

#pragma omp директива

{

  оператори

}

 

Вкажіть директиви, з якими оператори паралельної ділянки не будуть виконуватися одночасно двома або більше потоками.

Barrier

Master

Critical

Single

Запитання 150: Множинна відповідь

  Даний фрагмент OpenMP-програми:

#pragma omp директива

{

  оператори

}

 

Вкажіть директиви, з якими оператори паралельної ділянки  будуть виконуватися тільки одним потоком.

Barrier

Master

Critical

Single

Запитання 151: Множинна відповідь

Кількість потоків в паралельній програмі визначається:

значенням OMP_NUM_THREADS

спеціальними функціями викликаними всередині програми

автоматично

кількістю ядер системи

Запитання 152: Множина варіантів

Який номер має головний потік(OpenMP)

0

1

2

той який задасть йому користувач

Запитання 153: Множина варіантів

З якого значення починається відлік звичайних (не головних) потоків

0

1

2

З того значення яке задасть користувач

Запитання 154: Множина варіантів

   Дана OpenMP програма:

#pragma omp parallel

{

      myid = omp_get_thread_num ( ) ;

     if (myid == 0)

         do_something ( ) ;

      else

         do_something_else (myid) ;

}

                Що повертає функція omp_get_thread_num

Повертає номер паралельного потоку

Повертає номер паралельного потоку

Повертає унікально присвоєний користувачем ідентифікатор

Повертає вміст паралельних потоків

Запитання 155: Множинна відповідь

   Дана OpenMP програма:

#pragma omp parallel

{

      myid = omp_get_thread_num ( ) ;

     if (myid == 0)

         do_something ( ) ;

      else

         do_something_else (myid) ;

}

В залежності від значення myid викликається:

Функція do_something() першому паралельному потоці з номером 0

Функція do_something_else(myid)у всіх інших паралельних потоках

Функція do_something_else(myid) першому паралельному потоці з номером 0

Функція do_something() у всіх інших паралельних потоках

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]