Развивая возможности архитектуры
NetBurst, фирма Intel разработала новую
перспективную технологию Hyper-Threading,
обеспечивающую обработку процессором
данных в многопроцессорном режиме.
Поддержка этой технологии осуществляется
моделями процессоров, начиная с
объявленного Pentium 4 c рабочей частотой 3.06 ГГц
Несмотря на неблагоприятные прогнозы
многочисленных скептиков, компьютерная
отрасль продолжает свое стремительное
развитие, удивляя многочисленных
пользователей новыми технологиями и
созданными на их основе изделиями. Казалось
бы, еще совсем недавно высшим достижением
считался изобретенный специалистами фирмы
Intel первый микропроцессор. Известный как
i4004, он решал задачи со скоростью 60 тысяч
операций в секунду, работал на частоте 108
кГц, был создан по технологии 10 мкм, имел 2300
транзисторов, подключался через 4-разрядную
шину и был способен адресовать 640 байт. И вот
совсем недавно, спустя 31 год после выпуска
первого процессора, была объявлена новая
флагманская модель процессора, рабочая
частота которого уже превышает 3 ГГц. Этот
процессор архитектуры NetBurst является
наиболее мощным представителем линейки
Pentium 4. Он создан по технологии 0.13 мкм, имеет
ядро Northwood, кэш-память второго уровня (L2) 512
Кбайт, рабочую частоту 3.06 ГГц, рассчитан на
работу в системах с процессорной шиной 533
МГц (тактовая частота FSB 133 МГц, что
обеспечивает частоту передачи данных 533 МГц)
и ориентирован на рынок настольных
компьютеров.
Являясь наиболее производительной
моделью, этот процессор воплотил в себе все
достижения специалистов Intel. Эти достижения
в совокупности с потенциалом, заложенным в
архитектуру NetBurst, позволили достичь столь
высоких тактовых частот ядра, а также шин
кэш-памяти L2 и процессорной FSB. Но ни для
кого не секрет, что разработка
высокочастотных изделий является
чрезвычайно сложной задачей, требующей
разрешения многочисленных научно-технических
проблем.
Действительно, еще каких-нибудь два-три
десятка лет назад такие рубежи считались
недостижимыми для полупроводниковой
техники на основе кремния. Гигагерцевые
частоты были подвластны только специальным
приборам типа клистронов, магнетронов и т. п.
И только планомерное совершенствование
электронных технологий и архитектуры
микросхем позволяли постепенно
увеличивать частоты и производительность
полупроводниковых изделий.
Но каждый следующий мегагерц, а теперь и
гигагерц, даются все труднее, несмотря на
кажущуюся простоту и регулярность
появления новых, все более высокочастотных
и более производительных моделей
процессоров.
Однако частотный рост является не
единственным средством повышения
производительности. Специалисты постоянно
предлагают новые пути и средства. Ими стали,
например, реализация новых, дополнительных
команд и даже групп команд типа MMX, SSE и SSE2.
Другим путем является использование
многочисленных конвейеров и даже
нескольких арифметико-логических
устройств, реализующих одновременное
исполнение нескольких команд.
Все это вместе с ростом тактовых частот
ядра и шин способствовало значительному
росту производительности процессоров.
Следующим, логическим путем развития
архитектуры процессоров стала бы
реализация в составе одной микросхемы
нескольких ядер, что позволило бы создавать
сложные системы, выполняющие команды
параллельно на уровне нескольких
процессоров. Этот путь собираются выбрать
некоторые крупные корпорации, занимающиеся
разработкой и выпуском процессоров.
Однако, не рассматривая всех сложностей
этого решения, необходимо признать, что
данный путь ведет к значительному
увеличению цены изделий, по крайней мере, на
цену второго ядра.
Специалисты Intel избрали другой путь. Они
тщательно проанализировали работу всех
внутренних структур ядра процессора
архитектуры NetBurst. В результате они
обнаружили, что нагрузка на некоторые
важные узлы процессора является
неравномерной. Как следствие, в отдельные
моменты некоторые подсистемы ядра
процессора оказываются загруженными
далеко не на 100%. Более того, в ряде случаев
наблюдается простой компьютера, ожидающего
новых команд и данных. Все это связано с
особенностями выполнения задач.
Реализовать резерв мощности процессора
можно за счет загрузки его новыми задачами.
При этом оказалось, что для этого требуется
сравнительно небольшое усложнение
архитектуры ядра, что незначительно
увеличивает площадь ядра: примерно на 5%. Но
это решение позволяет значительно
увеличить производительность процессоров
без существенного усложнения их
архитектуры и себестоимости.
Технология Hyper-Threading
Данная технология была названа Hyper-Threading (технология
HT). Эта технология, первоначально
рассчитанная на поддержку в серверах и
мощных рабочих станциях, впервые получает
свое воплощение в настольных компьютерах,
начиная именно с модели процессора Pentium 4 с
тактовой частотой 3.06 ГГц.
Основной смысл технологии Hyper-Threading
заключается в поддержке многопотокового
исполнения программ. Эта технология
позволяет на одном физическом процессоре
одновременно исполнять два задания или два
фрагмента кода одной программы. Таким
образом, один процессор воспринимается
операционной системой как два логических
устройства, интенсивная работа которых
осуществляется параллельно. Подобная
способность одного процессора к обработке
данных в многопроцессорном режиме
встречалась раньше только в серверах и
рабочих станциях.
Технология Hyper-Threading была реализована
следующим образом. К классическому «одноядерному»
процессору добавили еще один блок AS – IA-32
Architectural State, который содержит состояние
регистров (общего назначения, управляющих,
APIC, служебных). Фактически, AS#1 плюс
единственное физическое ядро (блоки
предсказания ветвлений, ALU, FPU, SIMD-блоки и пр.)
представляет из себя один логический
процессор (LP1), а AS#2 плюс все то же физическое
ядро – второй логический процессор (LP2). У
каждого LP есть свой собственный контроллер
прерываний (APIC – Advanced Programmable Interrupt Controller) и
набор регистров. Для корректного
использования регистров двумя LP существует
специальная таблица – RAT (Register Alias Table),
согласно данным в которой можно установить
соответствие между регистрами общего
назначения физического CPU. RAT у каждого LP
своя. В результате получилась схема, при
которой на одном и том же ядре могут
свободно выполняться два независимых
фрагмента кода, то есть де-факто –
многопроцессорная система!
Производительность систем с Hyper-Threading, как
правило, значительно превышает аналогичные
параметры компьютеров, построенных на
основе процессоров традиционной
архитектуры.
Приложение, разделенное на «потоки»,
способно значительно выиграть в плане
производительности благодаря применению
технологии HT. К таким приложениям, например,
относятся Microsoft Windows XP, Adobe Photoshop, 9 версия Windows
Media Encoder и NewTek Lightwave. Технология HT также
позволяет повысить производительность
системы в многозадачных средах при работе с
приложениями, не разделенными на потоки.
Например, пользователь, осуществляющий
поиск в Интернете во время работы
антивирусной программы или занимающийся
редактированием видеоданных во время
отправки электронной почты, обнаружит
повышение производительности, достигнутое
за счет улучшения возможностей системы
выполнять одновременно две задачи.
Нередки случаи, когда производительность
однопроцессорных решений с реализацией Hyper
Threading повышается на 30%. А это для
конфигурации с 3 ГГц процессором
эквивалентно применению модели с частотой
работы 4 ГГц. Специалисты фирмы Intel на
семинарах, посвященных рассмотрению
технологии Hyper-Threading, приводили в качестве
примера различные варианты задач, в которых
рост производительности превышал 60%. В
случае использования Pentium 4 3.06 ГГц это
соответствует уже, по крайней мере,
процессору 5 ГГц.
Технология Hyper-Threading существовала и ранее
вне x86 мира в виде технологии одновременной
многопоточности (Simultaneous Multi-Threading, SMT). Идея
этой технологии проста. Один физический
процессор представляется операционной
системе как два логических процессора, и
операционная система не видит разницы
между одним SMT процессором или двумя
обычными процессорами. В обоих случаях
операционная система направляет потоки как
на двухпроцессорную систему. Далее все
вопросы решаются на аппаратном уровне.
Поддержка технологии Hyper-Threading
осуществляется многозадачными
операционными системами. В качестве таких
систем можно привести, например, Linux (с
версии ядра 2.4) и Windows XP. А вот популярные Windows
95/98/ME для этих целей уже не подходят.
Удивительно, но Windows NT, обладающая
поддержкой SMP (Symmetric Multi-Processor), увидеть
второй логический процессор в новом Pentium 4
также не сможет: это связано с отсутствием в
этой ОС поддержки ACPI. Что же касается Windows
2000, то фирма Microsoft настоятельно рекомендует
использовать в компьютерах, созданных на
основе Pentium 4 с Hyper-Threading, операционную
систему Windows XP. Также в силу своих корней,
этой поддержкой обладают все ОС, основанные
на идеологии Unix — всевозможные Free- Net- BSD,
коммерческие Unix (такие как Solaris, HP-UX, AIX), и
многочисленные разновидности Linux.
К сожалению, не все материнские платы
смогут работать с новым процессором,
несмотря на сохранение старого
процессороного разъема Socket 478. Intel не
удалось оставить в неприкосновенности
потребляемую мощность и тепловыделение
новых процессоров - потребляют они больше, и
греются, соответственно, тоже. «Старые»
системные платы в некоторых случаях могут
быть совместимы с новыми CPU – но только если
делались «с запасом». Грубо говоря, те
производители, которые делали свои PCB в
соответствии с рекомендациями самой Intel
относительно потребляемой Pentium 4 мощности,
оказались в проигрыше по отношению к тем,
кто немного «перестраховался», поставив на
плату VRM с запасом и соответствующим
образом ее разведя. Но и это еще не все.
Кроме ОС, BIOS и электроники платы, с
технологией Hyper-Threading должен быть совместим
еще и чипсет. Это могут быть платы,
созданные на основе ряда новейших наборов
системной логики фирмы Intel:
- Intel 845 PE, осуществляющий поддержку памяти
DDR333 и внешнего графического адаптера AGP
для массовых и высокопроизводительных
компьютеров,
- Intel 845 GE, осуществляющий поддержку памяти
DDR333 и внешнего графического адаптера AGP и
имеющего встроенную графическую
подсистему Intel Extreme Graphics,
- Intel 845 GV, имеющего встроенную графическую
подсистему Intel Extreme Graphics и
ориентированный на системы низкой
стоимости,
- Intel 850 E, осуществляющий поддержку
двухканальной памяти PC1066 RDRAM.
Следует добавить, что для поддержки
процессоров Pentium 4 3.06 ГГц с Hyper-Threading дизайн
материнской платы и ее компонентов должны
отвечать требованиям процессоров к
электропитанию и тепловому режиму. Кроме
того, требуются соответствующие BIOS-системы
и драйверы. Ну и, конечно, как это уже
отмечалось выше, операционные системы,
оптимизированные для использования
технологии Hyper-Threading.
В заключение следует отметить, что
специалистами фирмы Intel выпуском новой
модели процессора Pentium 4 3.06 ГГц успешно
пройден очередной рубеж тактовых частот. В
результате достигнут новый уровень
производительности, который стал еще выше
благодаря реализации в настольных
компьютерах новой технологии Hyper-Threading. Что
ждет нас дальше? Поживем, увидим.
|