все
.docЗапитання 94: Множинна відповідь
Коефіцієнт захоплення замка:
![]()
По
замовчуванню встановлюється в 0
![]()
При
кожному наступному захваті інкрементується
![]()
При
кожному наступному звільненні
декркментується
![]()
По
замовчуванню встановлюється в 1
Запитання 95: Множина варіантів
Коли коефіцієнт захопленості множинного замка дорівнює «0» то він вважається:
![]()
розблокованим
![]()
заблокованим
![]()
простим
![]()
невизначеним
Запитання 96: Множина варіантів
Для ініціалізації простого замка використовують функцію
![]()
omp_init_lock()
![]()
omp_init_nest_lock()
![]()
omp_init_nest_locking()
![]()
omp_init_locking()
Запитання 97: Множина варіантів
Для ініціалізації множинного замка використовують функцію
![]()
omp_init_lock()
![]()
omp_init_nest_lock()
![]()
omp_init_nest_locking()
![]()
omp_init_locking()
Запитання 98: Множина варіантів
Функція omp_destroy_lock() використовується для :
![]()
Переведення
простого замка в не ініціалізований
стан
![]()
Переведення
множинного замка в не ініціалізований
стан
![]()
Видалення
простого замка
![]()
Видалення
множинного замка
Запитання 99: Множина варіантів
Функція omp_destroy_nest_lock() використовується для:
![]()
Переведення
простого замка в не ініціалізований
стан
![]()
Переведення
множинного замка в не ініціалізований
стан
![]()
Видалення
простого замка
![]()
Видалення
множинного замка
Запитання 100: Множинна відповідь
Для захоплення простого та множинного замків використовуються функції :
![]()
omp_set_lock()
![]()
omp_set_nest_lock()
![]()
omp_select_nest_lock()
![]()
omp_select_lock()
Запитання 101: Множинна відповідь
Для звільнення замка використовуються функції
![]()
omp_unset_lock()
![]()
omp_reset_lock()
![]()
omp_unset_nest_lock()
![]()
omp_reset_nest_lock()
Запитання 102: Множина варіантів
Для чого призначена директива flush
![]()
Для
гарантування того, що всі потоки будуть
бачити єдиний образ пам’яті
![]()
Для
синхронізації ділянок пам’яті
![]()
Для
резервування пам’яті під певний потік
![]()
Для
нумерування ділянок пам’яті
Запитання 103: Множинна відповідь
Виконання директиви #pragma omp flush передбачає що:
![]()
Значення
змінних які тимчасово зберігаються в
регістрах будуть перенесенні в основну
пам’ять
![]()
Значення
змінних які тимчасово зберігаються в
кеш- пам’яті будуть перенесенні в
основну пам’ять
![]()
Всі
зміни зроблені потоком під час роботи
відобразяться
![]()
Всі
зміни зроблені потоком під час роботи
будуть приховані
Запитання 104: Множина варіантів
Змінна OMP_MAX_ACTIVE_LEVELS:
![]()
Задає
максимально допустиму кількість
вкладених паралельних областей
![]()
Задає
максимально допустиму кількість потоків
![]()
Задає
максимальне значення паралельних
потоків
![]()
Задає
максимальне значення послідовних
потоків
Запитання 105: Множина варіантів
Функція omp_get_level():
![]()
Видає,
для потоку що її викликав, кількість
вкладених паралельних областей в
заданому місці коду
![]()
Видає,
для потоку що її викликав, кількість
вкладених паралельних областей у всій
програмі
![]()
Видає,
для всіх потоків, кількість вкладених
паралельних областей в заданому місці
коду
![]()
Видає,
для всіх потоків, кількість вкладених
паралельних областей у всій програмі
Запитання 106: Множина варіантів
Функція omp_get_ancestor_thread_num():
![]()
Повертає,
для рівня вкладеності паралельних
областей, номер потоку що створив даний
потік
![]()
Повертає,
для рівня вкладеності послідовних
областей, номер потоку що створив даний
потік
![]()
Видає,
для потоку що її викликав, кількість
вкладених паралельних областей в
заданому місці
![]()
Видає,
для потоку що її викликав, кількість
вкладених паралельних областей у всій
програмі
Запитання 107: Множина варіантів
Функція omp_get_team_size:
![]()
Повертає
для заданого рівня вкладеності паралельних
областей кількість потоків створених
одним батьківським потоком
![]()
Повертає
для заданого рівня вкладеності послідовних
областей кількість потоків створених
одним батьківським потоком
![]()
Повертає,
для рівня вкладеності паралельних
областей, номер потоку що створив даний
потік
![]()
Повертає,
для рівня вкладеності послідовних
областей, номер потоку що створив даний
потік
Запитання 108: Множина варіантів
Змінна середовища OMP_THREAD_LIMIT
![]()
Задає
максимальне число потоків, що допускається
в програмі
![]()
Задає
поведінку процесів, що знаходяться в
стані очікування
![]()
Задає
мінімальне число потоків, що допускається
в програмі
![]()
Вказує,
що число потоків є лімітоване
Запитання 109: Множина варіантів
Змінна середовища OMP_WAIT_POLICY
![]()
Задає
максимальне число потоків, що допускається
в програмі
![]()
Задає
поведінку процесів, що знаходяться в
стані очікування
![]()
Задає
мінімальне число потоків, що допускається
в програмі
![]()
Вказує,
що число потоків є лімітоване
Запитання 110: Множина варіантів
Як оптимально використати багатоядерну платформу
![]()
Створювати
один потік на одне ядро
![]()
Створювати
не більше 10 потоків на один процесор
![]()
Створювати
по два потоки на одне ядро
![]()
Створювати
як найбільше потоків на одне ядро
Запитання 111: Множина варіантів
Чи можливо створення багатьох процесів на одноядерному процесорі?
![]()
Так
можливо, потоки будуть працювати в різні
проміжки часу
![]()
Так
можливо, потоки будуть працювати
одночасно
![]()
Ні
неможливо забезпечити роботу процесів
в різні моменти часу
![]()
Не
можливо в будь якому випадку
Запитання 112: Множина варіантів
Багаторазове створення та знищення потоків в OpenMP-
![]()
збільшує
час роботи програми
![]()
зменшує
час роботи
![]()
є
найкращим методом розробки ефективної
програми
![]()
ніяк
не впливає на роботу програми
Запитання 113: Множина варіантів
Найбільш поширеним видом розпаралелення програми за допомогою OpenMP є-
![]()
Розпаралелення
цилів
![]()
Розпаралелення
виведення
![]()
Розпаралелення
введення
![]()
Розпаралелення
всіє ї програми
Запитання 114: Множина варіантів
Обмін даними в OpenMP проходить через:
![]()
Спільні
змінні
![]()
Локальні
змінні
![]()
Захищені
змінні
![]()
Всі
відповіді вірні
Запитання 115: Множина варіантів
Відключення синхронізації
![]()
Уповільнює
роботу програми
![]()
Пришвидшує
роботу програми
![]()
Унеможливлює
роботу програми
![]()
Не
впливає на роботу програми
Запитання 116: Множинна відповідь
При інкрементальному розпаралелюванні:
![]()
Можна
швидко отримати паралельний варіант
програми
![]()
Немає
необхідності розпаралелювання всієї
програми
![]()
Потрібно
розпаралелювати всю програму
![]()
Ускладнюється
процес програмування та відлагодження
Запитання 117: Множинна відповідь
Програма створена з використанням технології OpenMP:
![]()
Може
бути використана в якості послідовної
програми
![]()
Не
може бути використана в якості послідовної
програми
![]()
Єнеобхідність
підтримки послідовної прогарми
![]()
Немає
необхідності підтримки послідовної
прогарми
Запитання 118: Множина варіантів
Що робить послідовний компілятор з директивами OpenMP?
![]()
Ігнорує
їх
![]()
Виконує
їх
![]()
Видає
помилку
![]()
Перетворює
в послідовні
Запитання 119: Множина варіантів
Чи може OpenMP використовуватися разом з іншими технологіями паралельного програмування?
![]()
Може
використовуватися тільки з MPI
![]()
Не
може використовуватися тільки з MPI
![]()
Може
використовуватися з MPI та іншими
![]()
Не
може використовуватися
Запитання 120: Множина варіантів
Що робить дана програма:
#include <stdio.h>
double f(double y) {return(4.0/(1.0+y*y));}
int main()
{
double w, x, sum, pi;
int i;
int n = 1000000;
w = 1.0/n;
sum = 0.0;
#pragma omp parallel for private(x) shared(w)\
reduction(+:sum)
for(i=0; i < n; i++)
{
x = w*(i-0.5);
sum = sum + f(x);
}
pi = w*sum;
printf("pi = %f\n", pi);
}
![]()
Реалізує
обчислення числа рі з використанням
технології OpenMp
![]()
Реалізує
обчислення числа рі з використанням
технологій MPI
![]()
Реалізує
обчислення числа рі ,без використання
паралельних технологій програмування
![]()
Дана
програма не коректна
Запитання 121: Множина варіантів
Команда SCHEDULE визначає :
![]()
Визначає
спосіб розподілу ітерацій по потоках
![]()
Визначає
кількість потоків
![]()
Підраховує
всі потоки
![]()
Видаляє
неактивні потоки
Запитання 122: Множина варіантів
Опція STATIC,m команди SCHEDULE:
![]()
Визначає
статичний спосіб розподілу ітерацій
по потоках, блоками по m ітерацій
![]()
Визначає
динамічний спосіб розподілу ітерацій
по потоках, блоками по m ітерацій
![]()
Розмір
блока ітерацій зменшується експоненціально
до величини m
![]()
Вибирається
під час виконання
Запитання 123: Множина варіантів
Опція DYNAMIC,m команди SCHEDULE:
![]()
Визначає
статичний спосіб розподілу ітерацій
по потоках, блоками по m ітерацій
![]()
Визначає
динамічний спосіб розподілу ітерацій
по потоках, блоками по m ітерацій
![]()
Розмір
блока ітерацій зменшується експоненціально
до величини m
![]()
Вибирається
під час виконання
Запитання 124: Множина варіантів
Опція RUNTIME команди SCHEDULE
![]()
Визначає
статичний спосіб розподілу ітерацій
по потоках, блоками по m ітерацій
![]()
Визначає
динамічний спосіб розподілу ітерацій
по потоках, блоками по m ітерацій
