Аннотация:
В статье рассматриваются принципы расширения DVM-модели и построения языка Fortran DVMH для кластеров с гетерогенными узлами. Новые возможности языка позволяют: определить фрагменты программы, которые следует выполнять на том или ином ускорителе; определить данные, необходимые для выполнения заданного фрагмента программы; задать правила отображения витков цикла на ускоритель; управлять перемещением данных между оперативной памятью универсального процессора и памятью ускорителей. Описываются принципы построения компилятора с языка Fortran DVMH и новые функции системы поддержки параллельного выполнения программ Lib-DVMH. Приводятся экспериментальные данные об эффективности выполнения тестовых программ на графических процессорах кластера К-100. Появление компилятора с языка Fortran DVMH не только упростит разработку программ для кластеров с гетерогенными узлами, но и ускорит создание для таких кластеров автоматически распараллеливающего компилятора с языка Fortran, использующего язык Fortran DVMH в качестве выходного языка, на котором программист сможет проводить дополнительную ручную оптимизацию программы.
Ключевые слова:языки параллельного программирования, гибридные многопроцессорные вычислительные системы, графические ускорители.