High Performance Fortran
Диалект языка программирования FORTRANHigh Performance Fortran или HPF — это расширение языка Fortran 90 для параллельных вычислительных систем. В текст, написанный на обычном FORTRAN, вставляются директивы, которые с точки зрения FORTRAN являются комментариями. В директивах содержатся указания, как данные и операции над ними должны быть распределены по ОЗУ и процессорам.
Первые встречи HPF форума (High Performance Fortran Forum — HPFF), объединившего более 40 организаций, происходили в интервале с марта 1992 по март 1993. На них обсуждались проблемы написания и трансляции программ с параллельной обработкой данных. Форум определил набор расширений языка FORTRAN, названный Высокопроизводительным Фортраном (High Performance Fortran или HPF) версии 1.0. Вторая серия встреч форума HPFF состоялась в период с апреля 1994 по октябрь 1994. Обсуждались предложения по корректировке версии 1.0. Были проанализированы предложения пользователей по дальнейшим изменениям в HPF. Окончательный отчет форума, определивший HPF версии 1.1, был принят 11 ноября 1994. На данный момент принят HPF версии 2.
Главной целью при проектировании HPF было сформулировать такой язык, который позволил бы получить наивысшую производительность на параллельных компьютерах, и который бы не ограничивал переносимость программ.
Расширения HPF затрагивают следующие аспекты FORTRAN:
- директивы. Директивы являются комментариями, которые предлагают компилятору стратегию реализации программы. Они воздействуют на производительность программы, но не изменяют вычисляемый ею результат.
-
синтаксис. Введен оператор
FORALL
и несколько встроенных функций. Они определены как языковые конструкции, а не как комментарии, поскольку они влияют на интерпретацию программы. - библиотечные процедуры. HPF библиотека стандартных функций включает ряд подпрограмм, которые необходимы для эффективных вычислений, — дополнительные функции редукции, префиксные и суффиксные функции, функции сортировки.
- изменения и ограничения языка. Введены ограничения на динамическое выделение памяти и на манипулирование данными.
Достоинства HPF:
- автоматизируется работа по распараллеливанию;
- в тексте четко разделены действия, составляющие алгоритм, и меры по его оптимизации; запись алгоритма не теряет наглядности;
- обеспечивается обратная совместимость со стандартным Fortran 90;
- директивы HPF влияют не на результат работы, а только на скорость его получения, то есть не способны превратить работающую программу в неработающую.
Комментарии
]]>blog comments powered by Disqus
]]>