Технология Hyper-Threading - что это такое? Как включить и использовать? Hyper threading что это и зачем это

Еще в далеком феврале 2002 года дебютировала фирменная технология от компании «Интел» - Hyper-Threading. Что этотакое и почему она получила на сегодняшний день практически повсеместное распространение? Ответ на этот вопрос и не только будет рассмотрен в данном материале.

История появления технологии HT

Первым настольным процессором с поддержкой логической многопоточности стал четвертого поколения Pentium. Hyper-Threading - технология, котораяв этом случае позволяла на одном физическом ядре обрабатывать сразу два потока данных. Причем чип этот устанавливался в процессорный разъем PGA478, функционировал он в режиме 32-битных вычислений, а его тактовая частота была равна 3,06 ГГц. До этого ее можно было встретить лишь в серверных процессорных устройствах серии XEON.

После получения успешных результатов в этой нише компания «Интел» решила распространить HT и в настольный сегмент. В дальнейшем в рамках PGA478 было выпущено целое семейство таких процессоров. После того как дебютировал сокет LGA775, НТ была временно призабыта. Но с началом продаж LGA1156 она получила второе дыхание в 2009 году. С тех пор она стала обязательным атрибутом процессорных решений от «Интел», причем как в ультрапроизводительном сегменте, так в бюджетных компьютерных системах.

Концепция данной технологии

Суть технологии Intel Hyper-Threadingсводится к тому, что путем минимальных изменений в компоновке микропроцессорного устройства разработчики добиваются того, что на уровне системного и программного обеспечения код обрабатывается в два потока на одном физическом ядре. Все элементы вычислительного модуля при этом остаются без изменений, добавляются лишь специальные регистры и переработанный контроллер прерываний.

Если по каким-либо причинам физический модуль вычислений начинает простаивать, то на нем запускается второй программный поток, а первый при этом дожидается получения необходимых данных или информации. То есть если раньше простои в работе вычислительной части чипов были достаточно частыми, то практически полностью исключает такую возможность Hyper-Threading. Что это за технология, рассмотрим ниже.

На аппаратном уровне

Повышенные требования выдвигаются к аппаратному обеспечению в случае использования Hyper-Threading. Материнская плата, BIOS и процессор должны поддерживать ее. По крайней мере, в рамках процессорного разъема PGA478 на подобную совместимость необходимо было обращать повышенное внимание. Не все наборы системной логики в этом случае были ориентированы на использование НТ, как и процессорные устройства. И даже если в номенклатуре системной платы присутствовала столь желанная аббревиатура, то это вовсе не означало, что чипы правильно инициировались по той причине, что необходимо было обновить BIOS.

Кардинально изменилась ситуация в этом случае начиная с LGA1156. Данная вычислительная платформа была изначально заточена под применение Hyper-Threading. Поэтому каких-либо существенных проблем с применением последней в данном случае у пользователей не возникало. Это же самое справедливо и для последующих процессорных разъемов, таких как LGA1155, LGA1151 и LGA1150.

Аналогичным отсутствием проблем с применением НТ могли похвастаться и высокопроизводительные сокеты LGA1366, LGA2011 и LGA2011-v3. В довершение к этому прямой конкурент «Интел» - компания AMD - в последнем поколении своих процессоров для АМ4 реализовала весьма схожую технологию логической многозадачности - SMT. Она использует практически идентичную концепцию. Отличие заключается лишь в названии.

Основные компоненты со стороны программного обеспечения

Нужно отметить, что даже в случае полноценной поддержки НТ со стороны аппаратных ресурсов не всегда она будет успешно работать на уровне программного обеспечения. Для начала операционная система должна уметь работать одновременно с несколькими вычислительными ядрами. В устаревших на сегодняшний день версиях системного софта MS-DOS или Windows 98 такой возможности нет. А вот в случае Windows 10 каких-либо проблем не возникает, и эта операционная система уже изначально заточена под такие аппаратные ресурсы персонального компьютера.

Теперь разберемся с тем, как включить Hyper-Threading в Windows.Для этого на компьютере должно быть установлено все необходимое управляющее прикладное программное обеспечение. Как правило, это специальная утилита с компакт-диска системной платы. В ней есть специальная вкладка, на которой можно в режиме реального времени изменить значения в БИОСе. Это, в свою очередь, приводит к тому, что уже в нем опция Hyper-Threading переходит в положение Enabled, а также активируются дополнительные логические потоки, причем даже без перезагрузки операционной системы.

