logo
Методичка

7.3.3 Аппаратные средства мультитредовой архитектуры

На аппаратные средства возлагаются функции обхода ГУЗ, назначения сегментов на процессоры и выполнения этих сегментов при сохранении последовательной семантики программы. Работа по определению порядка назначения сегментов на выполнение возлагается на программу планировщик. По адресу описателя сегментов программа планировщик выбирает описатель сегмента и назначает сегмент на процессор, выдает адрес первой команды, устанавливает маски создания и накопления для сегмента. Планировщик, используя статическую или динамическую схему предсказания на основе информации из описателя сегмента, предсказывает сегмент-преемник. Каждый процессор независимо выбирает и выполняет команды сегмента до тех пор, пока не сталкивается с командой останова, идентифицирующей завершение сегмента.

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

Бесполезные такты вычисления представляют работу, которая в последующем будет отменена ввиду использования неправильных значений данных или неправильного предсказания. Такты ожидания связаны с ожиданием получения значения, созданного командой в сегменте-предшественнике, или значения, созданного командой в том же самом сегменте (например, в случае операции с большим временем выполнения или ввиду неудачного обращения в кэш), а также с ожиданием при выполнении действий по перепланированию сегментов. Неактивные такты составляют время, в течение которого процессор не имеет назначенного сегмента. Основной причиной их возникновения является несбалансированность загрузки процессоров.

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