Современные высокопроизводительные компьютеры




Устранение зависимостей по данным и механизмы динамического планирования - часть 7


Она состоит из 3-х частей:

  1. Состояние команды - показывает каждый из четырех этапов выполнения команды.
  2. Состояние функциональных устройств - имеются 9 полей, описывающих состояние каждого функционального устройства:

Занятость - показывает, занято устройство или свободно Op - выполняемая в устройстве операция Fi - регистр результата Fj, Fk - регистры-источники операндов Qj, Qk - функциональные устройства, вырабатывающие результат для записи в регистры Fj, Fk

Rj, Rk - признаки готовности операндов в регистрах Fj, Fk

  • Состояние регистров результата - показывает функциональное устройство, которое будет записывать в каждый из регистров. Это поле устанавливается в ноль, если отсутствуют команды, записывающие результат в данный регистр.

    Интересным вопросом является стоимость и преимущества централизованного управления. Разработчики CDC 6600 оценивают улучшение производительности для программ на Фортране в 1.7 раза, а для вручную запрограммированных на языке ассемблера программ в 2.5 раза. Однако эти оценки делались в то время, когда отсутствовали программные средства планирования загрузки конвейера, полупроводниковая основная память и кэш-память (с малым временем доступа). Централизованная схема управления CDC 6600 имела примерно столько же логических схем, что и одно из функциональных устройств, что на удивление мало. Основная стоимость определялась большим количеством шин (магистралей) - примерно в четыре раза больше по сравнению с машиной, которая выполняла бы команды в строгом порядке, заданном программой.

    Централизованная схема управления не обрабатывает несколько ситуаций. Например, когда команда записывает свой результат, зависимая команда в конвейере должна дожидаться разрешения обращения к регистровому файлу, поскольку все результаты всегда записываются в регистровый файл и никогда не используется методика "ускоренной пересылки". Это увеличивает задержку и ограничивает возможность инициирования нескольких команд, ожидающих результата. Что касается CDC 6600, то конфликты типа WAW являются очень редкими, так что приостановки, которые они вызывают, возможно не являются существенными.


    Содержание  Назад  Вперед