Чтение онлайн

на главную - закладки

Жанры

Журнал «Компьютерра» №37
Шрифт:

Загвоздка в том, что некоторые вагончики имеют обыкновение опаздывать или привозить совсем не то, что запрашивалось, постфактум сообщая о накладке. Соответствующая подобным микрооперациям неспокойная ветка в процессоре отведена для вагончиков, обращающихся к оперативной памяти; причем часто результат выполнения этих микроопераций выступает как исходные данные для другого mОР’а. Поэтому в архитектуре NetBurst порой возникает ситуация, когда микрооперация на исполняющее устройство прибыла, а исходные данные для ее исполнения - нет, Что происходит тогда? Очень простая штука: наш вагончик тут же «переводят на запасной путь», путешествуя по которому, он описывает круг специально рассчитанного размера и возвращается к диспетчеру как раз в тот момент, когда его нужно было бы запускать повторно. Диспетчер приостанавливает отправку на линию новых вагончиков и пропускает вперед прибывший «новый-старый» вагончик. Если к моменту повторного прибытия на исполняющие устройства данных там так и

не окажется, микрооперация снова отправится на запасной путь и будет нарезать круги до тех пор, пока нужные данные не появятся. При этом по основному пути могут исполняться другие инструкции, независимые от первой. Получается простое и вроде бы эффективное решение. Хотя стоп! Эффективное ли? Занимавшаяся изучением реплея группа экспертов[Replay: неизвестные особенности функционирования ядра NetBurst.] убедительно показала, что подобная незамысловатая техника приводит к нетривиальным и крайне интересным эффектам вроде «затягивания» в петли реплея целых цепочек данных (вплоть до полного зацикливания - deadlock’а!) и перегрузки исполнительных устройств из-за необходимости многократно исполнять некоторые инструкции. В итоге процессор архитектуры NetBurst «тормозит» даже при отсутствии ошибок предсказания - просто в силу того, что несвоевременно запущенные цепочки инструкций приходится переисполнять целиком, вместо того чтобы переисполнить одну-единственную «неудачную» инструкцию. Вдобавок, поскольку исполнительные устройства греются больше всех остальных узлов процессора, то непрерывная прогонка через них потока инструкций, данные для которого не подготовлены, приводит еще и к тому, что процессор не просто «тормозит», а вовсю греется. Не очень приятные эффекты, но это та цена, которую уплатила Intel за разработку процессора, умеющего работать на очень высоких тактовых частотах. И если учесть успех процессоров на ядре Northwood - цена вполне оправданная. К сожалению, непомерное тепловыделение NetBurst-процессоров начиная с некоторого момента замедлило, а потом и вовсе остановило рост тактовой частоты, так что сегодня минусы скорее перевешивают плюсы этой, несомненно, опередившей свое время архитектуры.

Просуммируем все сказанное. Теоретически процессор архитектуры NetBurst способен обрабатывать четыре инструкции за такт (два «быстрых» ALU, работающих на удвоенной частоте). При тактовой частоте от 2,53 до 3,8 ГГц столь высокий показатель должен был бы вывести NetBurst-процессоры в лидеры по производительности, если бы не недостаточно быстрый Front-end, неспособный обеспечить больше трех микроопераций за такт; если бы не крайне ограниченный набор «быстрых» инструкций, в которых вплоть до ядра Prescott не входила, например, широко используемая простая операция битового сдвига[Кстати, даже в Prescott битовый сдвиг поддерживает только одно Fast ALU из двух. Это и ряд других ограничений связаны с оригинальной организацией 32-битного Fast ALU в виде двух «сдвоенных» 16-битных ALU]; если бы не наличие всего лишь одного (!) блока ALU и одного блока FPU, умеющих работать со «всей остальной» арифметикой (причем целочисленное умножение вплоть до того же Prescott, тоже выполнялось в FPU!); если бы не многочисленные штрафные такты, возникающие, например, при обращении к «невыровненным» данным в оперативной памяти; если бы не система реплея… если бы не десятки разных «если», подрезающих этой архитектуре крылья.

Мнения: предположительные характеристики процессоров будущего

