Параллельное программирование. Лекция 9b. Введение в технологию OpenMP

69 Просмотры
Издатель
Институт математики, механики и компьютерных наук им.И.И.Воровича ЮФУ http://mmcs.sfedu.ru. Лекции по параллельному программированию читает доцент кафедры алгебры и дискретной математики М.Э.Абрамян.
В лекциях используется электронный задачник по программированию Programming Taskbook http://ptaskbook.com

В лекции использована презентация А.С.Антонова "Технология программирования OpenMP" (Летняя суперкомпьютерная академия, Москва, 2017 г.). Презентация включена в данное видео с любезного разрешения автора.
Дополнительные материалы доступны по ссылке http://edu.mmcs.sfedu.ru/course/view.php?id=74


Содержание: 00:00 Опция reduction. Доступные операции редукции. Схема выполнения операции редукции. 06:23 Пример программы с последовательной и параллельной областью. Возможные проблемы при одновременном выводе данных в консольное окно из различных нитей и способы их решения. 13:09 Пример, иллюстрирующий применение операции редукции. 17:48 Комбинированные директивы OpenMP. Способы задания количества нитей: по умолчанию, функцией omp_set_num_threads, опцией num_threads. Пример применения этих способов. 21:35 Функции omp_get_num_procs и omp_get_num_threads, пример применения этих функций. Функция omp_get_max_threads. Настройка вложенных параллельных областей. Функция omp_in_parallel. 30:27 Директива single: однократное выполнение фрагмента кода в параллельной области. Опция nowait. Пример использования директивы single. Директива master. 40:15 Низкоуровневое управление нитями с использованием функций omp_get_thread_num и omp_get_num_threads. Пример, иллюстрирующий применение этих функций, а также опций private и firstprivate.
Категория
Занимательная механика
Комментариев нет.