Включение технологии

Многие начинающие пользователи достаточно часто на первоначальном этапе использования нового компьютера задаются одним важным вопросом относительно Hyper-Threading: как включитьее? Существует два возможных способа решения этой задачи. Один из них - это использование БИОСа. В этом случае необходимо выполнить такие действия:

  • При включении ПК инициализируем процедуру входа в БИОС. Для этого достаточно при появлении тестового экрана зажать кнопку DEL (в некоторых случаях необходимо зажимать F2).
  • После появления синего экрана переходим с применением навигационных клавиш на вкладку ADVANCED.
  • Затем на ней находим пункт Hyper-Threading.
  • Напротив него необходимо установить значение Enabled.

Ключевой недостаток данного способа - это необходимость перезагрузки персонального компьютера для выполнения данной операции. Реальной альтернативой ей является использование конфигурационной утилиты системной платы. Этот метод был детально описан в предыдущем разделе. И в этом случае заходить в БИОС совсем не обязательно.

Отключение НТ

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

  1. При загрузке электронно-вычислительной машины заходим в базовую систему ввода — вывода (второе ее название BIOS) по ранее изложенной методике.
  2. Перемещаемся с применением клавиш управления курсором в пункт меню Advanced.
  3. Далее необходимо найти пункт меню Hyper-Threading (в некоторых моделях системных плат он может обозначаться как НТ). Напротив него с помощью кнопок PG DN и PG UP устанавливаем значение Disabled.
  4. Сохраняем снесенные изменения с помощью F10.
  5. Выходим из БИОСа и перезагружаем персональный компьютер.

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

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

Модели процессоров с поддержкой НТ

Изначально, как было уже отмечено ранее, поддержка Hyper-Threading была реализована лишь только в процессорных устройствах серии Pentium 4 и только в исполнении PGA478. А вот уже в рамках LGA1156 и более поздних вычислительных платформ рассматриваемая в рамках данного материала технология использовалась практически во всех возможных моделях чипов. С ее помощью процессоры Celeron превращались из одноядерного в двухпоточное решение. В свою очередь, Penrium и i3 с ее помощью могли уже обрабатывать 4 потока кода. Ну а флагманские решения серии i7 способны одновременно работать с 8 логическими процессорами.

Для наглядности приведем применение НТ в рамках актуальной вычислительной платформы от Intel - LGA1151:

  • ЦПУ серии Celeron не поддерживают эту технологию и имеют всего 2 вычислительных блока.
  • Чипы линейки Pentium оснащены 2 ядрами и четырьмя потоками. Как результат, НТ в этом случае поддерживается в полном объеме.
  • Аналогичную компоновку имеют и более производительные процессорные устройства модельного ряда Core i3: 2 физических модуля могут работать в 4 потока.
  • Как и наиболее бюджетные чипы Celeron, Core i5 не оснащены поддержкой НТ.
  • Флагманские решения i7 тоже поддерживают HT. Только в этом случае вместо 2 реальны ядер есть уже 4 блока обработки кода. Они, в свою очередь, уже могут работать в 8 потоков.

Hyper-Threading - что этоза технология и каково ее основное назначение? Это логическая многозадачность, которая позволяет путем минимальных корректировок аппаратного обеспечения увеличить производительность компьютерной системы в целом.

В каких случаях эту технологию наиболее оптимально использовать?

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

Преимущества и недостатки

Есть определенные недостатки у технологии Intel Hyper-Threading. Первый из них - это возросшая стоимость ЦПУ. Но большее быстродействие и улучшенная компоновка кремниевого кристалла в любом случае увеличат цену ЦПУ. Также возросшая площадь полупроводниковой основы процессорного устройства приводит к повышению уровня потребляемой мощности и температуры. Разница в этом случае несущественная, и она не превышает 5 %, но она все-таки есть. Больше каких-либо существенных недостатков в этом случае нет.

Теперь о преимуществах. На быстродействие и производительность фирменная технология НТ от компании «Интел» не оказывает, то есть ниже определенного порога у такого компьютера опуститься не получится. Если же программное обеспечение прекрасно поддерживает распараллеленные вычисления, то будет наблюдаться определённый прирост быстродействия и, конечно же, производительности.

