Гиперпоточность

(перенаправлено с «Hyper-threading»)

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

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

Изначально технология была реализована в одноядерных серверных процессорах Xeon (февраль 2002 года) и одноядерных настольных процессорах Pentium 4 (ноябрь 2002 года)[1]. В первых многоядерных процессорах Intel, в том числе сериях Core 2 (Core 2 Duo, Core 2 Quad), технология реализована не была. В 2008 году поддержка гиперпоточности добавлена и в многоядерные процессоры (в линейке Core i7 на архитектуре Nehalem). Впоследствии поддержка технологии появилась в процессорах серии Itanium[2], Atom[3] и всех сериях Xeon.

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

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

Например, когда физическое ядро выполняет поток команд первого логического ядра, то выполнение потока команд приостанавливается по одной из следующих причин:

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

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

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

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

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

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

Примечания

Ссылки

🔥 Top keywords: Заглавная страницаЯндексДуров, Павел ВалерьевичСлужебная:ПоискYouTubeЛунин, Андрей АлексеевичПодносова, Ирина ЛеонидовнаВКонтактеФоллаут (телесериал)WildberriesTelegramРеал Мадрид (футбольный клуб)Богуславская, Зоя БорисовнаДуров, Валерий СемёновичРоссияXVideosСписок умерших в 2024 годуЧикатило, Андрей РомановичFallout (серия игр)Список игроков НХЛ, забросивших 500 и более шайбПопков, Михаил ВикторовичOzon17 апреляИльин, Иван АлександровичMail.ruСёгун (мини-сериал, 2024)Слово пацана. Кровь на асфальтеПутин, Владимир ВладимировичЛига чемпионов УЕФАГагарина, Елена ЮрьевнаБишимбаев, Куандык ВалихановичЛига чемпионов УЕФА 2023/2024Турнир претендентов по шахматам 2024Манчестер СитиMGM-140 ATACMSРоссийский миротворческий контингент в Нагорном КарабахеЗагоризонтный радиолокаторПинапВодительское удостоверение в Российской Федерации