Главная /
Параллельное программирование с OpenMP /
Выберите наилучшую стратегию распределения витков цикла между нитями, которая для следующего фрагмента программы даст минимальное время выполнения: #include <omp.h> #include <unistd.h> #define msec 1000 int main (void){ omp_set_num_threads (8)
Выберите наилучшую стратегию распределения витков цикла между нитями, которая для следующего фрагмента программы даст минимальное время выполнения:
#include <omp.h>
#include <unistd.h>
#define msec 1000
int main (void){
omp_set_num_threads (8);
#pragma omp parallel
{
#pragma omp for schedule (runtime)
for(int i=0; i<100;i++) {
sleep (i*msec);
}
}
}
вопрос
Правильный ответ:
export OMP_SCHEDULE=”static”
export OMP_SCHEDULE=”static,10”
export OMP_SCHEDULE=”dynamic”
Сложность вопроса
83
Сложность курса: Параллельное программирование с OpenMP
28
Оценить вопрос
Комментарии:
Аноним
Спасибо за помощь по интуит.
15 окт 2016
Аноним
Экзамен сдан и ладушки.
20 авг 2016
Аноним
Зачёт прошёл. Лечу кутить отмечать экзамен интуит
14 авг 2016
Другие ответы на вопросы из темы программирование интуит.
- # Найдите ошибку в следующем фрагменте программы: int i, j; #pragma omp parallel default(shared) { #pragma omp for collapse (2) for (i=0; i<n; i++) { for (j=0; j < i; j++) work(i, j); } }
- # Найдите ошибку в следующем фрагменте программы: #define N 10 int i; #pragma omp parallel { #pragma omp for firstprivate(i) lastprivate(i) for (i=0; i<N; i++) { … } #pragma omp single printf (“Number of iteration=%d\n”, i); }
- # Найдите ошибку в следующем фрагменте программы: int main (void){ int a, i; #pragma omp parallel shared(a) private(i) { #pragma omp master a = 0; #pragma omp for reduction(+:a) for (i = 0; i < 10; i++) { a += i; } } }
- # Поиск ошибок в OpenMP-программе, выполняемый Sun Thread Analyzer, основан на:
- # Выберите наиболее походящую оптимизацию, которая позволит сократить время выполнения следующего фрагмента программы: #include <omp.h> #include <unistd.h> #define msec 1000 int main (void){ omp_set_num_threads (8); for (int i=0; i<80; i++) #pragma omp parallel for for (int j=0; j<80; j++) sleep (msec); }