Hyper-threading

Hyper-threading (англ. hyper-threading — гиперпоточность, официальное название — hyper-threading technology, HTT или HT) — технология, разработанная компанией Intel для процессоров на микроархитектуре NetBurst. HTT реализует идею «одновременной многопоточности» (англ. simultaneous multithreading, SMT). HTT является развитием технологии суперпоточности (англ. super-threading), появившейся в процессорах Intel Xeon в феврале 2002 и в ноябре 2002 добавленной в процессоры Pentium 4[1]. После включения HTT один физический процессор (одно физическое ядро) определяется операционной системой как два отдельных процессора (два логических ядра). При определённых рабочих нагрузках использование HTT позволяет увеличить производительность процессора. Суть технологии: передача «полезной работы» (англ. useful work) бездействующим исполнительным устройствам (англ. execution units).

Hyper-threaded CPU
Аббревиатура технологии «hyper-threading» («HT») на логотипе процессора Pentium 4

HTT не реализована в процессорах серии Core 2 («Core 2 Duo», «Core 2 Quad»).

В процессорах Core i3, Core i7 и некоторых Core i5 была реализована сходная по своим принципам технология, сохранившая название hyper-threading. При включении технологии каждое физическое ядро процессора определяется операционной системой как два логических ядра.

Также сходная технология присутствует в некоторых процессорах серий Itanium[2] и Atom[3].

Принцип работы

Процессор, поддерживающий технологию hyper-threading:

  1. может хранить состояние сразу двух потоков;
  2. содержит по одному набору регистров и по одному контроллеру прерываний (APIC) на каждый логический процессор.

Для операционной системы это выглядит как наличие двух логических процессоров (англ. logical processor). У каждого логического процессора имеется свой набор регистров и контроллер прерываний (APIC). Остальные элементы физического процессора являются общими для всех логических процессоров.

Рассмотрим пример. Физический процессор выполняет поток команд первого логического процессора. Выполнение потока команд приостанавливается по одной из следующих причин:

Физический процессор не будет бездействовать, а передаст управление потоку команд второго логического процессора. Таким образом, пока один логический процессор ожидает, например, данные из памяти, вычислительные ресурсы физического процессора будут использоваться вторым логическим процессором[4].

Производительность

Преимуществами HTT считаются:

По утверждениям компании Intel, после реализации HTT в Pentium 4 и Xeon 2001-2002 года:

  • площадь кристалла и энергопотребление в первой реализации увеличились менее чем на 5 %[5][6];
  • в некоторых задачах производительность увеличилась на 15—30 %[7][6]
  • прибавка к скорости составила 30 %[8] по сравнению с аналогичными процессорами Pentium 4, не поддерживающими HTT;

Прибавка к производительности изменяется от приложения к приложению. Скорость выполнения некоторых программ может даже уменьшиться. Это, в первую очередь, связано с «системой повторения» (англ. replay) процессоров Pentium 4, занимающей необходимые вычислительные ресурсы, отчего и начинают «голодать» другие потоки[9][10].

См. также

Примечания

  1. Процессоры Intel Pentium 4 3.06GHz с технологией «hyper-threading». X-bit labs. Дата обращения: 4 июня 2014. Архивировано 31 мая 2014 года.
  2. Процессоры Itanium с поддержкой Hyper-threading
  3. Процессоры Atom с поддержкой Hyper-threading
  4. Техническое описание Архивировано 24 февраля 2008 года. (англ.) технологии «hyper-threading» на сайте компании Intel.
  5. Hyper-Threading Technology // Intel Technology Journal Volume 06 Issue 01 (February 14, 2002), ISSN 1535766X p.7 " This implementation of Hyper-Threading Technology added less than 5% to the relative chip size and maximum power requirements"
  6. How to Determine the Effectiveness of Hyper-Threading Technology with an Application // Intel, April 28, 2011
  7. Hyper-Threading Technology // Intel Technology Journal Volume 06 Issue 01 (February 14, 2002), ISSN 1535766X p.14: "Measured performance on the Intel Xeon processor MP with Hyper-Threading Technology shows performance gains of up to 30% on common server application benchmarks for this technology. "
  8. Summary: In Some Cases The P4 3.0HT Can Even Beat The 3.6 GHz Version : Single CPU in Dual Operation: P4 3.06 GHz with Hyper-Threading Technology. Tomshardware.com (14 ноября 2002). Дата обращения: 5 апреля 2011.
  9. Керученько Я., Малич Ю., Левченко В.Replay: неизвестные особенности функционирования ядра Netburst // F-center.ru, 2005
  10. Ватутин Э. И., Титов В. С. Особенности реализации технологии «hyper-threading» в процессорах Intel «Pentium 4» на примере выполнения кода разного типа, 2005

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.