Как показывают тесты, в некоторых случаях прирост может достигать 20 %. Наиболее оптимизированным софтом в этом случае являются различные перекодировщики мультимедийного контента, архиваторы и графические пакеты. А вот с играми все уж не так и хорошо. Они, в свою очередь, способны работать в 4 потока, и, как результат, флагманские чипы не способны в этом случае опередить процессорные решения среднего уровня.

Современная альтернатива от AMD

Технология Hyper-Threadingне единственная в своем роде на сегодняшний день. У нее есть реальная альтернатива. Компания AMD с выпуском платформы АМ4 предложила ей достойного конкурента в лице SMT. На аппаратном уровне это идентичные решения. Только вот флагман от «Интел» может обработать 8 потоков, а ведущий чип AMD - 16. Уже одно это обстоятельство указывает на то, что более перспективным является второе решение.

Поэтому компания «Интел» вынуждена в срочном порядке корректировать свои планы по выпуску продукции и предлагать совершенно новые процессорные решения, которые смогут составить достойную конкуренцию новичкам от AMD. Только вот на сегодняшний день они еще не переставлены. Поэтому если нужна доступная компьютерная платформа, то лучше выбирать LGA1151 от «Интел». Если необходим задел по производительности, то предпочтительней будет уже АМ4 от AMD.

20 января 2015 в 19:43

Еще раз о Hyper-Threading

  • Тестирование IT-систем ,
  • Программирование

Было время, когда понадобилось оценить производительность памяти в контексте технологии Hyper-threading . Мы пришли к выводу, что ее влияние не всегда позитивно. Когда появился квант свободного времени, возникло желание продолжить исследования и рассмотреть происходящие процессы с точностью до машинных тактов и битов, используя программное обеспечение собственной разработки.

Исследуемая платформа

Объект экспериментов – ноутбук ASUS N750JK c процессором Intel Core i7-4700HQ. Тактовая частота 2.4GHz, повышаемая в режиме Intel Turbo Boost до 3.4GHz. Установлено 16 гигабайт оперативной памяти DDR3-1600 (PC3-12800), работающей в двухканальном режиме. Операционная система – Microsoft Windows 8.1 64 бита.

Рис.1 Конфигурация исследуемой платформы.

Процессор исследуемой платформы содержит 4 ядра, что при включении технологии Hyper-Threading обеспечивает аппаратную поддержку 8 потоков или логических процессоров. Эту информацию Firmware платформы передает операционной системе посредством ACPI-таблицы MADT (Multiple APIC Description Table). Поскольку платформа содержит только один контроллер оперативной памяти, таблица SRAT (System Resource Affinity Table), декларирующая приближенность процессорных ядер к контроллерам памяти, отсутствует. Очевидно, исследуемый ноутбук не является NUMA-платформой , но операционная система, в целях унификации, рассматривает его как NUMA-систему с одним доменом, о чем говорит строка NUMA Nodes = 1. Факт, принципиальный для наших экспериментов – кэш память данных первого уровня имеет размер 32 килобайта на каждое из четырех ядер. Два логических процессора, разделяющие одно ядро, используют кэш-память первого и второго уровней совместно.

Исследуемая операция

Исследовать будем зависимость скорости чтения блока данных от его размера. Для этого выберем наиболее производительный метод, а именно чтение 256-битных операндов посредством AVX-инструкции VMOVAPD. На графиках по оси X отложен размер блока, по оси Y – скорость чтения. В окрестности точки X, соответствующей размеру кэш-памяти первого уровня, ожидаем увидеть точку перегиба, поскольку производительность должна упасть после того, как обрабатываемый блок выйдет за пределы кэш-памяти. В нашем тесте, в случае многопоточной обработки, каждый из 16 инициируемых потоков, работает с отдельным диапазоном адресов. Для управления технологией Hyper-Threading в рамках приложения, в каждом из потоков используется API-функция SetThreadAffinityMask, задающая маску, в которой каждому логическому процессору соответствует один бит. Единичное значение бита разрешает использовать заданный процессор заданным потоком, нулевое значение – запрещает. Для 8 логических процессоров исследуемой платформы, маска 11111111b разрешает использовать все процессоры (Hyper-Threading включен), маска 01010101b разрешает использовать по одному логическому процессору в каждом ядре (Hyper-Threading выключен).

На графиках используются следующие сокращения:

MBPS (Megabytes per Second) скорость чтения блока в мегабайтах в секунду ;

CPI (Clocks per Instruction) количество тактов на инструкцию ;

TSC (Time Stamp Counter) счетчик процессорных тактов .