Информация о разработке преемника существующего решения AMD - ядра K9 - впервые появилась в 2003 году. На сегодняшний день почти доподлинно известно, что:

–  K9 будет традиционным x86-процессором, с набором инструкций AMD64, поддержкой виртуализации и технологии безопасности LaGrande.

–  K9 будет многоядерным CPU; вероятно, с общим для ядер L2-кэшем.

–  K9 будет работать с двухканальной оперативной памятью DDR-II. При этом возможно, что предназначенные для многопроцессорных систем K9 будут выпускаться в нескольких вариантах - с интегрированным контроллером памяти и без него: вариант без ИКП будет дешевле. Более того, возможен и обратный вариант: покупка относительно дешевого контроллера памяти без процессора. Скажем, можно будет установить в 4P-материнскую плату один процессор с ИКП и три дешевых модуля ИКП - получится поддержка очень большого объема оперативной памяти (например, 64 Гбайт) задешево. Естественно, что устанавливаться все эти «разновидности» и «контроллеры» будут в один и тот же стандартный сокет.

–  Число линков HyperTransport в K9 увеличат (вероятно, до пяти), что позволит легко создавать на основе K9 более чем восьмипроцессорные системы и повысит производительность четырех- и восьмипроцессорных серверов.

–  Количество исполняемых за такт инструкций - больше трех.

–  Удвоенное количество блоков FADD и FMUL позволит удвоить производительность при вычислениях в SSE2 с плавающей точкой.

Интересные, но маловероятные слухи говорят также о том, что в K9 появится:

–  Одновременная поддержка до восьми спекулятивных ветвлений, позволяющая, как в процессоре Itanium,

одновременно просчитывать несколько ветвей программного кода, избегая таким образом полного сброса конвейера при ошибке предсказания перехода.

–  Введение трех специальных блоков SSE в дополнение к трем существующим блокам ALU и трем блокам FPU.

–  Поддержка кэш-памяти третьего уровня (L3).

–  HyperTransport 2.0; улучшенный протокол когерентности кэшей (MOESI+).

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

–  Возможность переброски mOP’ов в многоядерных процессорах с конвейера одного ядра на конвейер другого. То есть двухъядерный процессор будет работать быстрее даже в однопоточных (!) приложениях.

–  Сжатие на лету данных, хранящихся в кэш-памяти процессора, позволяющее увеличить эффективный объем кэша.

–  15 стадий целочисленного конвейера, 20 стадий - для вычислений с плавающей точкой.

–  Trace Cache.

–  Возможен интегрированный в крышку процессора тепловой насос - элемент Пельтье, увеличивающий эффективность теплоотдачи от кристалла CPU.

–  Срок появления на рынке прототипов - второе полугодие 2006 года.

С Intel ситуация интереснее. От развития преемника архитектуры NetBurst - процессорного ядра Tejas (в котором, по слухам, должен был появиться - страшно представить - аж 50-стадийный конвейер), корпорация после долгих размышлений отказалась. Последним процессором «Пентиум четвертой» архитектуры станет выпускающийся по 65-нм технологическому процессу процессор Presler (Pentium D)/CedarMill (Pentium 4), в котором Intel всего лишь исправит допущенные при проектировании ядра Prescott ошибки. Например, появится поддержка маленьких коэффициентов умножения. Напомню суть проблемы: ядро Prescott, которое должно было покорить рубеж едва ли не в 5 ГГц, не позволяет использовать коэффициенты умножения, меньшие 14. Ну вот не предполагали разработчики, что они понадобятся: для частот 3-5 ГГц самый актуальный диапазон множителей - от 15 до 25. Но когда стало понятно, что из-за чрезмерного тепловыделения новое ядро не сумеет покорить даже 4-гигагерцовый рубеж, то невозможность процессоров с 800-МГц системной шиной работать на частоте меньше 2,8 ГГц, а процессоров с 1067-МГц шиной - на частоте менее 3,73 ГГц превратилась в серьезную проблему, не позволяющую массово ввести быструю шину и реализовать эффективные технологии энергосбережения. Появится и поддержка технологий виртуализации. Но это все мелочи, такая же «доработка» архитектуры, которой являлся в свое время пришедший на смену революционному, но неудачному Wilamette неновый, но удачный Northwood. Интереснее, что станет следующим Большим Шагом в развитии архитектур Intel.

