Вы здесь

Конвейеризации циклов в двоичном динамическом трансляторе

В работе представлен алгоритм конвейеризации циклов, отличающийся тем, что его характеристики удовлетворяют достаточно жёстким требованиям к работе динамического двоичного оптимизирующего транслятора. Использование алгоритма ускорило время работы результирующего кода почти на 7% для задач из пакета SpecInt95, и более чем на 35% для задач из пакета SpecFP95.

Динамическая трансляция и динамическая двоичная трансляция являются предметом многих исследований. Интерес к этой области объясняется тем, что архитектура микропроцессоров не стоит на месте, а постоянно развивается. Появляются новые перспективные архитектуры, подчас основанные на совершенно новых идеях, развиваются уже существующие. Эффективным методом обеспечения совместимости со старыми архитектурами является технология двоичной трансляции [1, 2].

В данной статье рассматривается алгоритм программной конвейеризации циклов, разработанный специально для динамического двоичного оптимизирующего компилятора. Описанный алгоритм был реализован в динамическом двоичном трансляторе с исходной архитектурой x86 в целевую архитектуру «Эльбрус» [3, 4, 5].

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

Содержание:

Введение

  1. Основные определения
  2. Разметка времён на расширенном графе зависимостей
  3. Алгоритм конвейеризации циклов
  4. Результаты экспериментов

Заключение
Литература

Гимпельсон В.Д.