Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
X
- •3. Обращение к памяти
- •3.1. Краткий обзор
- •3.2. Не спекулятивные обращения к памяти
- •3.2.1. Сохранения в память
- •3.2.2. Загрузки из памяти
- •3.2.3. Подсказки предвыборки данных
- •3.3. Зависимости инструкций
- •Раздел 3.4. Описывает определенные в архитектуре Itanium, особенности обращений к памяти, увеличивающие число зависимостей, которые могут быть удалены транслятором.
- •3.3.1. Зависимости по управлению
- •3.3.1.1. Планирование инструкций и зависимости по управлению
- •3.3.2. Зависимости по данным
- •3.3.2.1. Основы зависимости по данным
- •3.3.2.2. Зависимость по данным в архитектуре IntelItanium
- •3.3.2.3. Планирование инструкций и зависимости по данным
- •3.4. Использование спекулятивности в архитектуре IntelItaniumдля преодоления зависимостей
- •3.4.1. Модель спекулятивности в архитектуре IntelItanium
- •3.4.2. Использование спекуляции по данным в архитектуре IntelItanium
- •3.4.2.1. Примеры предварительных загрузок
- •3.4.2.2. Пример кода восстановления
- •3.4.2.3. Краткий обзор терминологии
- •3.4.3. Использование спекуляции по управлению в архитектуре IntelItanium
- •3.4.3.1. Бит NaT
- •3.4.3.2. Пример спекуляции по управлению
- •3.4.3.3. Сливания, заливания и регистр unat
- •3.4.3.4. Краткий обзор терминологии
- •3.4.4. Комбинирование спекуляций по данным и управлению
- •3.5. Оптимизация обращений к памяти
- •3.5.1. Соображения о спекуляции
- •3.5.2. Взаимное влияние данных
- •3.5.3. Оптимизация размера кода
- •3.5.4. Использование постинкрементных загрузок и сохранений.
- •3.5.5. Оптимизация циклов.
- •3.5.6. Минимизация кода проверки
- •3.6. Итоги
3.6. Итоги
Примеры в этой главе показывают, как архитектура Itaniumможет воспользоваться преимуществами существующих технологий, такими как, динамическое профилирование и снятие противоречий. Специальная архитектурная поддержка позволяет реализовать спекуляцию в обычных сценариях, где, как правило, это не позволяется. В свою очередь, спекуляция увеличиваетILP, делая код более подвижным, и таким образом, расширяет традиционные оптимизации, такие как усложненные циклы.
Даже притом, что модель спекуляции может применяться во многих различных ситуациях, необходим осторожный анализ стоимости и выгодности, для того, чтобы обеспечить наилучшую эффективность.
Соседние файлы в папке M9