Что hyper threading процессорах intel. Нужен ли Hyper-Threading в играх? Чем Core i7 лучше Core i5? OpenGL и двухпроцессорность: почему они не дружат

Если вы внимательно просматривали содержимое BIOS Setup, то вы вполне могли заметить там опцию CPU Hyper Threading Technology. И возможно, задавались вопросом, что же такое Hyper Threading(Сверехпоточность или гиперпоточность, официальное название - Hyper Threading Technology, HTT), и для чего нужна данная опция.

Hyper Threading – это сравнительно новая технология, разработанная компанией Intel для процессоров архитектуры Pentium. Как показала практика, использование технологии Hyper Threading позволило во многих случаях увеличить производительность CPU приблизительно на 20-30%.

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

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

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

История разработки

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

Поддержка технологии Hyper Threading впервые появилась в процессорах в 2002 году. Это были процессоры семейства Pentium 4 и серверные процессоры Xeon с тактовой частотой выше 2 ГГц. Первоначально технология носила кодовое название Jackson, но потом ее название сменилось на более понятное для широкой публики Hyper Threading – что можно перевести примерно как «сверхпоточность».

При этом, по утверждению Intel, поверхность кристалла процессора, поддерживающего Hyper Threading, увеличилась по сравнению с предшествующей моделью, ее не поддерживающей, всего на 5% при увеличении производительности в среднем на 20%.

Несмотря на то, что технология в целом хорошо себя зарекомендовала, тем не менее, по ряду причин корпорация Intel решила отключить технологию Hyper Threading в сменивших Pentium 4 процессорах семейства Core 2. Hyper Threading, однако, позже снова появилась в процессорах архитектур Sandy Bridge, Ivy Bridge и Haswell, будучи в них существенно переработанной.

Суть технологии

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

Несмотря на все успехи, которые были достигнуты процессорами, у них есть один существенный недостаток – они могут исполнять лишь одну инструкцию одновременно. Допустим, что вы запустили одновременно такие приложения, как текстовый редактор, браузер и Skype. С точки зрения пользователя, это программное окружение можно назвать многозадачным, однако, с точки зрения процессора это далеко не так. Ядро процессора будет выполнять по-прежнему одну инструкцию за определенный промежуток времени. При этом в задачу процессора входит распределение ресурсов процессорного времени между отдельными приложениями. Поскольку это последовательное выполнение инструкций происходит чрезвычайно быстро, вы этого не замечаете. И вам кажется, что никакой задержки не существует.

Но задержка все-таки есть. Задержка появляется из-за способа снабжения процессора данными каждой из программ. Каждый поток данных должен поступать в определенное время и обрабатываться процессором индивидуально. Технология Hyper Threading делает возможным каждому ядру процессора планировать обработку данных и распределять ресурсы одновременно для двух потоков.

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

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

Стоит вам включить компьютер с двуядерным процессором, поддерживающим Hyper Threading и открыть Windows Task Manager (Диспетчер задач) на вкладке Performance (Быстродействие), как вы обнаружите в нем четыре графика. Но это отнюдь не означает, что на самом деле у вас 4 ядра процессора.

Это происходит потому, что Windows считает, что у каждого ядра есть по два логических процессора. Термин «логический процессор» звучит забавно, но он означает процессор, которого физически не существует. Windows может посылать потоки данных к каждому логическому процессору, но на самом деле выполняет работу только одно ядро. Поэтому одно ядро с технологией Hyper Threading существенно отличается от раздельных физических ядер.

Для работы технологии Hyper Threading требуется ее поддержка со стороны следующих аппаратных и программных средств:

  • Процессор
  • Чипсет материнской платы
  • Операционная система

Преимущества технологии

Теперь рассмотрим следующий вопрос – насколько все же технология Hyper Threading увеличивает производительность компьютера? В повседневных задачах, таких, как Интернет-серфинг и набор текстов, преимущества технологии не столь очевидны. Однако следует иметь в виду, что сегодняшние процессоры настолько мощны, что повседневные задачи редко загружают процессор полностью. Кроме того, многое зависит еще и от того, как написано программное обеспечение. У вас может быть запущено сразу несколько программ, однако, посмотрев на график загрузки, вы увидите, что используется только один логический процессор на ядро. Это происходит потому, что программное обеспечение не поддерживает распределение процессов между ядрами.

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

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

Заключение

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

Hyper-Threading (hyper threading, ‘хайпер тридинг’ , гипер поточность — рус.) — технология разработанная компанией Intel , позволяющая ядру процессора исполнять больше потоков данных чем один (обычно два). Так как было выяснено, что обычный процессор в большинстве задач использует не более 70% всей вычислительной мощности, было решено использовать технологию, позволяющую при простое определённых вычислительных блоков — нагрузить их работой с другим потоком. Это позволяет увеличить производительность ядра от 10 до 80% в зависимости от задачи.

