Описание тега openmp
OpenMP - это кроссплатформенный многопоточный API, который позволяет выполнять детальное распараллеливание и синхронизацию задач с помощью специальных директив компилятора. OpenMP предлагает легкий доступ к многопоточности, не требуя знания системных деталей. В то же время он достаточно эффективен по сравнению с отлаженными реализациями с тем преимуществом, что проще всего писать многопоточный код. Форумы и полная информация по OpenMP находится на http://openmp.org/
OpenMP основан на многопоточной модели и предлагает параллелизм с общей памятью и гетерогенное программирование для сопроцессоров с помощью директив компилятора, библиотечных процедур и переменных среды. Он ограничен приложениями C/C++ и Fortran, однако обеспечивает переносимость между различными архитектурами общей памяти.
Именно с помощью директив, добавляемых программистом в код, компилятор добавляет параллелизм в приложение. OpenMP можно использовать на одно- или многоядерных машинах, в первой архитектуре директивы компилятора игнорируются, поэтому приложение выполняется последовательно, что способствует переносимости между двумя архитектурами.
Последняя версия 5.0 (ноябрь 2019 г.): официальные спецификации OpenMP.
Полное руководство по книге
- Использование OpenMP: параллельное программирование переносимой общей памяти - Барбара Чапман и др.
- Использование OpenMP - следующий шаг: Affinity, ускорители, задачи и SIMD - Ruud van der Pas et al.
- Параллельное программирование в OpenMP - Рохит Чандра.
- Введение в параллельное программирование - Питер Пачеко.
- Параллельное программирование на C с использованием MPI и OpenMP - Майкл Дж. Куинн.
Полезные ссылки