Intel Pentium 4 3,06 ГГц с поддержкой технологии Hyper-Threading

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

Скачать Бесплатно!
Для того чтобы скачать эту работу.
1. Пожалуйста введите слова с картинки:

2. И нажмите на эту кнопку.
закрыть



появление потока инициируется исключительно запущенным процессом), и во-вторых поток выгружается вместе с родительским процессом независимо от своего желания.

Также не стоит забывать, что в классической SMP-системе оба процессора работают каждый со своим кэшем и набором регистров, но память у них общая. Поэтому если две задачи одновременно работают с ОЗУ, мешать они друг другу будут все равно, даже если CPU у каждой свой.

Ну и наконец последнее: в реальности пользователь имеет дело не с одним, не с двумя, и даже не с тремя процессами. На приведенном коллаже (это действительно коллаж, потому что со скриншота Task Manager были удалены все пользовательские процессы, т. е. приложения, запускаемые “для работы”) хорошо видно, что “голая” Windows XP, сама по себе, не запустив еще ни одного приложения, уже породила 12 процессов, причем многие из них к тому же еще и многопоточные, и общее количество потоков достигает двухсот восьми штук!

 

 

Поэтому рассчитывать на то, что удастся прийти к схеме “по собственному CPU на каждую задачу” совершенно не приходится, и переключаться между фрагментами кода процессоры будут все равно и физические, и виртуальные. Впрочем, на самом деле все не так грустно при грамотно написанном коде ничего в данный момент не делающий процесс (или поток) процессорного времени практически не занимает (это тоже видно на коллаже).

 

Теперь, разобравшись с физической многопроцессорностью, перейдем к Hyper-Threading. Фактически это тоже многопроцессорность, только виртуальная. Ибо процессор Pentium 4 на самом деле один. А процессоров ОС видит два. Как это ?

 

 

Классическому “одноядерному” процессору добавили еще один блок AS IA-32 Architectural State. 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 своя. В результате получается схема, при которой на одном и том же ядре могут свободно выполняться два независимых фрагмента кода т. е. де-факто многопроцессорную систему!

 

 

3. Hyper-Threading: совместимость

 

Кроме того, возвращаясь к вещам практическим и приземленным, хотелось бы затронуть еще один немаловажный аспект: не все ОС, даже поддерживающие многопроцессорность, могут работать с таким CPU как с двумя. Связано это с таким “тонким” моментом, как изначальное определение количества процессоров при инициализации операционной системы. Intel прямо заявляет, что ОС без поддержки ACPI второй логический процессор увидеть не смогут. Кроме того, BIOS системной платы также должен уметь определять наличие процессора с поддержкой Hyper-Threading. Фактически, применительно, к примеру, к Windows, это означает, что оказывается неприемлемой не только линейка Windows 9x, но и Windows NT последняя ввиду отсутствия поддержки ACPI не сможет работать с одним новым Pentium 4 как с двумя.

Несмотря на заблокированную возможность работы с двумя физическими процессорами, с двумя логическими, получаемыми с помощью Hyper-Threading, сможет работать Windows XP Home Edition.

А Windows XP Professional, кстати, несмотря на ограничение количества физических процессоров до двух, при двух установленных CPU с поддержкой Hyper-Threading честно “видит” четыре.

К сожалению новые CPU с частотой более 3 ГГц могут потребовать замены системной платы.

Даже при номинальном сохранении все того же процессорного разъема Socket 478 Intel не удалось оставить в неприкосновенности потребляемую мощность и тепловыделение новых процессоров. Увеличение потребления по току связано не только с ростом частоты, но и с тем, что из-за ожидаемого использования “виртуальной многопроцессорности” нагрузка на ядро в среднем вырастет, следовательно, возрастет и средняя потребляемая мощность. “Старые” системные платы в некоторых случаях могут быть совместимы с новыми CPU но только если делались “с запасом”. Грубо говоря, те производители, которые делали свои платы в соответствии с рекомендациями самой Intel относительно потребляемой Pentium 4 мощности, оказались в проигрыше по отношению к тем, кто немного перестраховался.Но и это еще не все. Кроме ОС, BIOS и электроники платы, с технологией Hyper-Threading должен быть совместим еще и чипсет. Поэтому счастливыми обладателями двух процессоров по цене одного смогут стать только те, чья системная плата основана на одном из новых чипсетов с поддержкой 533 МГц FSB: i850E, i845E, i845PE/GE.

 

 

  1. Hyper-Threading: зачем она нужна

 

Компания Intel, если внимательно посмотреть, никогда не отличалась абсолютным совершенством своих продуктов, более того вариации на те же темы от других производителей подчас получались гораздо более интересными и концептуально стройными. Однако, как оказалось, абсолютно все делать совершенным и не нужно главное чтобы чип олицетворял собой какую-то идею, и идея эта приходилась очень вовремя и к месту. И еще чтобы ее просто не было у других.

Так было с Pentium, когда Intel противопоставила весьма производительному в целочисленных операциях AMD

s