Вы здесь

Построение оптимизированного кода для VLIW-архитектур

№  п/п Название модулей Разделы и темы лекционных занятий Содержание Аудит. работа (часы)
1

I

Классические оптимизации и
анализы

SSA-форма и основанные на ней анализы SSA-форма промежуточного представления программы. Граф определений-использований. Нумерация значений и поиск общих подвыражений. PS-формы. 2
2 Нелокальные потоковые оптимизации Упрощение арифметических выражений. Удаление мёртвого кода. Сбор общих подвыражений. Расстановка скобок и вынос инвариантных выражений. 2
3 Современные цикловые оптимизации Программная и аппаратная конвейеризация циклов. Раскрутка циклов. Векторные операции. Векторизация циклов. 6
4

II

Оптимизации и анализы для VLIW

Оптимизации для VLIW Основные особенности VLIW-архитектур. Предикатный и спекулятивный режим исполнения программ. if-конверсия. Анализ предикатов. Упрощение предикатных выражений. Временная разметка операций, критический путь. Оптимизации критического пути. unzipping. Ресурсное планирование. 10
5

III

Разработка высоко-производительных приложений

Распараллеливание Архитектуры многоядерных и многопроцессорных систем. Общая и распределённая память. Технологии распараллеливания программ на потоки и задачи. OpenMP, MPI. Автоматическое распараллеливание. 2
6 Разработка высоко-производительных приложений ASM-вставки и их поддержка в оптимизирующем компиляторе, клобберы, барьеры. GNU-расширения, прагмы, builtin-функции. Профильная информация. Коррекция профильной информации при оптимизациях. Статическое назначение вероятностей. Режим компиляции «вся программа», динамическое связывание. 6
7

IV

Вопросы разработки оптимизирующего компилятора

Ускорение компиляции Подходы к увеличению скорости компиляции. Система направленной оптимизации процедур, линейки оптимизаций, решатель. 4
8 Динамическая компиляция Динамическая и бинарная компиляция, область применения, особенности. Обеспечение бинарной совместимости между различными архитектурами микропроцессоров. Динамическое профилирование. Разбиение программы на регионы и их связывание. 2