|
Эта публикация цитируется в 1 научной статье (всего в 1 статье)
Theory of computing
Трансформация функционально-потоковых параллельных программ в императивные
В. С. Васильевa, А. И. Легаловb, С. В. Зыковb a Сибирский федеральный университет, пр. Свободный, д. 82, г. Красноярск, 660041 Россия
b Национальный исследовательский университет «Высшая школа экономики», ул. Мясницкая, д. 20, г. Москва, 101000
Россия
Аннотация:
Функционально-потоковая парадигма параллельного программирования ориентирована на разработку параллельных переносимых программ. Исходный код функционально-потоковых программ транслируется в набор графов, отражающих информационные и управляющие зависимости. Основным способом их исполнения является интерпретация, что не позволяет эффективно выполнять вычисления на реальных параллельных вычислительных системах и ведет к низкой производительности. Для непосредственного выполнения программ на существующих вычислительных системах требуется использование специфических методов оптимизации и трансформации, учитывающих особенности как языка программирования, так и архитектуры исполнителя. В настоящее время наиболее распространенной является архитектура Фон-Неймана, параллельное программирование для которой в большинстве случаев осуществляется с использованием языков, поддерживающих императивный стиль и ориентированных на статическую систему типов. Для различных архитектур параллельных вычислительных систем существуют разнообразные подходы к написанию параллельных программ. Трансформация функционально-потоковых параллельных программ в императивные позволяет сформировать общий каркас из фрагментов императивного кода, непосредственно отображающих последовательные вычисления, который в дальнейшем может быть адаптирован к конкретной параллельной архитектуре. В работе рассматривается подход к выполнению такого типа трансформации, заключающийся в выделении фрагментов функционально-потоковых параллельных программ в качестве шаблонов, заменяемых впоследствии на эквивалентные фрагменты императивных языков. Предлагаемые методы трансформации позволяют порождать программный код, к которому в дальнейшем можно применять различные оптимизирующие преобразования, включая распараллеливание с учетом целевой архитектуры.
Ключевые слова:
трансформация программ, функционально-потоковое параллельное программирование, анализ программ, типизация, промежуточные представления программ.
Поступила в редакцию: 07.05.2021 Исправленный вариант: 31.05.2021 Принята в печать: 02.06.2021
Образец цитирования:
В. С. Васильев, А. И. Легалов, С. В. Зыков, “Трансформация функционально-потоковых параллельных программ в императивные”, Модел. и анализ информ. систем, 28:2 (2021), 198–214
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/mais744 https://www.mathnet.ru/rus/mais/v28/i2/p198
|
Статистика просмотров: |
Страница аннотации: | 101 | PDF полного текста: | 38 | Список литературы: | 24 |
|