Примечание.Тактовая частота регистра TSC может не соответствовать тактовой частоте процессора при работе в режиме Turbo Boost. Это необходимо учитывать при интерпретации результатов.

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

Опыт №1. Один поток



Рис.2 Чтение одним потоком

Максимальная скорость 213563 мегабайт в секунду. Точка перегиба имеет место при размере блока около 32 килобайт.

Опыт №2. 16 потоков на 4 процессора, Hyper-Threading выключен



Рис.3 Чтение шестнадцатью потоками. Количество используемых логических процессоров равно четырем

Hyper-Threading выключен. Максимальная скорость 797598 мегабайт в секунду. Точка перегиба имеет место при размере блока около 32 килобайт. Как и ожидалось, по сравнению с чтением одним потоком, скорость выросла приблизительно в 4 раза, по количеству работающих ядер.

Опыт №3. 16 потоков на 8 процессоров, Hyper-Threading включен



Рис.4 Чтение шестнадцатью потоками. Количество используемых логических процессоров равно восьми

Hyper-Threading включен. Максимальная скорость 800722 мегабайт в секунду, в результате включения Hyper-Threading почти не выросла. Большой минус – точка перегиба имеет место при размере блока около 16 килобайт. Включение Hyper-Threading немного увеличило максимальную скорость, но падение скорости теперь наступает при вдвое меньшем размере блока – около 16 килобайт, поэтому существенно упала средняя скорость. Это не удивительно, каждое ядро имеет собственную кэш-память первого уровня, в то время, как логические процессоры одного ядра, используют ее совместно.

Выводы

Исследованная операция достаточно хорошо масштабируется на многоядерном процессоре. Причины – каждое из ядер содержит собственную кэш-память первого и второго уровней, размер целевого блока сопоставим с размером кэш-памяти, и каждый из потоков работает со своим диапазоном адресов. В академических целях мы создали такие условия в синтетическом тесте, понимая, что реальные приложения обычно далеки от идеальной оптимизации. А вот включение Hyper-Threading, даже в этих условиях дало негативный эффект, при небольшой прибавке пиковой скорости, имеет место существенный проигрыш в скорости обработки блоков, размер которых находится в диапазоне от 16 до 32 килобайт.

15.03.2013

Технология Hyper-Threading появилась в процессорах Intel, страшно сказать, уже больше 10 лет назад. И в данный момент она является важным элементов процессоров Core. Однако вопрос в необходимости HT в играх все еще до конца не понятен. Мы решили провести тест, чтобы понять, нужен ли геймерам Core i7, или лучше обойтись Core i5. А также выяснить насколько Core i3 лучше Pentium.


Hyper-Threading Technology, разработанная компанией Intel, и эксклюзивно используемая в процессорах компании, начиная с достопамятного Pentium 4, в данный момент является чем-то само собой разумеющимся. Ею оснащено значительное число процессоров текущего и предыдущих поколений. Будет она использоваться и в ближайшем будущем.

И необходимо признать, что технология Hyper-Threading полезна, и позитивно влияет на производительность, иначе Intel не стала бы использовать ее для позиционирования своих процессоров внутри линейки. Причем не как второстепенный элемент, а один из важнейших, если не самый важный. Чтобы было понятно, о чем мы говорим, мы подготовили табличку, которая позволяет легко оценить принцип сегментирования процессоров Intel.


Как видите отличий между Pentium и Core i3, а также между Core i5 и Core i7 совсем мало. Фактически модели i3 и i7, отличаются от Pentium и i5 только размером кэша третьего уровня приходящимся на одного ядро (не считая тактовой частоты, конечно). У первой пары это 1,5 мегабайта, а у второй – 2 мегабайта. Это отличие не может коренным образом повлиять на производительность процессоров, так как разница в объеме кэша сильно мала. Именно поэтому Core i3 и Core i7 получили поддержку технологии Hyper-Threading, которая и является главным элементом, позволяющим этим процессорам иметь преимущество в производительности над Pentium и Core i5, соответсвенно.

В итоге чуть больший кэш и поддержка Hyper-Threading позволят выставлять значительно более высокие цены на процессоры. Для примера процессоры линейки Pentium (около 10 тыс. тенге) примерно в два раза дешевле, чем Core i3 (около 20 тыс. тенге), и это притом, что физически, на аппаратном уровне они абсолютно одинаковы, и, соответсвенно, имеют одинаковую себестоимость. Разница в цене между Core i5 (около 30 тыс. тенге) и Core i7 (около 50 тыс. тенге) также очень велика, хоть и меньше двух крат в младших моделях.


