Аннотация:
Суперкомпьютерные приложения обычно реализуются на языках программирования С, С++, Fortran с использованием различных вариантов библиотеки Message Passing Interface проекте "Т-система" (OpenTS) исследуются вопросы автоматического динамического распараллеливания программ. С практической точки зрения актуальна реализация приложений в смешанном (гибридном) стиле, когда часть приложения пишется в парадигме автоматического динамического распараллеливания программ и не использует никаких примитивов библиотеки MPI, а другая его часть пишется с использованием библиотеки Message Passing Interface.
В этом случае используется библиотека, которая входит в состав Т-системы и имеет название DMPI (Dynamic Message Passing Interface). Необходимо оценить эффективность реализации MPI, которая есть в Т-системе. Целью данной работы является исследование эффективности реализации DMPI в Т-системе. В классическом MPI приложении 0% кода реализовано с помощью автоматического динамического распараллеливания программ и 100% кода реализовано в виде обычной Message Passing Interface программы.
Для сравнительного анализа в начале код выполняется на стандартном Message Passing Interface, для которого он был написан изначально, и потом этот код выполняется с использованием библиотеки DMPI, входящей в состав Т-системы. При сравнении эффективности подходов оцениваются потери производительности и перспективность применения гибридного стиля программирования. В результате проведенных экспериментальных исследований для разных типов вычислительных задач удалось убедиться, что потери эффективности пренебрежимо малы. Это позволило сформулировать направление дальнейшей работы над Т-системой и наиболее перспективные варианты построения гибридных приложений.
В настоящей статье приводятся результаты сравнительных испытаний приложения LAMMPS с использованием OpenMPI и с использованием OpenTS DMPI. Результаты испытаний подтверждают эффективность реализации DMPI в среде параллельного программирования OpenTS.
Ключевые слова:параллельный алгоритм, язык программирования Т, OpenTS, Т-Система, перидинамика, Т-приложение, benchmark, молекулярная динамика.