Представление, как Hyper-Threading работает .

Допустим процессор выполняет простые вычисления и при этом простаивает блок инструкций и SIMD расширения.

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

Естественно, виртуальный поток никак не дотягивает до полноценного ядра, но это позволяет добиться практически 100% эффективности вычислительной мощности, загрузив практически весь процессор работой, не давая ему простаивать. При всём при этом, для реализации технологии HT требуется всего около 5% дополнительного места на кристалле, а производительность иногда может добавиться на 50% . В эту дополнительную область входят дополнительные блоки регистров и предсказания ветвлений, которые потоково вычисляют, где можно использоваться вычислительные мощности в данный момент и отправляют туда данные из дополнительного блока адресации.

Впервые, технология появилась на процессорах Pentium 4 , но большого прироста производительности не получилось, так как сам процессор не обладал высокой вычислительной мощностью. Прирост составлял в лучшем случае 15-20% , да и во многих задачах процессор работал значительно медленнее чем без HT .

Замедление работы процессора из-за технологии Hyper Threading , происходит если:

  • Недостаточно кэша для всех данный и он циклически перезагружается, тормозя работу процессора.
  • Данные не могут быть правильно обработаны блоком предсказания ветвления. Происходит в основном из-за отсутствия оптимизации под определённое ПО или поддержки со стороны операционной системы.
  • Также может происходить из-за зависимости данных , когда к примеру, первый поток требует немедленных данных со второго, а они ещё не готовы, либо стоят на очереди в другой поток. Либо циклическим данным требуются определённые блоки для быстрой обработки, а они нагружаются другими данными. Вариаций зависимости данных может быть много.
  • Если ядро и так сильно нагружено, а «недостаточно умный» модуль предсказания ветвлений всё равно посылает данные, которые тормозят работу процессора (актуально для Pentium 4 ).

После Pentium 4 , Intel начала использовать технологию только начиная с Core i7 первого поколения, пропустив серию 2 .

Вычислительной мощности процессоров стало достаточно для полноценной реализации гиперпоточности без особого вреда, даже для не оптимизированных приложений. Позже, Hyper-Threading появилась на процессорах среднего класса и даже бюджетного и портативного. Используется на всех сериях Core i (i3 ; i5 ; i7 ) и на мобильных процессорах Atom (не на всех). Что интересно, двухъядерные процессоры с HT , получают больший выигрыш в производительности, чем четырёх ядерные от использования Hyper-Threading , становясь на 75% полноценными четырёх ядерными.

Где полезна технология HyperThreading?

Полезна она будет для использования вкупе с профессиональными, графическими, аналитическими, математическими и научными программами, видео и аудио редакторами, архиваторами (Photoshop, Corel Draw, Maya, 3D’s Max, WinRar, Sony Vegas & etc). Всем программам в которых используется большое количество вычислений, HT будет однозначно полезна полезна. Благо, в 90% случаев, такие программы неплохо оптимизированы для её использования.

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

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

На материнских платах, которые поддерживают HT , в всегда можно отключить технологию гиперпоточности.

Одним из важнейших элементов в позиционировании процессоров Intel внутри линеек, является технология Hyper-Threading . А точнее, ее отсутствие в процессоре, или наличие. За что же отвечает эта технология? Intel Hyper-Threading , это технология для эффективного использования ресурсов ядер процессора (CPU), позволяя одновременно обрабатывать несколько потоков на одно ядро.

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

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

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

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

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

В эпоху одноядерных процессоров (Intel Pentium 4), технология HT стала спасением для тех, кто не мог купить более дорогой процессор (Pentium D). Но сегодня известны случаи снижения производительности при активации HT. Почему так происходит? Все довольно просто. Для распараллеливания данных, и правильной обработки процесса тоже уходят некоторые мощности процессора. И как только физических ядер становится достаточно для обработки информации без простоя блоков, производительность немного снижается из-за отобранных технологией HT ресурсов. Поэтому самый худший вариант работы Hyper-Threading, это не отсутствие увеличения производительности, а ее снижение. Но на практике такое случается очень редко.

С выходом восьмитысячной линейки процессоров Intel семейства Core, этот вопрос стал особенно актуален – а нужен ли Hyper-Threading вообще? Ведь даже процессоры Core i5 несут в себе полноценные шесть ядер. Если не говорить о профессиональных приложениях по обработке графики, рендеринге и т.д., то есть вероятность, что шесть физических ядер хватит на все офисные приложения и игры. Поэтому, если изначально считалось, что технология HT прибавляет процессору до 30% производительности, то теперь это не аксиома, и все будет зависеть от вашего стиля работы за компьютером и набора пользуемых утилит.

