ТЕХНИКА ОПТИМИЗАЦИИ ПРОГРАММ


         

ТЕХНИКА ОПТИМИЗАЦИИ ПРОГРАММ


Предвыборка в процессорах AMD K6\Athlon и VIA C3
Предвыборка в процессорах AMD K6\Athlon и VIA C3 - 2
Предвыборка в процессорах P-III и P-4
Предвыборка в процессорах P-III и P-4 - 2
Предвыборка в процессорах P-III и P-4 - 3
Сводная характеристика инструкций предвыборки различных процессоров
Аппаратная предвыборка в микропроцессоре P-4
Аппаратная предвыборка в микропроцессоре P-4 - 2
Эффективность предвыборки в многозадачных системах
Практическое использование предвыборки

Практическое использование предвыборки - 2
Практическое использование предвыборки - 3
Определение предпочтительной кэш-иерархии
Определение предпочтительной кэш-иерархии - 2
Определение предпочтительной кэш-иерархии - 3
Планирование дистанции предвыборки
Планирование дистанции предвыборки - 2
Планирование дистанции предвыборки - 3
Планирование дистанции предвыборки - 4
Планирование дистанции предвыборки - 5

Планирование дистанции предвыборки - 6
Планирование дистанции предвыборки - 7
Увеличение эффективности предвыборки.
Увеличение эффективности предвыборки. - 2
Увеличение эффективности предвыборки. - 3
Увеличение эффективности предвыборки. - 4
Увеличение эффективности предвыборки. - 5
Оптимизация структур данных под аппаратную предвыборку
Оптимизация структур данных под аппаратную предвыборку - 2
Оптимизация структур данных под аппаратную предвыборку - 3

Секреты копирования памяти или
Оптимизация копирования памяти
Оптимизация копирования памяти - 2
Оптимизация копирования памяти - 3
Оптимизация копирования памяти - 4
Оптимизация копирования памяти - 5
Оптимизация копирования памяти - 6
Оптимизация копирования памяти - 7
Оптимизация копирования памяти - 8
Оптимизация копирования памяти - 9

Оптимизация копирования памяти - 10
Оптимизация копирования памяти - 11
Оптимизация копирования памяти - 12
Оптимизация копирования памяти - 13
Оптимизация копирования памяти - 14
Оптимизация копирования памяти - 15
Оптимизация копирования памяти - 16
Оптимизация заполнения (инициализации) памяти
Оптимизация заполнения (инициализации) памяти - 2
Оптимизация заполнения (инициализации) памяти - 3

Оптимизация заполнения (инициализации) памяти - 4
FECI QUOD POTUI, FACIANT MELIORA POTENTES
Часть III Машинная оптимизация
Сравнительный анализ оптимизирующих компиляторов языка Си\Си++
Сводная таблица
Оптимизация константных выражений
Замена переменных константными значениями ("размножение" констант)
Вычисление значения переменных на стадии компиляции ("свертка" констант)
Вычисление значений функций на стадии компиляции ("свертка" функций)
Удаление неиспользуемых переменных

Удаление копий переменных
Удаление неиспользуемых присвоений
Удаление лишних присвоений
Удаление лишних выражений[2]
Удаление лишних вызовов функций
Выполнение алгебраических упрощений
Оптимизация подвыражений
Сложение и вычитание
Деление
Взятие остатка

Умножение
Замена условных переходов арифметическими операциями
Удаление лишних условий
Удаление заведомо ложных условий
Балансировка логического древа
Балансировка логического древа - 2
Создание таблицы переходов
Разворачивание циклов
Слияние циклов
Вынесение инвариантного кода за пределы цикла

Замена циклов с предусловием на циклы с постусловием
Замена инкремента цикла на декремент
Удаление ветвлений
Оптимизация передачи аргументов
Оптимизация пролога/эпилога функций
Оптимизация распределения переменных
Оптимизация инициализации строк
Оптимизация "мертвого" кода
Оптимизация константных условий
Заключение

Смертельная схватка: Ассемблер vs. Компилятор
Краткий экскурс с историю или ассемблер – это всегда весна
Критерии оценки качества машинной оптимизации
Методики оценки качества машинной оптимизации
Методики оценки качества машинной оптимизации - 2
Сравнительный анализ основных компиляторов
Сравнительный анализ основных компиляторов - 2
Обсуждение результатов тестирования
Обсуждение результатов тестирования - 2
Наглядная демонстрация качества машинной оптимизации

Наглядная демонстрация качества машинной оптимизации - 2
Наглядная демонстрация качества машинной оптимизации - 3
Наглядная демонстрация качества машинной оптимизации - 4
Наглядная демонстрация качества машинной оптимизации - 5
Определение ситуаций предпочтительного использования ассемблера
Определение ситуаций предпочтительного использования ассемблера - 2
Определение ситуаций предпочтительного использования ассемблера - 3
Особое замечание о создании защитного кода на ассемблере
Особое замечание о создании защитного кода на ассемблере - 2
Программирование на ассемблере как особый род творчества

Заключение
Исходные тексты
Исходные тексты - 2
Содержание