Читаем Журнал «Компьютерра» №44 от 29 ноября 2005 года полностью

OpenMP идеально портируется. Он не привязывается к особенностям операционной системы и позволяет создавать переносимые приложения, использующие потоки и объекты синхронизации. Вдобавок большинство OpenMP-директив являются (в терминологии С/C++) «прагмами» (#pragma), а потому попросту игнорируются не понимающим их компилятором[Кстати, программисты, учтите: поддержку OpenMP зачастую требуется явно включать ключом в компиляторе! И еще: далеко не все возможности OpenMP сводятся к прагмам], который генерирует из OpenMP-программ вполне корректные, хотя и однопоточные приложения.

OpenMP позволяет работать на нескольких уровнях - либо задавать низкоуровневые объекты вручную, либо указывать, какие переменные являются «общими» и требуют синхронизации, передоверяя собственно синхронизацию компилятору. Благодаря OpenMP программист может вручную определять в коде программы атомные операции.

На мой взгляд, этих качеств более чем достаточно, чтобы OpenMP стал таким же стандартом для параллельного программирования, которым является C/C++ для программирования обычного.

Недостатков у OpenMP два. Первый - только сейчас появляющаяся поддержка сообщества Open Source. Второй - относительно жесткая модель программирования, навязываемая программисту[К примеру, совсем не очевидно, как заставить OpenMP-программу работать в режиме «системы массового обслуживания», когда некий «главный» поток принимает поступающие извне задания (скажем, запрос к БД или обращение с веб-серверу) по отдельным потокам. А вручную подобная система делается элементарно].


OpenMP


В их основу положена идея использования специальных компиляторов («знающих» про параллельное программирование), для которых в коде программы расставляются специальные пометки-примечания, указывающие, что и где следует делать параллельно, а что - последовательно. Программист же пишет что-то вроде

# ВыполниЭтотУчастокКодаПараллельно

а компилятор пытается по его замечаниям сориентироваться. Скажем, встретив указание «разбей этот цикл по двум потокам» перед кодом, в котором перебором по всем объектам вычисляется физика и AI, компилятор пробует сгенерировать такой код, в котором будет действительно ровно два потока, каждый из них будет выполнять примерно половину общего объема работы. Язык замечаний в OpenMP развит хорошо, и на нем можно внятно растолковывать те или иные особенности исполнения данного участка программы, добиваясь нужного эффекта[OpenMP позволяет делать практически все то же самое, что доступно пользователю при работе непосредственно с операционной системой, и даже немного больше (вплоть до определения атомных операций над участками кода)]. А можно и не растолковывать, положившись целиком на компилятор - к начинающим OpenMP весьма либерален. Прибавьте сюда поддержку этого начинания корпорацией Intel, являющейся одним из ведущих производителей компиляторов для своих CPU, - и вам станет понятно, почему OpenMP превратился в стандарт де-факто, ожидающий утверждения в комитете по стандартизации ANSI.


***


Впрочем, я отвлекся. Обещал рассказать о проблемах параллельного программирования, а рассказываю про то, как все замечательно разрабатывается вместе с OpenMP. Так что дифирамбы ему выношу во врезку и возвращаюсь к нашим баранам.


Проблемы параллельного программирования


Перейти на страницу:

Все книги серии Компьютерра

Похожие книги

«Если», 2000 № 08
«Если», 2000 № 08

ФАНТАСТИКАЕжемесячный журналСодержание:Джеймс Типтри-младший. ДЕВОЧКА, КОТОРУЮ ПОДКЛЮЧИЛИ, рассказВернисаж*Вл. Гаков. ЧУЖАК В ЧУЖОЙ СТРАНЕ, статьяКир Булычёв. ЧЕГО ДУША ЖЕЛАЕТ, рассказВидеодром*Атлас--- Галина Компаниченко. НА РОДИНЕ РОБОТОВ, статья*Скандал сезона--- Вл. Гаков. «НО НЕ ЛЮБИМ МЫ ЕГО НЕ ЗА ЭТО…», статья*Рецензии*Экранизация--- Дмитрий Байкалов. СТРАННАЯ ИСТОРИЯ СО ЗНАМЕНИТЫМ РАССКАЗОМ, статьяБрайан Олдисс. ВИДИМОСТЬ ЖИЗНИ, рассказВладимир Хлумов. МОЛЧАНИЕ КОСМОСА, статьяАлександр Громов. ВЫЧИСЛИТЕЛЬ, повестьДжеймс Келли. КРОШКА-МОШКА-ПАУЧОК, рассказАлександр Ройфе. В ПОИСКАХ НОВОГО ИДЕАЛА, круглый столКонкурс «Альтернативная реальность»*Валерия Илющенко. НАКАЗАНИЕ ПЕРВОЙ СТЕПЕНИ, рассказВладимир Михайлов. ХОЖДЕНИЕ СКВОЗЬ ЭРЫ, окончание эссеРецензииКрупный план*Дмитрий Володихин. ИЛЛЮЗИЯ РЕАЛЬНОСТИ, статья2100: история будущего*Алексей Зарубин. НА ЧАРЕ ВСЕ СПОКОЙНО…, рассказКурсорPersonaliaНа обложке иллюстрация И. Тарачкова к повести Александра Громова «Вычислитель».Иллюстрации А. Филиппова, А. Жабинского, А. Балдина, И. Тарачкова, О. Дунаевой.

Александр Николаевич Громов , Валерия Валерьевна Илющенко , Владимир Гаков , Джеймс Типтри-младший , Журнал «Если»

Фантастика / Научная Фантастика / Журналы, газеты
«Если», 1998 № 06
«Если», 1998 № 06

Михаил ТЫРИН. ИСТУКАНЗнаете ли вы, что Циолковский все-таки построил космический корабль, а русские купцы торговали с инопланетянами еще в начале века? Если нет, то читайте новую фантастическую повесть калужского автора.Дэвид АЛЕКСАНДЕР, Хейфорд ПИРС. ПОСРЕДНИКОказывается, Посредник — весьма значительное лицо в галактике. И даже лишившись лицензии, он не перестает улаживать конфликты между расами и решать множество других сложных вопросов.Грегори БЕНФОРД. ПОГРУЖЕНИЕОтправляясь в отпуск, на лоно девственной африканской природы, супруги-ученые и не предполагает, какие леденящие душу события их ждут.ДОН УЭББ. ЧУЖАЯ ИГРАПохоже, что авантюристы, мошенники и охотники за кошельками богатых простаков не переведутся никогда и нигде, в том числе и на дальних планетах.Мэл ГИЛДЕН. ЧТО С ХЕРБИ?Такого разнообразия форм инопланетной жизни, как в этом забавном и трогательном рассказе, читатель наверняка еще не встречал.Эллен ГУОН. ДА УСЛЫШИТ НАС ГОСПОДЬ!Пересадочная станция на грани краха, но никто из специалистов не способен «договориться» с центральным компьютером…Филип ДЖЕННИНГС. ВИРТУАЛЬНАЯ КАБАЛАКак отличить реальность от вымысла? Порою это почти невозможно.Константин БЕЛОРУЧЕВ. ПРОГНОЗ? ИМИТАЦИЯ? ВЫМЫСЕЛ…Альтернативный подход к истории известен не только писателям-фантастам, но и самим историкам.Сергей ДЕРЯБИН. ВЫЗОВ ХАОСУМыслящие кристаллы, неорганическая жизнь — насколько это невероятно?Андрей ЧЕРТКОВ. РОМАН С КИБЕРПАНКОМЧитателей ждет «издательская исповедь» страстного поклонника киберпанка.Грегори БЕНФОРД. СВЕЖИЕ НОВОСТИ ИЗ ЦЕНТРА ГАЛАКТИКИИнтервью с корифеем НФ-жанра.КУРСОРЖизнь бьет ключом в мире фантастики — новости, слухи, события, планы…РЕЦЕНЗИИПрежде чем идти в книжный магазин, узнайте мнение рецензентов…Евгений ЛУКИН. «К САТИРЕ ОТНОШУСЬ С ПОДОЗРЕНИЕМ…»В рубрике «Прямой разговор» на вопросы читателей отвечает один из самых популярных отечественных фантастов.ПЕРСОНАЛИИУэбб, Гилден, Гу он и другие.ВЕРНИСАЖПредставляем автора обложки этого номера.ВИДЕОДРОМКлонирование человека: в жизни — пока фантастика, в кино — давно известный метод.Судьба книг Александра Беляева в кинематографе складывалась весьма драматически.Музыка, которая звучит с экрана, стала равноправным действующим лицом многих знаменитых картин.

Владимир Гаков , Грегори (Альберт) Бенфорд , Дмитрий Караваев , Константин Валерьевич Белоручев , Мел (Мэл) Гилден , Сергей Дерябин , Сергей Никифоров , Хэйфорд Пирс

Фантастика / Журналы, газеты / Научная Фантастика
«Если», 2004 № 03
«Если», 2004 № 03

ФАНТАСТИКАЕжемесячный журналСодержание:Э. К. Грант. ЧЕЛОВЕК, НЕНАВИДЕВШИЙ «КАДИЛЛАКИ», рассказОлег Овчинников. ОПЕРАТОРЫ ОДНОСТОРОННЕЙ СВЯЗИ, рассказМария Галина. ЮГО-ЗАПАДНАЯ ЖЕЛЕЗНАЯ ДОРОГА, рассказНФ-факты**Евгений Харитонов. ПЕРВАЯ ЛЕДИ ФАНТАСТИКИ (очерк)Кит Рид. ФОКУСНАЯ ГРУППА, рассказВидеодром**Мнение***** ВСТРЕЧАЙТЕ КОРОЛЯ, отзывы о фильме, стр. 67-73**Рецензии**ЭкранизацияВл. Гаков. ШТАММ «КРАЙТОН» (статья)Юлий Буркин. ЛЮБИТЬ ДРАКОНА, рассказРоберт Чейз. НЕВИДИМКИ, рассказТерри Пратчетт. СТРАТА, начало романаВернисаж**Вл. Гаков. КАРТОГРАФ ПЛОСКОЙ ЗЕМЛИ (статья, иллюстрации Джоша Кирби)Леонид Кудрявцев. ВЫСШЕЕ МАСТЕРСТВО, повестьВладислав Гончаров. ВОЛШЕБНИКИ В ЗВЕЗДОЛЕТАХ (статья)Экспертиза темыКонкурс «Альтернативная реальность»**Дмитрий Попов. Быть сильным, рассказАлександр Ройфе. ВЗРОСЛОЕ ЧТИВО (статья)РецензииКурсорПерсоналииОбложка Игоря Тарачкова к роману Терри Пратчетта «Страта»

Владимир Гаков , Дмитрий Попов , Леонид Викторович Кудрявцев , Олег Овчинников , Терри Дэвид Джон Пратчетт

Фантастика / Журналы, газеты / Научная Фантастика