Ваш браузер устарел. Рекомендуем обновить его до последней версии.

Что такое Hyper-Threading и зачем он нужен?

 

   Компания Intel ещё с начала 2000-х годов предлагает процессоры с технологией Hyper-Threading или HT. Дебютировала эта технология в процессорах семейства Xeon, и через короткое время перешла и в десктопные процессоры Pentium. Исчезнув из процессоров серии Core 2, Hyper-Threading возродилась в Core i3 и Core i7. И когда приходит время купить новый процессор, системный блок или компьютер, возникает вопрос: что такое Hyper-Threading и стоит ли тратить дополнительные деньги на процессор с этой технологией?

    Результат работы технологии Hyper-Therading («гиперпоточность» по-русски) прост: удвоение количества процессорных ядер. Например, большинство процессоров семейства Core i7 имеет всего 4 процессорных ядра, но если активировать в BIOS (UEFI) материнской платы технологию HT, то операционная система будет считать, что процессор имеет все 8 ядер. Как работает Hyper-Threading, понять несложно, если вспомнить, что центральный процессор - это очень сложное микроэлектронное устройство с миллиардами транзисторов. Подавляющее большинство задач, которые выполняются на центральном процессоре, не могут физически занять все его узлы и цепи. В результате ощутимая часть процессора простаивает.

Hyper-Therading


    Технология HT появилась благодаря естественному стремлению использовать возможности процессора как можно полнее. Идея состояла в следующем: если один выполняющийся поток не может полностью загрузить процессор, то простаивающие узлы процессорного ядра нужно выделить в отдельное виртуальное ядро и нагрузить его вторым потоком. Для этого достаточно расширить каждое реальное ядро ещё одним набором регистров и контроллером прерываний. Общая площадь кристалла на современных процессорах увеличивается из-за HT всего на 1%. Конечно, такое виртуальное ядро не равноценно настоящему ядру, поэтому процессор Core i7 с 4 ядрами и НТ называют не восьмиядерным, а восьмипоточным. Насколько же Hyper-Threading увеличивает производительность? Это сильно зависит от типа задач.

    Можно сказать сразу: самый плохой сценарий для HT, при котором он не только не добавит производительности, но и может даже ухудшить её - это множество одинаковых задач, которые работают с одними и теми же данными. В этом случае потоки задач пытаются использовать одни и те же узлы процессора, и вся эффективность Hyper-Threading падает до нуля. Сюда же можно отнести программы, которые не были оптимизированы под эту технологию, и которые не могут одновременно использовать больше 2-4 потоков. Таких программ до сих пор ещё очень много - например, к этой категории относится и львиная доля компьютерных игр. Однако немало и таких программ и сценариев их использования, на которых технология HT может дать до 50% прироста производительности.

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

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