Сборники трудов ИСП РАН


Программная конвейеризация циклов на платформе ARM.

Р. Жуйков, Д. Мельник, Р. Бучацкий.

Аннотация

В данной работе описывается проделанная с компилятором GCC работа по адаптации имеющегося алгоритма поворотного модульного планирования для архитектуры ARM. Имеющийся в компиляторе алгоритм может работать только с циклами определенного вида, а на платформе ARM нет подходящей инструкции для организации циклов этого вида. Были выполнены предварительные оценки производительности с помощью реализации шаблона псевдо-инструкции для платформы ARM. По результатам этой проверки было решено расширить возможности алгоритма для оптимизации более общего вида циклов. Разработана и реализована поддержка циклов, счетчик которых меняется как арифметическая прогрессия. Для добавления такой поддержки были внесены значительные изменения в алгоритм поворотного модульного планирования. По результатам тестирования выявлено ускорение части тестовых приложений до 3-4%.

Ключевые слова

оптимизация программ; программная конвейеризация циклов; поворотное модульное планирование; архитектура ARM

Издание

Труды Института системного программирования РАН, том 22, 2012, стр. 33-48.

ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

DOI: 10.15514/ISPRAS-2012-22-3

Полный текст статьи в формате pdf Вернуться к содержанию тома