Насколько обоснована такая прибавка в цене? Какой реальный прирост дает Hyper-Threading? Ответ давно известен: прирост бывает разный – все зависит от приложения и его оптимизации. Мы решили проверить, что дает HT в играх, как одним из самых требовательных “бытовых” приложений. К тому же данный тест будет отличным дополнением к нашему предыдущему материалу посвященному влиянию количества ядер в процессоре на игровую производительность .

Перед тем как переходить к тестам, давайте вспомним (ну или узнаем), что такое Hyper-Threading Technology. Как высказывалась сама Intel, представляя данную технологию много лет назад, ничего особенно сложного в ней нет. Фактически, все что нужно для внесения HT на физическом уровне – это добавление к одному физическому ядру не одного набора регистров и контроллера прерываний, а двух. В процессорах Pentium 4 эти дополнительные элементы увеличивали количество транзисторов всего на пять процентов. В современных ядрах Ivy Bridge (равно как и в Sandy Bridge, и будущем Haswell) дополнительные элементы даже для четырех ядер не увеличивают кристалл даже на 1 процент.


Дополнительные регистры и контроллер прерываний, вкупе с программной поддержкой позволяют операционной системе видеть не одно физическое ядро, а два логических. При этом обработка данных двух потоков, которые отправляются системой все также идет на одном ядре, но с некоторыми особенностями. В распоряжении одного потока все также остается весь процессор, но как только какие-то блоки CPU освобождаются и простаивают, то они тут, же отдаются в распоряжение второго потока. Благодаря этому удалось задействовать все блоки процессора одновременно, и тем самым увеличить его эффективность. Как заявляла сама Intel, прирост производительности в идеальных условиях может доходить до 30 процентов. Правда, данные показатели верны только для Pentium 4 с его очень длинным конвейером, у современных процессоров выгода от HT меньше.

Но идеальные условия для Hyper-Threading бывают далеко не всегда. И что самое важное – худший результат работы HT – это не отсутствие прироста производительности, а ее снижение. То есть при определенных условиях, производительность процессора с HT будет падать относительно процессора без HT из-за того, что накладные расходы на разделение потоков и организацию очереди будут значительно превышать прирост от обсчета параллельных потоков, который возможен в данном конкретном случае. И такие случаи встречаются гораздо чаще, чем хотелось бы Intel. Причем многие годы использования Hyper-Threading не улучшили ситуацию. Особенно это касается игр, весьма сложных и отнюдь нешаблонных с точки зрения обсчета данных, приложений.

Для того чтобы выяснить влияние Hyper-Threading на игровую производительность, мы вновь использовали наш многострадальный тестовый процессор Core i7-2700K, и симулировали с помощью отключения ядер и включения/выключения HT, сразу четыре процессора. Условно их можно назвать Pentium (2 ядра, HT выключен), Core i3 (2 ядра, HT включен), Core i5 (4 ядра, HT выключен), и Core i7 (4 ядра, HT включен). Почему условно? Прежде всего, потому, что по некоторым характеристикам они не соответствуют реальным продуктам. В частности отключение ядер не ведет к соответствующему урезанию объема кэша третьего уровня – его объем для всех равен 8 мегабайтам. А, кроме того, все наши “условные” процессоры работают на одинаковой частоте 3,5 гигагерца, которая пока достигнута не всеми процессорами линейки Intel.


Впрочем, это даже к лучшему, так как благодаря неизменности всех важных параметров мы сможем выяснить реальное влияние Hyper-Threading на игровую производительность без каких-либо оговорок. Да и процентная разница в производительности между нашими “условными” Pentium и Core i3 будет близка к разнице между реальными процессорами при условии равных частот. Также не должно смущать то, что мы используем процессор с архитектурой Sandy Bridge, так как наши тесты эффективности, о которых вы можете прочитать в статье “Голая производительность - Исследуем эффективность ALU и FPU ”, показали, что влияние Hyper-Threading в последних поколениях процессоров Core остается неизменным. Скорее всего, актуальным данный материал окажется и для грядущих процессоров Haswell.

Ну что же, вроде все вопросы относительно методики тестирования, а также особенностей функционирования Hyper-Threading Technology обсуждены, а потому пора переходить к самому интересному – тестам.