Разумеется, текст был бы неполным без тестирования. Поэтому мы возьмём имеющиеся у нас процессоры Intel Core i7 8700K и 7700K , и проверим в нескольких играх и приложениях производительность процессоров с активированным Hyper-Threading , и деактивированным. По итогу тестирования станет понятно, в каких приложениях виртуальные ядра добавляют производительности, а в каких остаются незамеченными.

Популярный 3DMark не особо охотно откликается на увеличение ядер и потоков. Прирост есть, но он ничтожный.

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

В играх ситуация проще. В большинстве случаев увеличение количества потоков не дает результатов, т.е. играм достаточно 4 физических ядер, а в большинстве случаев, даже меньше. Исключение составил лишь GTA5, которая очень хорошо отозвалась на отключение НТ, и прибавила 7% производительности, и только на шестиядерном процессоре 8700К. Отключение многопоточности на 7700К не дало никаких результатов. Мы несколько раз перепрогнали бенчмарки и результаты были неизменны. Но это скорее исключение из правил. Все протестированные игр легко довольствуются четырьмя ядрами.

Одним из важнейших элементов в позиционировании процессоров Intel внутри линеек, является технология Hyper-Threading. А точнее, ее отсутствие в процессоре, или наличие. За что же отвечает эта технология? Intel Hyper-Threading, это технология для эффективного использования ресурсов ядер процессора (CPU), позволяя одновременно обрабатывать несколько потоков на одно ядро. Попробуем привести пример аналогичной системы из жизни. Представьте себе пограничный пост с контролем каждой машины, множеством таможенников и одной полосой на подъезд для автомобилей. Скапливается пробка, процесс тормозится сам по себе даже вне зависимости от скорости работы сотрудников. А учитывая, что полоса одна, то половина сотрудников просто скучает. И тут внезапно открывают еще одну полосу для автотранспорта и автомобили начинают подъезжать в два потока. Скорость работы увеличивается, свободные сотрудники начинают работать, а пробка из желающих пересечь границу становится значительно меньше. Как итог, не увеличивая размеров таможни и количества сотрудников, увеличилась пропускная способность и эффективность работы одного поста. Даже самое мощное процессорное ядро должно получать информацию без задержек, чтобы оперативно обрабатывать ее. Как только на входе образуется «пробка» из данных, процессор начинает простаивать, ожидая, когда же до него дойдет та, или иная информация для обработки. Чтобы избежать этого, в далеком 2002 году появилась технология Hyper-Threading, которая имитировала появление второго ядра в системе, благодаря чему, заполнение мощностей ядра происходило оперативней. Как показала практика, мало кто знает, как на самом деле работает технология Intel Hyper-Threading. Большинство уверено, что у них в процессоре просто живет несколько дополнительных виртуальных ядер. Но на самом деле, количество ядер не изменяется, изменяется именно количество потоков, и это критически важно. Просто у каждого ядра появляется дополнительный канал ввода-вывода информации. Ниже видео, как оно работает на самом деле. Как же устроена технология HT, и откуда берутся дополнительные потоки? На самом деле, все достаточно просто. Для реализации этой технологии, к каждому ядру дополняется один контроллер и набор регистров. Таким образом, как только поток данных становится больше, чем пропускная способность одного канала, подключается второй канал. Таким образом, устраняется простой незадействованных блоков процессора. В эпоху одноядерных процессоров (Intel Pentium 4), технология HT стала спасением для тех, кто не мог купить более дорогой процессор (Pentium D). Но сегодня известны случаи снижения производительности при активации HT. Почему так происходит? Все довольно просто. Для распараллеливания данных, и правильной обработки процесса тоже уходят некоторые мощности процессора. И как только физических ядер становится достаточно для обработки информации без простоя блоков, производительность немного снижается из-за отобранных технологией HT ресурсов. Поэтому самый худший вариант работы Hyper-Threading, это не отсутствие увеличения производительности, а ее снижение. Но на практике такое случается очень редко. С выходом восьмитысячной линейки процессоров Intel семейства Core, этот вопрос стал особенно актуален – а нужен ли Hyper-Threading вообще? Ведь даже процессоры Core i5 несут в себе полноценные шесть ядер. Если не говорить о профессиональных приложениях по обработке графики, рендеринге и т.д., то есть вероятность, что шесть физических ядер хватит на все офисные приложения и игры. Поэтому, если изначально считалось, что технология HT прибавляет процессору до 30% производительности, то теперь это не аксиома, и все будет зависеть от вашего стиля работы за компьютером и набора пользуемых утилит. Разумеется, текст был бы…

Пользователи, которые хоть раз занимались настройкой 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.

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, а мешает.