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

где в самом действии образуется конструкция вида

Понять, для каких данных нужно выполнять действие

Выполнить действие для этих данных

С практической точки зрения это означает, что теперь не только снаряды летают одновременно с перемещением танков, но и танки ездят не «по очереди», а все сразу. И поскольку танков и снарядов у нас довольно много, то, казалось бы, игра не просто параллелится, - она разбивается на сотни потоков и, стало быть, сможет получить дополнительные преимущества даже на будущих двухпроцессорных 32-ядерных системах с поддержкой четырехпоточного HyperThreading. Однако этого не происходит, и вот почему: запуск потока - весьма и весьма дорогая по меркам процессора процедура, которая требует немалого времени, грозящего свести на нет все преимущества параллельной обработки. Переключение между потоками - тоже процесс небыстрый, и если мы разбили исполнение программы на 32 потока, а процессор умеет исполнять только два потока одновременно, то постоянные переключения между шестнадцатью потоками на каждое виртуальное ядро очень сильно «просадят» производительность. А потому программисты зачастую отказываются от «простого» решения и прибегают к более сложной конструкции, когда все необходимые рабочие потоки (причем их число тщательно выбирается, чтобы исключить лишние переключения) запускаются заблаговременно, а в нужных местах «главный» поток «раздает» им текущие задания. Что-то вроде

ЗапуститьПоток(Поток1)

ЗапуститьПоток(Поток2)

ПопроситьПотокСделать(Поток1, Действие, для Объекта1)

ПопроситьПотокСделать(Поток2, Действие, для Объекта2)

В результате программист уже на начальном этапе вынужден возиться с довольно громоздкими и сложными конструкциями, которые далеко не так просто написать и отладить. И даже на этой первой, самой простой проблеме параллельного программирования многие спотыкаются. Чтобы облегчить жизнь новичкам и облегчить знакомство с параллельным кодом, существуют проекты типа OpenMP.


Что такое OpenMP?


Первая спецификация компилятора OpenMP (Open specifications for Multi-Processing), являющегося развитием провального и ныне забытого проекта ANSI X3H5, появилась в 1997 году и предназначалась для одного из древнейших языков программирования Fortran, на котором некогда было написано большинство «серьезных» вычислительных приложений. В 1998 году появились варианты OpenMP для языков C/C++; стандарт прижился, получил распространение и к настоящему моменту дорос до версии 2.5. Поддержка спецификации есть во всех компиляторах Intel, начиная с шестой версии (OpenMP 2.0 - с восьмой); в компиляторе Microsoft C/C++, начиная с Visual Studio 2005; буквально на днях стало известно о худо-бедно стандартизованном OpenMP-расширении для GCC[OpenMP для GNU-систем, разумеется, существовал и раньше. Но проект GOMP (GNU OpenMP), обеспечивающий полноценное встраивание поддержки OpenMP непосредственно в GCC, появился только сейчас. 18 ноября пришло сообщение о готовности встроить GOMP в свежие билды GCC - ждем с нетерпением! Для линуксоидов, конечно, вручную параллелить код для pthreads - дело привычное, однако полноценная поддержка OpenMP со стороны GNU Project полностью устранит проблему портирования параллельных приложений между ОС, использующими разные модели потоков].

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

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

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

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

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

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

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

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

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

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

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

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

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