Еще в тесте, в котором мы изучали влияние количества процессорных ядер на игровую производительность, мы выяснили, что 3DMark 11 совершенно спокойно относится к производительности CPU, отлично работая даже на одном ядре. Такое же “мощное” влияние оказал и Hyper-Threading. Как видите, тест абсолютно не замечает различий между Pentium и Core i7, не говоря уже о промежуточных моделях.

Metro 2033

А вот Metro 2033 явно заметила появление Hyper-Threading. И отреагировала на него негативно! Да, именно так: включение HT в данной игре оказывает негативное влияние на производительность. Небольшое влияние, конечно – 0,5 кадра в секунду при четырех физических ядрах, и 0,7 при двух. Но этот факт дает все основания заявить, что в Metro 2033 Pentium быстрее, чем Core i3, а Core i5 лучше, чем Core i7. Вот оно подтверждение того факта, что Hyper-Threading показывает свою эффективность не всегда и не везде.

Crysis 2

Эта игра показала очень интересные результаты. Прежде всего, отметим, что влияние Hyper-Threading хорошо заметно в двуядерных процессорах – Core i3 опередил Pentium почти на 9 процентов, что для этой игры совсем немало. Победа HT и Intel? Не совсем, так как Core i7 не показал никакого прироста относительно заметно более дешевого Core i5. Но этому есть разумное объяснение – Crysis 2 не умеет использовать больше четырех потоков данных. Из-за этого мы видим хороший прирост у двуядерника с HT – все же лучше четыре потока, хоть и логических, чем два. С другой стороны, дополнительные потоки Core i7 девать уже было некуда, там вполне хватало четырех физических ядер. Так что по результатам данного теста можно отметить положительное влияние HT в Core i3, который здесь заметно лучше Pentium. А вот среди четырехядерников Core i5 вновь выглядит более разумным решением.

Battlefield 3

Здесь результаты очень странные. Если в тесте на количество ядер, battlefield был образцом микроскопического, но линейного прироста, то включение Hyper-Threading внесло в результаты хаос. По факту можно констатировать, что Core i3, со своими двумя ядрами и HT оказался лучшим из всех, опередив даже Core i5 и Core i7. Странно, конечно, но, в то же время, Core i5 и Core i7 вновь оказались на одном уровне. Чем это объясняется не ясно. Скорее всего тут сыграла свою роль методика тестирования в этой игре, которая дает большие погрешности, нежели стандартные бенчмарки.

В прошлом тесте F1 2011 проявила себя как одна из игр, очень критично относящихся к количеству ядер, а в этом вновь удивила отменным влиянием на производительность технологии Hyper-Threading. Причем вновь, как и в Crysis 2, очень хорошо включение HT показало себя на двуядерных процессорах. Посмотрите на разницу между нашими условными Core i3 и Pentium – она более чем двукратная! Явно видно, что игре очень сильно не хватает двух ядер, и при этом ее код так хорошо распараллеливается, что эффект получился потрясающим. С другой стороны, против четырех физических ядер не попрешь – Core i5 заметно быстрее Core i3. А вот Core i7, вновь, как и в предыдущих играх не показал ничего выдающегося на фоне Core i5. Причина все та же – игра не умеет использовать больше 4 потоков, а накладные расходы на работу HT снижают производительность Core i7 ниже уровня Core i5.

Старому вояке Hyper-Threading не нужнее, чем ежу футболка – его влияние отнюдь не так ярко заметно как в F1 2011 или Crysis 2. При этом все же отметим, что 1 лишний кадр включение HT на двуядерном процессоре принесло. Этого конечно маловато, чтобы сказать, что Core i3 лучше, чем Pentium. По крайней мере, это улучшение явно не соответствует разнице в цене этих процессоров. А уж о разнице в цене между Core i5 и Core i7 даже вспоминать не стоит, так как процессор без поддержки HT вновь оказался быстрее. Причем заметно быстрее – на 7 процентов. Как ни крути, а вновь констатируем факт, что четыре потока это максимум для этой игры, а потому HyperThreading в данном случае не помогает Core i7, а мешает.

Пользователи, которые хоть раз занимались настройкой BIOS, уже вероятно замечали, что там встречается непонятный многим параметр Intel Hyper Threading. Многие не знают, что это за технология и с какой целью она используется. Попробуем разобраться, что собой представляет Hyper Threading и как можно включить использование этой поддержки. Также постараемся разобраться, какие преимущества для работы компьютера дает данная настройка. Здесь в принципе нет ничего сложного для понимания.

