Главная /
Параллельное программирование с OpenMP /
Найдите ошибку в следующем фрагменте программы: #define N 10 int icount; #pragma omp threadprivate(icount) #pragma omp parallel { #pragma omp for for (icount=0; icount<N; icount++) { … } }
Найдите ошибку в следующем фрагменте программы:
#define N 10
int icount;
#pragma omp threadprivate(icount)
#pragma omp parallel
{
#pragma omp for
for (icount=0; icount<N; icount++) {
…
}
}
вопрос
Правильный ответ:
только статические переменные могут быть указаны в директиве
threadprivate (static int icount)
в качестве индексной переменной цикла, распределяемого между нитями при помощи директивы
for
, не могут использоваться переменные, указанные в директиве threadprivate
в данном фрагменте программы ошибки нет
Сложность вопроса
70
Сложность курса: Параллельное программирование с OpenMP
28
Оценить вопрос
Комментарии:
Аноним
Я преподаватель! Немедленно заблокируйте сайт vtone.ru с ответами с интуит. Пожалуйста
27 июн 2020
Аноним
Зачёт сдан. Мчусь кутить отмечать экзамен интуит
16 апр 2016
Другие ответы на вопросы из темы программирование интуит.
- # При реализации компилятором редукционного оператора, описанного при помощи клаузы reduction (-: sub), где переменная sub имеет тип integer, для каждой нити создается локальная копия переменной sub, начальное значение которой будет инициализировано:
- # Найдите ошибку в следующем фрагменте программы: #pragma omp parallel default(shared) { int i, j; #pragma omp for for (i=0; i<n; i++) { #pragma omp parallel private (i,n) { #pragma omp for for (j=0; j<n; j++) work(i, j); } } }
- # Найдите ошибку в следующем фрагменте программы: #define N 10 int A[N], sum; #pragma omp parallel default(shared) num_threads(10) { int iam=omp_get_thread_num(); #pragma omp critical (update_a) #pragma omp critical (update_a) sum +=A[iam]; }
- # Выберите наиболее походящую оптимизацию, которая позволит сократить время выполнения следующего фрагмента программы: #include <omp.h> #include <unistd.h> #define msec 1000 int main (void){ int i; omp_set_num_threads (8); #pragma omp parallel for for (i=0; i<80; i++) sleep (msec); #pragma omp parallel for for (i=0; i<80; i++) sleep (msec); }
- # Директива SHARABLE в технологии Intel Cluster OpenMP: