High Performance Fortran

редактировать

High Performance Fortran (HPF ) - это расширение Fortran 90 с конструкциями, поддерживающими параллельные вычисления, опубликованное Форумом High Performance Fortran Forum (HPFF). HPFF был созван и возглавлен Кен Кеннеди из Университета Райса. Первая версия отчета HPF была опубликована в 1993 году.

Основываясь на синтаксисе массива, представленном в Fortran 90, HPF использует модель вычислений с параллельными данными для поддержки распределения работы одного массив вычисление на нескольких процессорах. Это обеспечивает эффективную реализацию как в архитектурах в стиле SIMD, так и в MIMD. Функции HPF включали:

  • Новые операторы Fortran, такие как FORALL, и возможность создавать PURE (побочный эффект свободных) процедур
  • Директивы компилятора для рекомендуемых распределений данных массива
  • Внешний интерфейс процедуры для взаимодействия с параллельными процедурами, не относящимися к HPF, такими как те, которые используют передачу сообщений
  • Дополнительные библиотечные подпрограммы, включая запрос среды, параллельный префикс / суффикс ( например, 'сканирование' ), разброс данных и сортировка операции

Fortran 95 включает несколько возможностей HPF. В ответ HPFF снова созвала и опубликовала Отчет HPF 2.0. В обновленном отчете удален материал, который уже охватывался Fortran 95. Отчет также был реорганизован и исправлен на основе опыта работы с HPF 1.0.

Хотя некоторые поставщики действительно включали HPF в свои компиляторы в 1990-х годах, некоторые аспекты оказались трудными для реализации и сомнительным использованием. С тех пор большинство поставщиков и пользователей перешли на параллельную обработку на основе OpenMP. Однако HPF продолжает оказывать влияние. Например, предлагаемый тип данных BITдля будущего стандарта Fortran-2008 содержит ряд новых встроенных функций, взятых непосредственно из HPF.

См. Также
Внешние ссылки
Последняя правка сделана 2021-05-23 11:35:11
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте