Проектування програмного забезпечення

Cервіс

Автотюнінг 

Самоналаштування програм на цільову платформу здійснюється на основі матриці пошуку “точок росту” продуктивності в архітектурі різноманітного ПЗ, що застосовується для підвищення швидкодії паралельних обчислень.

Опис методів, засобів та технологій.

Розроблені формальні методи та програмні засоби на основі алгебро-алгоритмічного підходу для автоматизації програмування обчислювальних систем паралельної дії, що включають мультипроцесорні платформи різної архітектури, а також застосуванням розроблених засобів при створенні експериментальних прикладних систем у галузі автоматизації наукових досліджень, зокрема:

• розроблені алгебро-алгоритмічні та алгебро-динамічні моделі послідовних і паралельних програм для широкого набору мультипроцесорних платформ (багатоядерних процесорів, графічних прискорювачів та обчислювальних кластерів), що дозволяють виконувати формалізоване проектування програм та їх трансформацію з використанням переписувальних правил;
• розроблено нові засоби опису паралельних алгоритмів в рамках алгебри алгоритмів з даними для класу інформаційно-управляючих систем;
• побудовані формальні моделі для автоматичної програмної оптимізації на основі використання розширеного поняття дискретної динамічної системи;
• на основі побудованих алгебро-алгоритмічних моделей та методів розроблено програмні інструментарії:

Інтегрований інструментарій Проектування та Синтезу програм” (ІПС) та 

Онлайновий Діалоговий конструктор Синтаксично Правильних програм” (ОДСП), 

призначені для автоматизації побудови схем алгоритмів, поданих в САА, і генерації програм для різних предметних областей (зокрема, метеорологічного прогнозування); 

інструментальну систему TuningGenie, призначену для автоматичного самоналаштовування (автотюнінгу) паралельних програм на цільові платформи

яка ґрунтується на трансформації програмного коду на основі використання переписувальних правил;

інструментальне середовище gpusim, 

призначене для імітаційного моделювання високопродуктивних паралельних застосувань для гетерогенних обчислювальних систем з графічними прискорювачами.

Service provider / Надавач сервісу

Дослідження, що проводяться у Відділі теорії комп’ютерних обчислень ІПС НАНУ, беруть свій початок від фундаментальних робіт академіка В.М. Глушкова та його послідовників з розробки систем алгоритмічних алгебр (САА) та досліджень з алгебри алгоритміки та алгебраїчного програмування, що ґрунтується на системах переписування термів.

Специфічною рисою алгебри алгоритміки є формалізація процесів проектування та синтезу (збирання) алгоритмів і програм. Ці об’єкти проектуються в термінах регулярних схем — алгебраїчних подань в САА та можуть оптимізуватися засобами техніки переисувальних правил. Запропоновано методи і засоби для формалізації основних парадигм сучасного програмування й аспектів формування різних предметних областей. На цій основі під керівництвом завідувача відділу д.ф.-м.н., проф. А.Ю. Дорошенка розроблені алгебро-динамічні моделі та методи високопродуктивної паралельної обробки, в основу яких покладено алгебру алгоритмів і теорію дискретних динамічних систем.

Experience \ usecases  \ Проєкти з розробки та застосування сервісу:

•  розроблені засоби застосовані для створення нових чисельних методів та моделей розпаралелювання обчислень для розв’язання задач метеорологічного прогнозування, що дозволяють підвищити якість регіонального прогнозу погоди;

• створені програмні засоби високопродуктивних паралельних обчислень для розв’язання метеорологічних задач впроваджені в Українському гідрометеорологічному інституті Державної служби з надзвичайних ситуацій України та НАН України.