Двух зайцев, или практическое исследование технологии Intel Hyper-Threading
Фирма Intel разработала новую технологию Hyper-Threading, аппаратная реализация которой для сектора настольных компьютеров нашла свое воплощение в процессоре Intel Pentium 4 с тактовой частотой 3,06 ГГц.
Лидеры процессорного рынка продолжают свое безудержное технологическое соревнование, выпуская все более совершенные и мощные изделия. Фирма AMD продолжает, и небезуспешно, совершенствовать традиционную архитектуру K7, выпустив в короткое время последовательно линейку мощных процессоров Athlon с ядром Thunderbird, Palomino, Thoroughbred, а недавно и первые экземпляры поколения Barton. Постепенно растут рабочие частоты, объемы кэш-памяти, а в результате и быстродействие. И уже, как известно, обнародованы также и первые экспериментальные образцы нового поколения K8 (Hammer), с нетерпением ожидаемого поклонниками Немного истории Впервые идею технологии Hyper-Threading выдвинул в 1993 году почетный сотрудник корпорации Intel
Сравнение систем, созданных на основе процессора с технологией Hyper-Threading, и двух традиционных процессоров. Глен Хинтон (Glenn Hinton). Именно он обратил внимание, что очень часто ресурсы процессоров используются не полностью. Однако данный оригинальный способ обработки данных не мог быть реализован в то время ввиду недостаточной развитости технологии. Только спустя девять лет, в феврале 2002 года корпорация начала оснащать данной технологией серверы на базе соответствующих процессоров Intel Xeon. И уже спустя два месяца, 18 апреля 2002 года, президент корпорации Intel Пол Отеллини (Paul Otellini) на конференции Microsoft Windows Hardware Engineering Conference в Сиэтле впервые продемонстрировал применение технологии Hyper-Threading в настольных ПК, пообещав массовую реализацию в 2003 году. Однако 9 сентября 2002 года на осеннем IDF Пол Отеллини объявил о том, что технология Hyper-Threading появится в настольных ПК уже в четвертом квартале 2002 года, то есть почти на год раньше запланированного срока. изделий этого известного производителя процессоров. А как же лидер этого сектора рынка — фирма Intel? После появления принципиально новой архитектуры NetBurst, воплощенной в линейке процессоров Intel Pentium 4, были изделия, созданные на основе Willamette и Northwood. И здесь также наблюдается увеличение объемов кэш-памяти и безудержный рост тактовых частот. Но ни для кого не секрет, что разработка высокочастотных устройств является чрезвычайно сложной задачей, требующей разрешения многочисленных научно-технических проблем. Каждый следующий мегагерц, а теперь уже и гигагерц, даются все труднее, несмотря на кажущуюся простоту и регулярность появления новых, все более высокочастотных и более производительных моделей процессоров. Мощные изделия, рассчитанные на сектор настольных компьютеров, уже сравнительно давно перешагнули психологический рубеж в 1 ГГц. И продолжают демонстрировать рост этого параметра, успешно преодолев 2 ГГц, а недавно и 3 ГГц. К слову сказать, каких-нибудь два-три десятка лет назад такие рубежи считались принципиально недостижимыми для полупроводниковой техники, созданной не только на основе традиционного кремния, но даже для считавшегося его преемником арсенида галлия. Гигагерцевые частоты были подвластны только специальным приборам, не имеющим ничего общего с устройством полупроводниковых транзисторов. Более того, они были мало похожи и на радиолампы. Такими приборами были устройства, созданные на основе элементов типа клистронов, магнетронов, различных устройств, основанных на эффекте бегущей волны, резонаторов и т. п. Тем не менее, несмотря на все прогнозы, планомерное совершенствование электронных технологий и архитектуры микросхем позволяет постепенно уменьшать величину кремниевых элементов, увеличивать рабочие частоты и производительность полупроводниковых изделий, состоящих в ряде случаев уже из сотен миллионов транзисторов. Более того, в течение ближайших нескольких лет, как объявил на последних Форумах IDF CEOIntel Крейг Баррет, ожидается появление элементов, созданных из миллиардов транзисторов и работающих на частотах, превышающих 10 ГГц. Однако частотный рост является не единственным средством повышения производительности полупроводниковых чипов, к которым относятся и всем известные компьютерные процессоры. Специалисты постоянно предлагают новые пути и средства. Ими стали, например, реализация новых, дополнительных команд и даже групп команд, рассчитанных на обработку потоковых данных. Это специальные наборы Intel, к которым относятся MMX, SSE и SSE2, а также их аналоги, созданные другими производителями. Другим, дополняющим методом является использование многочисленных конвейеров и даже нескольких исполнительных устройств, реализующих одновременное, параллельное выполнение большого числа команд. Все это вместе с ростом тактовых частот ядра, а также внутренних и внешних шин способствовало значительному росту производительности процессоров и нашло воплощение во всех современных изделиях. Следующим логическим путем развития архитектуры процессоров стала бы реализация в составе одной микросхемы нескольких ядер, что позволило бы создавать сложные системы, выполняющие команды параллельно на уровне нескольких процессоров. Этот путь собираются выбрать некоторые крупные корпорации, например IBM, Sun, занимающиеся разработкой и выпуском мощных процессоров. Однако, не рассматривая в деталях всех технических и технологических сложностей этого решения, необходимо признать, что данный путь ведет к значительному увеличению цены изделий, по крайней мере, на цену разработки, производства, тестирования и корпусировки второго ядра процессора. Признавая перспективность такого решения, специалисты Intel при существующем уровне развития полупроводниковой технологии решили реализовать другой, альтернативный путь. Они тщательно проанализировали работу всех внутренних структур ядра процессора архитектуры NetBurst. В результате было обнаружено, что нагрузка на некоторые важнейшие узлы процессора является неравномерной. Как следствие, в отдельные моменты некоторые подсистемы ядра процессора оказываются загруженными далеко не на 100%. Так, например, если выполняются целочисленные операции, то блоки операций с вещественными числами остаются незадействованными, расходуя электроэнергию и выделяя тепло. Более того, в ряде случаев наблюдается даже простой ядра процессора компьютера, ожидающего новых команд и данных. Все это связано с особенностями выполнения задач в современных системах. Реализовать же резерв мощности процессора можно за счет загрузки его новыми задачами. Оказалось, что для этого требуется сравнительно небольшое усложнение архитектуры ядра, потребовавшего продублировать ряд регистров и управляющих цепей, составляющих ничтожную долю массива используемых полупроводниковых элементов. Все выполненные изменения незначительно увеличили площадь ядра, которая, как заявляют специалисты Intel, возросла примерно на 5%. Тем не менее, это относительно простое и дешевое решение позволило значительно увеличить производительность процессоров без существенного усложнения их архитектуры, а главное — себестоимости. Иллюстрацией же работы традиционного и модифицированного ядер процессоров могут служить рис. 1-2.
Рис. 1. Загрузка исполняющих модулей в случае использования одной (обозначено красным цветом, пустые циклы обозначены белым цветом) и двух задач (обозначено красным и синим цветами, пустые циклы обозначены белым цветом). Новая технология была названа
Рис. 2. Использование ресурсов процессора при: * последовательном выполнении двух задач, * одновременном выполнении двух задач без HT, * одновременном выполнении двух задач c HT. Hyper-Threading (HT). Впервые она была воплощена в серверных процессорах, где и зарекомендовала себя как перспективное и универсальное решение. Следом пришел черед настольных систем, и первой ласточкой стал процессор IntelPentium 4 c тактовой частотой 3,06 ГГц. Этот чип создан по технологии 0,13 мкм с использованием медных соединений, содержит ядро Northwood, кэш-память второго уровня (L2) 512 кбайт, рассчитан на работу в системах с процессорной шиной 533 МГц (тактовая частота FSB133 МГц, что обеспечивает частоту передачи данных 533 МГц). Реализованная в этом процессоре технология Hyper-Threading положила начало новому классу высокопроизводительных настольных персональных компьютеров, которые обеспечат пользователям эффективность и быстродействие при работе в многозадачных средах. Кроме того, она также повысит скорость работы программ, в которых используется многопоточная обработка данных. Эта технология позволяет на одном физическом процессоре одновременно исполнять два задания или два фрагмента кода одной программы. Таким образом, один процессор воспринимается операционной системой как два логических устройства, интенсивная работа которых осуществляется параллельно. И надо отметить, что использование таких изделий в двухпроцессорных системах позволяет
ис. 3. Сравнение процессоров. работать с четырьмя логическими устройствами и т. д. Рассматривая особенности новой технологии, необходимо обратить внимание, что выпуск процессора Intel Pentium 4 с тактовой частотой 3,06 ГГц является скорее не эволюционным, а революционным шагом. Этот шаг потребовал не только внесения соответствующих изменений в архитектуру ядра, но и соответствующих организационных мероприятий. Поддержка технологии Hyper-Threading осуществляется многозадачными операционными системами. В качестве таких систем можно привести, например, Linux (с версии ядра 2.4 и выше) и Windows XP. Популярные в народе Windows 95/98/ME для реализации возможностей новой технологии уже не подходят. А пользователям Windows 2000 фирма Microsoft настоятельно рекомендует в случае использования Hyper-Threading перейти на операционную систему Windows XP, утверждая, что эффективность от новой технологии и высокопроизводительного процессора будет выше. В связи с повышением тактовой частоты и
Рис. 4. Работа с популярными приложениями. более интенсивной загрузкой исполнительных цепей, входящих в состав ядра, резко увеличилось энергопотребление и тепловыделение процессора. Это потребовало пересмотра соответствующих спецификаций и даже разработки новых кулеров, внесения конструктивных изменений в дизайн материнских плат, выпуска новых BIOS, драйверов и чипсетов. В качестве таких чипсетов в настоящее время фирма Intel предлагает семь наборов микросхем: i850E, i845PE, i845GE, i845GV, i845G (ревизии B1), i845Е, а также самый что ни на есть распоследний E7205 (Granite Bay). Эти чипсеты осуществляют необходимую поддержку процессоров с технологией Hyper-Threading. А BIOS и драйверы осуществляют стыковку аппаратных средств с системным и прикладным
Рис. 5. Работа в многозадачном режиме. программным обеспечением. Приложения, структура которых может быть разделена на "потоки", способны значительно выиграть в плане производительности благодаря применению технологии Hyper-Threading. К таким приложениям, например, относятся Microsoft Windows XP, Adobe Photoshop, 9-ая версия Windows Media Encoder и NewTek Lightwave. Новая технология позволяет повысить производительность системы в многозадачных средах. При одновременном выполнении нескольких задач, даже если они не оптимизированы под HT, технология Hyper-Threading все равно способна значительно ускорить общую производительность системы и минимизировать число отказов в обслуживании ОС. Следует обратить внимание на то, что производительность однопроцессорных решений с реализацией Hyper-Threading в отдельных приложениях способна достигнуть пикового прироста до 30%, что для конфигурации с процессором, работающим на частоте 3 ГГц, примерно эквивалентно применению 4 ГГц модели. Высокая производительность процессора Intel Pentium 4 с тактовой частотой 3,06 ГГц позволяет успешно использовать его в современных играх. О влиянии же технологии Hyper-Threading можно проследить на основе выполнения следующих игровых тестов.
Результаты игровых тестов
ТестыВыполнение с HT / без HT 3DMark2001 SE 14280/14260 Unreal Tournament 57/57 DroneZmark 59/58 Как известно, большинство игровых приложений не использует многопоточность. В результате технология в указанных тестах оказывается невостребованной. Именно поэтому различие в результатах выполнения данных тестов с включенной и выключенной Hyper-Threading практически укладываются в ошибку измерения. Другими словами, на данный момент, покупая процессор с HT или без него — вы не выигрываете ни единого fps для любимого Quake III. С большой степенью вероятности можно предположить, что в будущем технология так или иначе найдет свое применение в компьютерных играх. Сделать такое предположение позволяет простая логика — куда проще и эффективней аппаратно распараллеливать небыстрые размышления AI и расчет трехмерной сцены на два вычислительных потока Hyper-Threading, нежели писать сложный программный код, выполняющий примерно ту же операцию на процессоре без HT. Конечно, это потребует отдельных затрат на разработку — ибо программистам практически придется писать две версии движка — для HT и без HT. Однако теоретический прирост производительности и замечательная лаконичность реализации программирования Hyper-Threading могут в теории принести неплохие дивиденды. Тем более что Intel в скором времени вообще перестанет выпускать процессоры без поддержки данной технологии, а инженеры AMD уже как пить дать чешут репу, генерируя ответный шаг — вроде "Double Parallel Threading Now!!!". Пока же процессор Intel Pentium 4 с тактовой частотой 3,06 ГГц является наиболее производительной моделью, выпускаемой фирмой Intel, даже без реализации возможностей технологии Hyper-Threading современными играми. Как уже было сказано, есть все основания полагать, что такое положение продлится сравнительно недолго и разработчики программного обеспечения внесут соответствующие коррективы в свои продукты. Ну и конечно, стоит упомянуть о том, что отныне, играясь в какую-нибудь навороченную 3D-игрушку, вы можете быть спокойны за судьбу остальных программ — работающих на фоне. Они не умрут... К примеру, экспериментируя с тестовым стендом, нам удалось выяснить, что кодирование 700 Мб DivX файла, происходящее непосредственно во время ожесточенных баталий Warcraft III, не только не замедлило игру, но и смогло завершиться в разумный период — 4 часа 27 минут. Для сравнения: при выключенном HT процесс длился 6 часов, а при работе кодера в монопольном режиме, без запущенной игры — 2 часа 17 минут. Что называется — "немедленная производительность" в действии. В заключение следует отметить, что фирма Intel продолжает совершенствовать не только архитектуру своих изделий, но и технологии их производства. И в ближайшие полгода появится процессор на ядре Prescott, выполненном с использованием новейшей технологии 90 нм. И как ожидается с выпуском этого изделия, реализация технологии многопоточной обработки данных получит свое дальнейшее развитие. А к тому времени, без сомнения, появятся и новые версии популярных игровых программ, использующие новые возможности компьютерных технологий, таких как Hyper-Threading. Оценивая уровни производительности, достижимые с новыми процессорами, следует отметить, что высокие частоты передачи данных, характерные для современных систем, приводят к тому, что свобода разработчиков материнских плат оказывается сильно ограничена. Более того, для устойчивой работы дизайн любой материнской платы должен соответствовать эталону — референс-дизайну. Этот эталон регламентирует с очень высокой точностью взаимное расположение процессора, микросхемы чипсета MCH (эквивалент North Bridge), VRM, а также топологию шин FSB, памяти и AGP, включая даже количество и месторасположение переходов между слоями платы. Именно поэтому производительность систем с материнскими платами примерно равного качества и одной ценовой категории и, конечно, созданных на основе одинаковых чипсетов, как правило, является практически одинаковой.
1224 Прочтений • [Двух зайцев, или практическое исследование технологии Intel Hyper-Threading] [19.05.2012] [Комментариев: 0]