Моделирование и анализ информационных систем
RUS  ENG    ЖУРНАЛЫ   ПЕРСОНАЛИИ   ОРГАНИЗАЦИИ   КОНФЕРЕНЦИИ   СЕМИНАРЫ   ВИДЕОТЕКА   ПАКЕТ AMSBIB  
Общая информация
Последний выпуск
Архив
Импакт-фактор

Поиск публикаций
Поиск ссылок

RSS
Последний выпуск
Текущие выпуски
Архивные выпуски
Что такое RSS



Модел. и анализ информ. систем:
Год:
Том:
Выпуск:
Страница:
Найти






Персональный вход:
Логин:
Пароль:
Запомнить пароль
Войти
Забыли пароль?
Регистрация


Моделирование и анализ информационных систем, 2018, том 25, номер 4, страницы 347–357
DOI: https://doi.org/10.18255/1818-1015-2018-4-347-357
(Mi mais633)
 

Параллельное программирование

Оптимизация инварианта цикла в языке Пифагор

В. С. Васильев, А. И. Легалов

Сибирский федеральный университет, Институт космических и информационных технологий ул. Академика Киренского, 26, г. Красноярск, 660074 Россия
Список литературы:
Аннотация: В работе рассматриваются методы преобразования программ, эквивалентные оптимизации инварианта цикла, применительно к функционально-потоковой модели параллельных вычислений, реализованной в языке программирования Пифагор. В императивных языках при оптимизации инварианта из цикла выносятся вычисления, не зависящие от изменяемых в нем переменных. Особенностью языка функционально-потокового параллельного программирования Пифагор является отсутствие явно задаваемых циклических вычислений (оператора цикла). Тем не менее, повторяющиеся вычисления в этом языке можно задать рекурсивно или за счет применения специфических языковых конструкций (параллельных списков). Оба механизма обеспечивают возможность параллельного выполнения. В случае оптимизации рекурсивной функции повторяющиеся операции выносятся во вспомогательную функцию, а основная функция выполняет лишь вычисление инварианта. При оптимизации внутри параллельных списков вычисление инварианта перемещается в дополнительную функцию, содержащую вызов функции, использующую данный параллельный список. В статье приводится определение «инварианта» применительно к языку Пифагор, алгоритмы его оптимизации, а также примеры программ, их графовых представлений (граф программных зависимостей) до и после оптимизации. Алгоритм оптимизации, описанный для вычислений над параллельными списками, применим только для языка Пифагор, так как опирается на специфические структуры данных и модель вычислений этого языка. Вместе с тем, алгоритм преобразования рекурсивных функций может быть применим и для других языков программирования.
Ключевые слова: функционально-потоковое параллельное программирование, язык программирования Пифагор, оптимизация кода, оптимизация циклов, оптимизация инварианта, граф программных зависимостей.
Финансовая поддержка Номер гранта
Российский фонд фундаментальных исследований 17-07-00288_а
Исследование выполняется при финансовой поддержке РФФИ в рамках научного проекта № 17-07-00288.
Поступила в редакцию: 15.03.2018
Реферативные базы данных:
Тип публикации: Статья
УДК: 004.052.42
Образец цитирования: В. С. Васильев, А. И. Легалов, “Оптимизация инварианта цикла в языке Пифагор”, Модел. и анализ информ. систем, 25:4 (2018), 347–357
Цитирование в формате AMSBIB
\RBibitem{VasLeg18}
\by В.~С.~Васильев, А.~И.~Легалов
\paper Оптимизация инварианта цикла в языке Пифагор
\jour Модел. и анализ информ. систем
\yr 2018
\vol 25
\issue 4
\pages 347--357
\mathnet{http://mi.mathnet.ru/mais633}
\crossref{https://doi.org/10.18255/1818-1015-2018-4-347-357}
\elib{https://elibrary.ru/item.asp?id=35452923}
Образцы ссылок на эту страницу:
  • https://www.mathnet.ru/rus/mais633
  • https://www.mathnet.ru/rus/mais/v25/i4/p347
  • Citing articles in Google Scholar: Russian citations, English citations
    Related articles in Google Scholar: Russian articles, English articles
    Моделирование и анализ информационных систем
    Статистика просмотров:
    Страница аннотации:205
    PDF полного текста:142
    Список литературы:33
     
      Обратная связь:
     Пользовательское соглашение  Регистрация посетителей портала  Логотипы © Математический институт им. В. А. Стеклова РАН, 2024