Основы САПР пищевых производств. Коротков В.Г - 65 стр.

UptoLike

65
Итак, как же реализуется Hyper-Threading на практике? Для
программиста и операционной системы процессор с поддержкой этой
технологии представляется как пара логических процессоров [4].
На этапе выборки и дешифрации команд данная технология не вносит
никаких изменений. Но после того как команды «разложены» на микроинструк-
ции, становится возможным параллельное исполнение двух потоков если, к
примеру, текущая инструкция из первого потока осуществляет сложение целых
чисел, а из второго - умножение вещественных, то они будут выполняться
одновременно, задействовав ALU и FPU соответственно. При этом для каждой
из них будут выделяться логические регистры путем переименования
физических. Естественно, может возникнуть конфликтная ситуация, когда
обоим потокам потребуются одни и те же исполнительные устройства. В этом
случае процессор сам решает, какой из потоков имеет больший приоритет. С
другой стороны, если исполняемый поток перейдет в режим ожидания, то он
закроет доступ к исполнительным устройствам, находящимся в его распо-
ряжении. Чтобы предотвратить подобную ситуацию, при которой
быстродействие может снизиться, разработчики рекомендуют заменять пустые
циклы ожидания специальной командой PAUSE [4].
В процессоре Pentium 4 с технологией Hyper-Threading кэши команд и
данных являются разделяемыми. Поэтому если каждому потоку необходимо
задействовать все доступное пространство «процессорной памяти», то
неизбежно возникнут большие задержки, связанные с постоянной подкачкой
данных из оперативной памяти то для одного, то для другого потока.
Таким образом, для корректной работы Hyper-Threading необходима
перекомпиляция программ, иначе быстродействие может даже снизиться. Кро-
ме того, для достижения максимальной производительности, скорее, всего,
потребуется оптимизировать сам алгоритм. Также не все операционные
системы корректно поддерживают Hyper-Threading. Из наиболее
распространенных отметим лишь Microsoft Windows XP.
Тесты процессоров Intel Pentium 4 с Hyper-Threading указывают на то, что
во многих приложениях, работающих «в одиночку», данная технология не
приводит к заметному росту быстродействия.
Например, технология Hyper-Threading снижает скорость вычислений при
работе с пакетом программ AutoCAD, который используется в САПР. Но
наибольший прирост производительности (до 30 – 40 %) Hyper-Threading
обеспечивает при одновременном выполнении нескольких приложений [4].
На физическом уровне технология Hyper-Threading реализована в
следующих элементах: буфер потока инструкций, буфер трансляции команд,
указатель следующей инструкции, блок возврата в стек инструкций, буфер с
таблицами псевдонимов регистров, кэш с отслеживанием исполнения следую-
щей инструкции и кэш с отслеживанием заполнения буфера инструкций [4].
Очередной модификаций Pentium 4 стала модель на ядре Prescott. Это пер-
вый в мире процессор, изготовленный по технологическим нормам 0,09 мкм.
Теоретически рабочая частота процессоров на ядре Prescott может достичь 5
ГГц.
      Итак, как же реализуется Hyper-Threading на практике? Для
программиста и операционной системы процессор с поддержкой этой
технологии представляется как пара логических процессоров [4].
    На этапе выборки и дешифрации команд данная технология не вносит
никаких изменений. Но после того как команды «разложены» на микроинструк-
ции, становится возможным параллельное исполнение двух потоков если, к
примеру, текущая инструкция из первого потока осуществляет сложение целых
чисел, а из второго - умножение вещественных, то они будут выполняться
одновременно, задействовав ALU и FPU соответственно. При этом для каждой
из них будут выделяться логические регистры путем переименования
физических. Естественно, может возникнуть конфликтная ситуация, когда
обоим потокам потребуются одни и те же исполнительные устройства. В этом
случае процессор сам решает, какой из потоков имеет больший приоритет. С
другой стороны, если исполняемый поток перейдет в режим ожидания, то он
закроет доступ к исполнительным устройствам, находящимся в его распо-
ряжении. Чтобы предотвратить подобную ситуацию, при которой
быстродействие может снизиться, разработчики рекомендуют заменять пустые
циклы ожидания специальной командой PAUSE [4].
      В процессоре Pentium 4 с технологией Hyper-Threading кэши команд и
данных являются разделяемыми. Поэтому если каждому потоку необходимо
задействовать все доступное пространство «процессорной памяти», то
неизбежно возникнут большие задержки, связанные с постоянной подкачкой
данных из оперативной памяти то для одного, то для другого потока.
    Таким образом, для корректной работы Hyper-Threading необходима
перекомпиляция программ, иначе быстродействие может даже снизиться. Кро-
ме того, для достижения максимальной производительности, скорее, всего,
потребуется оптимизировать сам алгоритм. Также не все операционные
системы    корректно    поддерживают      Hyper-Threading.    Из   наиболее
распространенных отметим лишь Microsoft Windows XP.
    Тесты процессоров Intel Pentium 4 с Hyper-Threading указывают на то, что
во многих приложениях, работающих «в одиночку», данная технология не
приводит к заметному росту быстродействия.
    Например, технология Hyper-Threading снижает скорость вычислений при
работе с пакетом программ AutoCAD, который используется в САПР. Но
наибольший прирост производительности (до 30 – 40 %) Hyper-Threading
обеспечивает при одновременном выполнении нескольких приложений [4].
      На физическом уровне технология Hyper-Threading реализована в
следующих элементах: буфер потока инструкций, буфер трансляции команд,
указатель следующей инструкции, блок возврата в стек инструкций, буфер с
таблицами псевдонимов регистров, кэш с отслеживанием исполнения следую-
щей инструкции и кэш с отслеживанием заполнения буфера инструкций [4].
    Очередной модификаций Pentium 4 стала модель на ядре Prescott. Это пер-
вый в мире процессор, изготовленный по технологическим нормам 0,09 мкм.
Теоретически рабочая частота процессоров на ядре Prescott может достичь 5
ГГц.
                                                                          65