Презентация на тему Распределение регистров при планировании инструкций для архитектуры “Эльбрус”

Презентация на тему Распределение регистров при планировании инструкций для архитектуры “Эльбрус”, предмет презентации: Разное. Этот материал содержит 17 слайдов. Красочные слайды и илюстрации помогут Вам заинтересовать свою аудиторию. Для просмотра воспользуйтесь проигрывателем, если материал оказался полезным для Вас - поделитесь им с друзьями с помощью социальных кнопок и добавьте наш сайт презентаций ThePresentation.ru в закладки!

Слайды и текст этой презентации

Слайд 1
Текст слайда:

Распределение регистров при планировании инструкций для архитектуры “Эльбрус”

Дипломная работа Иванова Д. С.
Научный руководитель Шлыков С. Л.




Москва 2008


Слайд 2
Текст слайда:

Задачи распределения регистров и планирования инструкций в компиляторе

Планирование инструкций – эффективное переупорядочивание инструкций с учетом доступных вычислительных ресурсов.

Распределение регистров – эффективное распределение доступных архитектурных регистров между переменными и результатами инструкций.


Слайд 3
Текст слайда:

Схемы взаимного расположения фаз планирования инструкций и распределения регистров

1. Распределение перед планированием
Создает дополнительные зависимости между инструкциями, сильно ограничивая параллельность. Высокая алгоритмическая сложность.

2. Распределение после планирования
Приводит к разрезу спланированного кода при появлении инструкций откачки в память. Ограничения на планирование. Высокая алгоритмическая сложность.


3. Распределение при планировании
Позволяет избежать указанных проблем. Перспективная, но плохо исследованная техника.


Слайд 4
Текст слайда:

Цель работы

Планирование инструкций

Распределение регистров


Распределение регистров при планировании инструкций

BACK
END


+



FRONT
END

OPTIMIZER






Слайд 5
Текст слайда:

Основные понятия

Виртуальные регистры – переменные программы и промежуточные результаты вычислений.

Сеть – виртуальный регистр и множество инструкций его чтения и записи.

Локальная сеть – это сеть, значение которой необходимо хранить на регистре или в памяти в пределах только одного линейного участка (узла) управляющего графа.

Глобальная сеть – любая нелокальная сеть.

Время жизни глобальной сети – множество дуг и узлов управляющего графа, на которых необходимо хранить значение сети.

Давление на регистровый файл – количество сетей, значения которых в данный момент необходимо хранить на регистрах.


Слайд 6
Текст слайда:

Алгоритм распределения регистров при планировании инструкций

1. Подготовка к распределению регистров и планированию инструкций

2. Распределение регистров для глобальных сетей перед планированием инструкций

3. Распределение регистров для локальных сетей одновременно с планированием инструкций


Слайд 7
Текст слайда:

Подготовка к распределению регистров

1. Определение времен жизни глобальных сетей

2. Разделение регистрового файла на две части для глобального и локального распределения для каждого линейного участка.

|------ Глоб. Сети ------|--- Лок. Сети ---|

3. Подсчет максимального давления локальных сетей на регистровый файл:


TU – среднее время планирования последнего чтения сети,
TL - среднее время планирования первой записи сети,
H – время планирования линейного участка.


Слайд 8
Текст слайда:

Глобальное распределение регистров

Матрица сетей – битовая матрица, отображающая информацию о временах жизни глобальных сетей по линейным участкам.
Матрица регистров – битовая матрица доступных для распределения регистров в линейных участках.


Слайд 9
Текст слайда:

Глобальное распределение регистров

1. Подсчет приоритетов сетей (стоимость планирования инструкций откачки/подкачки) по формуле:



spill_cst - стоимость планирования инструкции откачки,
fill_cst – стоимость планирования инструкции подкачки, node_cnt – значение счетчика линейного участка.

2. Распределение глобальных сетей на доступные регистры с помощью битовых матриц

3. Маркировка сетей, которые не удалось распределить на регистры.



Слайд 10
Текст слайда:

Глобальное распределение регистров

Приоритет типов архитектурных регистров для глобального распределения:

1. Глобальные регистры являются общими и доступны всем процедурам
2. Базированные регистры заблокированы для использования в циклах с наложением итераций
3. Локальные регистры не имеют ограничений на использование при распределении

|--Gs[0-31]--|--------Bs[0-127]--------|----Rs[0-63]----|


Слайд 11
Текст слайда:

Локальное распределение регистров при планировании инструкций

Планирование инструкции в широкую команду:

1. Поиск доступного исполнительного устройства

2. Поиск регистров для локальных аргументов и локального результата инструкции. Принятие решения об отказе в планировании при высоком давлении на регистровый файл.

3. Приоритет регистров при локальном распределении:

|--Gs[0-31]--|----Rs[0-63]----|--------Bs[0-127]--------|

4. Создание и планирование на общих основаниях инструкций откачки и подкачки, если они необходимы


Слайд 12
Текст слайда:

Преимущества реализованного алгоритма

1. Уменьшение времени работы за счет отказа от построения графа несовместимости и совмещения схожих функций

2. Сохранение целостности спланированного кода за счет планирования инструкций откачки/подкачки на общих основаниях

3. Точный учет давления на регистры при планировании инструкции


Слайд 13
Текст слайда:

Результаты


Слайд 14
Текст слайда:

Результаты


Слайд 15
Текст слайда:

Результаты


Слайд 16
Текст слайда:

Результаты

1. Для архитектуры “Эльбрус” в составе оптимизирующего компилятора разработан и реализован алгоритм распределения регистров при планировании инструкций, позволяющий повысить производительность и уменьшить время компиляции программ

2. Проведено комплексное тестирование алгоритма, подтвердившее его эффективность на различных задачах

3. Реализованный алгоритм войдет в следующую версию оптимизирующего компилятора для архитектуры “Эльбрус”


Слайд 17
Текст слайда:

Спасибо за внимание!


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика