Технологии. Зачем нужен Intel Hyper-Threading?

27/02/2018
6 824 Просмотров

Одним из важнейших элементов в позиционировании процессоров 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% производительности, то теперь это не аксиома, и все будет зависеть от вашего стиля работы за компьютером и набора пользуемых утилит. Разумеется, текст был бы…

7.5

Заключение

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

Полезность
8

2 Comments

  1. То есть, срочно продавать i5-7600K и бежать за i7-8700K смысла нет? Интересуют игры, но видеокарта у меня RX460 2Gb. Проапгрейдить могу что-то одно — либо купить 1080 (не Ti), либо сменить платформу (МП + CPU). Извёлся уже весь, что сэкономил в своё время и купил 7600K вместо 7700K 🙁 А сейчас в покупке 7700K смысла уже нет, поэтому только платформу менять. Но нужно ли?

    • У вас хороший процессор с 4 ядрами и высокими частотами. Для современных игр его вполне хватит.
      Если захотите сменить платформу (CPU + MB), то лучше подождите релиза новых процессоров Intel. Если они вам по каким-то причинам не подойдут, то в любом случае должны упасть цены на текущее, 8-е поколение. 🙂
      Ну а если хотите получить прирост производительности в играх, то лично я могу посоветовать присмотреться к новой видеокарте. RX460 неплоха для своего ценового сегмента, но вот памяти в 2 Гбайт будет маловато для запуска игр на максималках при разрешении Full HD.

Оставить комментарий