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

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

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

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

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

Заключение: HT более полезна, чем тактовые частоты



HT не означает радикального сдвига от существующей архитектуры Pentium 4, равно как она не потребует от программистов освоения новых навыков. Преимущества от HT получат только пользователи, в то время как переход на HT будет прозрачен для разработчиков. Приложения, умеющие использовать многопроцессорность, будут точно так же задействовать и два логических процессора HyperThreading. В соответствии с нашими тестами, HT приводит к заметному увеличению производительности независимо от тактовых частот 3,06 ГГц Pentium 4. Причем увеличение производительности работающего приложения не учитывает другие преимущества многозадачности, типа мгновенного открытия документа PowerPoint параллельно с работающим в фоне антивирусным приложением.

Однако сегодня только Windows XP умеет корректно работать с HyperThreading среди операционных систем Windows, поэтому старые версии ставить на машину с HT бесполезно.

В заключение хотелось бы сказать, что с таким большим количеством улучшений, не зависящих от тактовой частоты, Intel, возможно, прекратит упорствовать на гонке мегагерц с AMD. Нельзя не приветствовать, что Intel решила обратить внимание пользователей на свои процессоры не только мегагерцами
 

Copyright @ by Lehach, 2009