|
Эта публикация цитируется в 1 научной статье (всего в 1 статье)
Theory of computing
Autotuning parallel programs by model checking
[Подход к автонастройке параллельных программ методом проверки моделей]
N. O. Garaninaab, S. P. Gorlatchc a A.P. Ershov Institute of Informatics Systems (IIS), Siberian Branch of the Russian Academy of Sciences, 6 Acad. Lavrentjev pr.,
Novosibirsk 630090, Russia
b Institute of Automation and Electrometry SB RAS, 1, Academician Koptyug ave., Novosibirsk 630090, Russia
c University of Munster, 62 Einsteinstr, Muenster 48149, Germany
Аннотация:
В этой статье представлен новый подход к автонастройке программ, параллельных по данным. Автонастройка – это поиск оптимальных параметров настройки программы, при которых её производительность оказывается максимальной. Новизна подхода состоит в использовании метода проверки моделей для поиска оптимальных параметров настройки методом контрпримеров. В нашей работе мы абстрагируемся от конкретных программ и конкретных процессоров, задавая их представительные абстрактные шаблоны. Наш метод контрпримеров состоит в реализации следующих четырёх шагов. На первом шаге на языке инструмента проверки моделей задаётся модель исполнения абстрактной программы на абстрактном процессоре. На втором шаге на языке инструмента проверки моделей формулируем свойство оптимальности, зависящее от построенной модели. На третьем шаге подбираем оптимальные значения параметров настройки посредством использования контрпримеров, построенных в ходе верификации свойства оптимальности. На четвёртом шаге извлекаем информацию о параметрах настройки из контрпримера для оптимальных параметров. Мы применяем этот подход к автонастройке параллельных программ, написанных на языке OpenCL – современном популярном языке, который расширяет язык C для программирования как обычных многоядерных процессоров (CPU), так и массивно-параллельных графических процессоров (GPU). В качестве инструмента верификации мы используем верификатор SPIN и его язык представления моделей Promela, формальная семантика которого позволяет моделировать исполнение параллельных программ на процессорах с различной архитектурой.
Ключевые слова:
задача оптимизации, автонастройка параллельных программ, параллельные программы, программирование GPU, проверка моделей, контрпримеры, OpenCL, SPIN, Promela.
Поступила в редакцию: 15.11.2021
Образец цитирования:
N. O. Garanina, S. P. Gorlatch, “Autotuning parallel programs by model checking”, Модел. и анализ информ. систем, 28:4 (2021), 338–355
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/mais756 https://www.mathnet.ru/rus/mais/v28/i4/p338
|
|