Вы здесь

Распределение регистров при планировании инструкций для VLIW-архитектур, Программирование, 2010, №6

Вопросы взаимодействия фаз распределения регистров и планирования инструкций довольно часто рассматриваются в публикациях, посвященных оптимизациям завершающего этапа компиляции. Как правило, авторы предлагают адаптировать одну из фаз под нужды другой, не объединяя их в единое целое. Тем не менее, их интеграция может существенно  уменьшить время работы и улучшить производительность результирующего кода. В данной работе представлена попытка максимально полно объединить эти фазы с учетом особенностей статического планирования для VLIW-архитектур.

Одной из наиболее важных проблем вычислительной техники  на сегодняшний день можно назвать невысокую эффективность  взаимодействия памяти и микропроцессора. Начиная с 1980-го года, разрыв между скоростями каналов памяти и скоростями микропроцессоров неуклонно увеличивается [1]. Эффективное  распределение регистров в оптимизирующем компиляторе позволяет обойти это узкое место, минимизируя количество создаваемых инструкций обращений в память.

Подробнее... Загрузить файл (RU )   Загрузить файл (EN )

Содержание:

1. Введение
2. Предыдущие исследования
3 Общее описание алгоритма

3.1. Распределение регистров для глобальных сетей
3.2. Распределение регистров для локальных сетей
3.3. Соблюдение регистрового баланса

4. Преимущества алгоритма

4.1. Учет давления на регистровый файл
4.2. Оптимизация задержек при обращении в память
4.3. Уменьшение алгоритмической сложности

5. Экспериментальные результаты
6. Заключение и дльнейшая работа
Список литературы

Д.С.Иванов