Недавно обнародованные технические характеристики предполагаемого преемника NetBurst - процессоров Conroe, Merom и Woodcrest - таковы:

–  За основу взят Pentium M (архитектура P6). Сохранен механизм наслоения микроопераций (когда одна операция распадается на несколько микроопераций - как, например, в K8, где mOP может порождать два ROP’а, один из которых задействует ALU, а другой - AGU).

–  Новый широкий конвейер, напоминающий конвейер K8, но рассчитанный не на тройки, а на четверки инструкций. Длина конвейера - 14 стадий.

–  Поддержка технологии EM64T, технологий виртуализации VT-x и безопасности LaGrande.

–  Общий для многоядерных процессоров кэш второго уровня.

–  Улучшенная подсистема памяти с эффективными схемами предвыборки и разрешения конфликтов по адресам при одновременном чтении-записи в память.

Больше пока ничего не известно: слишком уж мало времени прошло с момента анонса. Но судя по всему, получится нечто изрядно напоминающее сегодняшний Athlon 64, только без интегрированного контроллера памяти. Поживем - увидим: предполагаемый срок появления на рынке новых процессоров - второе полугодие 2006 года.

Terralab.ru: Железный поток

Зеркальная ЦФК Olympus E-500

3/4-дюймовый 8-Мп ПЗС-сенсор

поддержка стандарта Four Thirds System

объектив в комплекте: 14-45 мм (28-90 мм в 35-мм эквиваленте), F3,5-5,6

2,5-дюймовый ЖК-экран с разрешением 215250 пикселов и углами обзора 160 градусов по обеим осям

форматы RAW, TIFF и три уровня JPEG

5 режимов замера экспозиции

3-точечный автофокус (TTL Phase Difference) с возможностью ручного выбора точки

3 цветовых режима (яркий, натуральный, приглушенный)

2 цветовых пространства (sRGB, Adobe RGB)

9 черно-белых режимов (эмуляция цветных фильтров и сепия)

оптический видоискатель (TTL)

светочувствительность ISO от 100 до 1600

автоматический выбор светочувствительности в пределах ISO 100-400

поддержка CompactFlash и xD Picture Card (два разъема)

Поделиться:
Популярные книги

Враг из прошлого тысячелетия

Еслер Андрей
4. Соприкосновение миров
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Враг из прошлого тысячелетия

Измена. Право на семью

Арская Арина
Любовные романы:
современные любовные романы
5.20
рейтинг книги
Измена. Право на семью

Вамп

Парсиев Дмитрий
3. История одного эволюционера
Фантастика:
рпг
городское фэнтези
постапокалипсис
5.00
рейтинг книги
Вамп

Волхв

Земляной Андрей Борисович
3. Волшебник
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Волхв

Кай из рода красных драконов

Бэд Кристиан
1. Красная кость
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Кай из рода красных драконов

Архонт

Прокофьев Роман Юрьевич
5. Стеллар
Фантастика:
боевая фантастика
рпг
7.80
рейтинг книги
Архонт

Я еще не князь. Книга XIV

Дрейк Сириус
14. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я еще не князь. Книга XIV

Крепость над бездной

Лисина Александра
4. Гибрид
Фантастика:
боевая фантастика
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Крепость над бездной

Неправильный лекарь. Том 1

Измайлов Сергей
1. Неправильный лекарь
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Неправильный лекарь. Том 1

Пустоцвет

Зика Натаэль
Любовные романы:
современные любовные романы
7.73
рейтинг книги
Пустоцвет

Семья. Измена. Развод

Высоцкая Мария Николаевна
2. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Семья. Измена. Развод

Брак по-драконьи

Ардова Алиса
Фантастика:
фэнтези
8.60
рейтинг книги
Брак по-драконьи

Шаман. Ключи от дома

Калбазов Константин Георгиевич
2. Шаман
Фантастика:
боевая фантастика
7.00
рейтинг книги
Шаман. Ключи от дома

Неудержимый. Книга XIII

Боярский Андрей
13. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XIII