Программирование с использованием технологии OpenMP
OpenMP
Меню сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Поиск

Друзья сайта

Приветствую Вас, Гость · RSS 02.08.2025, 18:33

OpenMP является открытым стандартом для распараллеливания программ на языках Си, Си++ и Фортран. В стандарт OpenMP входят спецификации набора директив компилятора, процедур и переменных среды.

Преимущества OpenMP

1. За счет идеи "инкрементального распараллеливания" OpenMP идеально подходит для разработчиков, желающих быстро распараллелить свои вычислительные программы с большими параллельными циклами. Разработчик не создает новую параллельную программу, а просто последовательно добавляет в текст последовательной программы OpenMP-директивы.
2. При этом, OpenMP - достаточно гибкий механизм, предоставляющий разработчику большие возможности контроля над поведением параллельного приложения.
3. Предполагается, что OpenMP-программа на однопроцессорной платформе может быть использована в качестве последовательной программы, т.е. нет необходимости поддерживать последовательную и параллельную версии. Директивы OpenMP просто игнорируются последовательным компилятором, а для вызова процедур OpenMP могут быть подставлены заглушки (stubs), текст которых приведен в спецификациях.
4. Одним из достоинств OpenMP его разработчики считают поддержку так называемых "orphan" (оторванных) директив, то есть директивы синхронизации и распределения работы могут не входить непосредственно в лексический контекст параллельной области.

OpenMP поддерживается такими современными компиляторами


  • Компиляторы Sun Studio поддерживают официальную спецификаци — OpenMP 2.5  — с улучшенной производительностью под ОС Solaris; поддержка Linux запланирована на следующий релиз.
  • Visual C++ 2005 и выше поддерживает OpenMP в редакциях Professional и Team System.
  • GCC 4.2 поддерживает OpenMP, а некоторые дистрибутивы (такие как Fedora Cors 5 gcc) включили поддержку в свои версии GCC 4.1.
  • Intel C++ Compiler, включая версию Intel Cluster OpenMP для программирования в системах с распределённой памятью.
  • IBM XL compiler
  • PGI (Portland group)
  • Pathscale
  • HP
Дополнительную информацию по OpenMPможно посмотреть в следующих материалах сети:

1. Антонов А.С. Параллельное программирование с использованием технологии OpenMP
http://parallel.ru/info/parallel/openmp/
 
2. Левин М.П. Параллельное программирование с использованием OpenMP
http://www.intuit.ru/department/se/openmp/

3. OpenMP спецификация API для параллельного программирования (англ.)
http://openmp.org/wp/

4. Эфективное программирование
http://openmp.ru/

5. Кратко о технологии OpenMP
http://software.intel.com/ru-ru/articles/About-OpenMP/

6. About OpenMP (англ.)
https://computing.llnl.gov/tutorials/openMP/

7. Учебные материалы, касающиеся параллельных вычислений и супер-ЭВМ
http://parallel.ru/info/education/

8. Технология
OpenMP
http://www.viva64.com/ru/a/0057/
Copyright MyCorp © 2025
Бесплатный хостинг uCoz