Intel Hyper Threading: что это такое?
Если не лезть глубоко в дебри компьютерной терминологии, а выражаться простым языком, то данная технология была разработана для того, чтобы увеличить поток команд, обрабатываемых одновременно центральным процессором. Современные процессорные чипы, как правило, используют имеющиеся вычислительные возможности всего на 70%. Остальное остается, так сказать, про запас. Что же касается обработки потока данных, то в большинстве случаев используется всего один поток, несмотря на то, что в системе применяется многоядерный процессор.

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

Историческая справка
Окунемся немного в историю данной разработки. Поддержка Hyper Threading впервые появилась только в процессорах Intel Pentium 4. Позже реализация данной технологии была продолжена в серии Intel Core iX (X здесь обозначает серии процессоров). Стоит отметить, что в линейке процессорных чипов Core 2 она по какой-то причине отсутствует. Правда, тогда прирост производительности был довольно слабым: где-то на уровне 15-20%. Это говорило о том, что процессор не обладал необходимой вычислительной мощностью, а созданная технология практически обогнала свое время. Сегодня поддержка технологии Hyper Threading имеется уже практически во всех современных чипах. Для увеличения мощности центрального процессора сам процесс использует всего 5% поверхности кристалла, оставляя при этом место для обработки команд и данных.

Вопрос конфликтов и производительности
Все это конечно хорошо, но при обработке данных в некоторых случаях может наблюдаться замедление работы. Это по большей части связано с так называемым модулем предсказания ветвления и недостаточным объемом кэша, когда осуществляется его постоянная перезагрузка. Если же говорить об основном модуле, то в данном случае ситуация складывается так, что в некоторых случаях первый поток может потребовать данные из второго, которые могут в этот момент оказаться не обработаны или находятся в очереди на обработку. Также не менее распространенными являются ситуации, когда ядро центрального процессора имеет очень серьезную нагрузку, а основной модуль несмотря на это, продолжает посылать не него данные. Некоторые программы и приложения, например, ресурсоемкие онлайн-игры, могут серьезно притормаживать только по тому, что в них отсутствует оптимизация под применение технологии Hyper Threading. Что же получается с играми? Пользовательская компьютерная система со своей стороны пытается оптимизировать потоки данных из приложения на сервере. Проблема в том, что игра не умеет самостоятельно распределять потоки данных, сваливая все в одну кучу. По большому счету, она может быть просто не рассчитана на это. Иногда в двухядерных процессорах рост производительности получается существенно выше, чем в 4-ядерных. Просто у последних не хватает вычислительной мощности.

Как включить Hyper Threading в BIOS?
Мы уже немного разобрались с тем, что собой представляет технология Hyper Threading, и познакомились с историей ее развития. Мы вплотную подобрались к пониманию того, что собой представляет технология Hyper Threading. Как активировать данную технологию для использования в работе процессора? Здесь все делается достаточно просто. Необходимо использовать подсистему управления BIOS. Вход в подсистему осуществляется при использовании клавиш Del, F1, F2, F3, F8, F12, F2+Del и т.д. Если вы используете ноутбук Sony Vaio, то для них предусмотрен специфичный вход при использовании специализированной клавиши ASSIST. В настройках BIOS, если используемый вами процессор поддерживает технологию Hyper Threading, должна иметься специальная строка настройка. В большинстве случаев она выглядит как Hyper Threading Technology, а иногда – как Function. В зависимости от разработчика подсистемы и версии BIOS, настройка данного параметра может содержаться либо в главном меню, либо в расширенных настройках. Чтобы задействовать данную технологию, необходимо войти в меню параметров и установить значение на Enabled. После этого необходимо сохранить выполненные изменения и осуществить перезагрузку системы.

Чем полезна технология Hyper Threading?
В заключение хотелось бы говорить о преимуществах, которые дает использование технологии Hyper Threading. Для чего все это нужно? Зачем необходимо увеличить мощность процессора при обработке информации? Тем пользователям, которые работают с ресурсоемкими приложениями и программами, ничего объяснять не нужно. Многие наверняка знают, что графические, математические, проектировочные пакеты программ в процессе работы требуют очень много системных ресурсов. Из-за этого вся система нагружается настолько, что начинает жутко тормозить. Чтобы этого не происходило, рекомендуется активировать поддержку Hyper Threading.