Особое мнение – 2: никто не уйдет обиженным! (часть 2)

Не забыть бы об Intel!


Что Вы, как можно? Intel – это наше все! Это ворох новостей и впечатлений. Это новые перспективы и горизонты! Но обо всем по порядку.
Первыми по порядку у нас десктопы, планы на новые процессоры, и все вокруг этого. Что ж, приступим помолясь.
После того, как у AMD, как снег на голову, появились двухъядерные процессоры, корпорация Intel неожиданно прозрела. Оказывается, ни больше не меньше, как сменилась парадигма программирования. Вот так вот, стояла-стояла, держалась-держалась, а потом бац! Зашаталась, упала, и «в ряду парадигм произошла замена».
Наступила новая эпоха! Рекомендуется вскрывать давно заготовленные бутылки «Шампанского»!
Оказывается, теперь наиболее правильный путь повышения производительности состоит не в увеличении производительности отдельного ядра – и все это время ранее мы, видимо, ошибались, хоть и «были искренни в своих заблуждениях» (с) – а в увеличении количества ядер. Сейчас два, затем четыре, затем восемь, и так далее. Вновь и вновь припоминается гениальный до боли фильм «Тот самый Мюнхгаузен»: «29-ое, 30-ое, 31-ое … 32-ое. И так далее!» (с)

Как всегда в таких случаях, Intel подошла к вопросу широко, масштабно. Раз уж не будем гнать частоту, а будем увеличивать количества ядер, то вот нам всем: в следующем году есть намерение 70% (!) всех выпускаемых процессоров сделать двухъядерными. На будущее планы еще более масштабные. Причем теперь эти планы есть не просто в виде пожеланий – нет, вполне серьезно обсуждаются процессоры 2015 года… Массивы специализированных ядер, перемежающихся массивами памяти…
В общем, наши специально обученные десять тысяч мышей легко запинают боевого слона! Горе слонам!
В этом месте вдруг стало жалко больших и сильных животных. Будет грустно глядеть, как они погибают, затоптанные «полчищами» мышей.

Правда, спустя некоторое время одолел меня некоторый скепсис. И вот по какой причине.
Приведем аналогию: если Вам надо передвигаться действительно быстро, от замены усталой скаковой лошади на миллион свежих «бурундуков – спринтеров» мы ничего не выиграем. Точнее, проиграем в реальной скорости передвижения. Несмотря на то, что бурундуков стало гораздо больше, чем было лошадей.
Действительно, встраивая второе ядро в процессор, мы поднимаем производительность практически в два раза. В теории. На практике же это потребует одного мелкого, но важного уточнения. Программное обеспечение должно быть оптимизировано под многоядерность. Причем в общем случае не под SMP, а именно под многоядерность. Ведь ядра в общем случае могут быть вовсе не идентичными друг другу.
Это означает, что все программисты, пишущие программы, должны одним махом взять и вдруг изменить стиль своего программирования.
Это как раз то, во что я могу сразу и безоговорочно поверить.

Что все программисты, как один, в едином порыве дадут друг другу торжественное обещание программировать по-новому. «…И если я не сдержу эту клятву, то пусть покарает меня суровая рука моих товарищей…» (с)

Что вчерашний студент Вася Пупкин, заочно освоивший «Visual Basic за два раза», тут же изменит не что-нибудь, а сам стиль собственного программирования. Ежели, конечно, разыщет в толковом словаре смысл слова «парадигма».

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

И все это потому, что Intel видит наше будущее именно в многоядерных процессорах (в этом месте фанфары, громко).

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

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

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

Потому что эти параллельные алгоритмы еще наработать надо. Причем не только наработать, а отладить, проверить, оформить в виде библиотек, и приучить всех пользоваться именно новыми библиотеками.

Стало быть, в подавляющем большинстве случаев никто ничего делать не будет. И так сойдет. (с) Максимум, включат в компиляторе опцию «оптимизировать под SMP», если в используемых компиляторах вообще есть такая опция.
Это максимум того, на что реально стоит рассчитывать.

Таким образом, поскольку уже существующее программное обеспечение никуда не денется, можно быть совершенно уверенным, что никто подавляющую часть ПО переделывать не будет. Себе дороже.
А, стало быть, действительно многоядерные процессоры подождут. Или пойдут лесом. Потому что подавляющее большинство программного обеспечения разрабатывается так, чтобы быть как можно более технологичным в изготовлении. А параллельное программирование пока очень не технологичная область. Возможно, когда-нибудь ситуация изменится. Вот тогда и посмотрим, где наши любимые многоядерные процессоры. А пока…
Пока параллельное программирование пока удел очень немногих энтузиастов и гениев программирования. Большинство же программистов гениями отнюдь не являются (ох, и полетят в меня сейчас тухлые помидоры).

Стало быть, некой оптимизации под два (возможно, четыре) ядра еще можно ждать. Это разумно. Под большее число – я бы не ждал. По крайней мере, в ближайшем будущем.
Ау, сторонники Cell, это Вам посвящается. Процессор, конечно, «антиресный», спору нет. Восемь ядер, управляющее (оно же вспомогательное) ядро, раздельная память каждого ядра, сверхбыстрые связи между ядрами…. Но кому он нужен за пределами телевизора или игровой приставки? Крутить 48 видеопотоков? Это впечатляет. Теперь бы еще понять, ЗАЧЕМ крутить 48 видеопотоков одновременно. У меня ведь всего два глаза.
Ведь кто-то должен будет перевести программное обеспечение на Cell. А в чудеса и самопроизвольное программирование я не верю. Кто за это будет платить?
Перейдем на аллегории. Меня крайне удивляет идея заменить каждого умного человека комплектом из восьми имбецилов, и одного фельдфебеля с плеткой. Умных людей вообще немного, а вот таких вот «универсальных» комплектов армия нам «наделает». Пустяковое дело. Собственно, это и есть краткое изложение парадигмы Cell.
Ну, компанию Sony понять можно: хочешь, не хочешь, а деньги зарабатывать надо. Причем не только сейчас, но и в будущем. Приставка Sony PlayStation II продается уже не слишком хорошо. Нужно обеспечивать новый рывок, а для этого нужен новый товар. Вот и получилось «я его слепила из того, что было, а потом чем было, тем и полюбила» (с) народ.

Компанию Toshiba понять тоже можно: они много чего из бытовой электроники мастерят, им программируемый относительно быстрый процессор тоже лишним не будет. Глядишь, научим телевизор рекламу распознавать, чтобы пользователь на другой канал не переключил. А то, что Cell программировать надо фактически с нуля – ну так и раньше использовались проприетарные решения, особых проблем нет.
Корпорацию IBM (вернее, ее подразделение IBM Micro Electronics) не понять в этой ситуации вообще невозможно: мало того, что они единожды разработали микроархитектуру Power 4/5, они ее еще сравнительно быстро и дешево адаптировали для Apple, производя и продавая под маркой PowerPC 970. Что самое удивительное, ее же удалось еще слегка обрезать (!), и продать по три комплекта в качестве ядра для Xbox 360. И кому – самой Microsoft! Но и это еще не все: опять слегка переделанную архитектуру удалось продать в качестве ядра общего назначения в Cell. Причем не одной компании, а сразу трем. Мелким таким островным производителям: SONY, Toshiba, NEC.
Да это уже просто праздник какой-то! (с)

Думаю, менеджмент IBM Micro Electronics в день подписания договоров отплясывал не только джигу, но и другие малоизвестные танцы. :D В конце концов, не каждый день одну и ту же разработку удается вначале как следует использовать самим, а затем продать на сторону ПЯТЬ раз.
Действительно, есть что отпраздновать. Ведь, кроме всего прочего, продается не интеллектуальная собственность, отнюдь. Всем этим клиентам IBM будет отгружать полноценные микросхемы, произведенные на собственном заводе. Разумеется, за скромное, но достойное вознаграждение.
Когда встречаешь столь красивые маркетинговые схемы, где-то глубоко внутри прямо-таки гордость за человечество просыпается! Мало того, что одну и ту же разработку использовали сами, заработав на ней денег, а затем продали пять раз (!), так еще и попутно свой простаивающий завод загрузили на несколько ближайших лет (а то и на более долгий срок). Что называется, могу только восхититься.

Впрочем, искренняя радость за IBM не мешает мне помнить, что к идее повседневного использования Cell (и вообще к нынешней парадигме параллельного программирования) я отношусь скорее пессимистически.
Тем паче, что выход Cell сопровождался очередной лживой маркетинговой компанией. Той самой, где процессору Cell приписывают производительность на уровне 250Gflops. Если бы. Тут SONY, Toshiba и NEC воспользовались методом Apple (которая по части лжи давно уже впереди планеты всей): берем Cell, и приводим ее производительность в неких «флопсах». Красиво получается.
Правда, некоторые «зануды» еще помнят, что «флопсы» были определены для 64-битных операций. Тогда как в процессоре Cell производительность указывается в некоторых невнятных «32-бит флопс». Потому производительность в классических «флопсах» сравнивать с «чудо - производительностью» Cell нельзя.
Просто потому, что они разные. Невзирая на 250 типа «гигафлопсов», классических гигафлопсов процессор Cell сможет обработать не 250 миллиардов, а порядка 18 (пиковая производительность). Неслабая разница? Вот то-то же.

Не верите?! А не хотите взглянуть на результаты реального тестирования производительности? Причем тестирования, проведенного самой IBM? Тут уже не спишешь на «кривые руки тестеров».
Извольте!

Все рассмотрели? Я процитирую кусочек на всякий случай: The best parallel Linpack double-precision floating-point results measured from hardware is 11.82GFLOPS.
Простите, здесь никто не встречал наших 250 «гигафлопсов»?! Где же они? Были же где-то здесь… Беда какая, нигде их не видно….
Как я уже говорил, к этому «продвинутому приему» впервые стала прибегать Apple. Видимо, яблочные маркетологи таки сумели уверовать в свой собственный девиз «Think different», и таки стали думать по-другому. Не так, как следует из Аристотелевой логики, а иначе.

Впрочем, ладно: поклонники Apple, как и все маргиналы, имеют право на причуды. Зачем им логика, это же так скучно! А вот когда три уважаемых корпорации начинают непонятные игрища с цифрами, начинаешь поневоле опасаться за их существование. Тем более что Sony в последнее время постоянно попадает в какие-то не слишком красивые истории. То с производительностью Cell цинично лгут, то выпускают музыкальные диски с защитой от копирования, фактически устанавливающие на компьютер пользователя без каких-либо вопросов специализированное ПО, больше напоминающее spyware.
Если эта полоса «удачного маркетинга» продлится, того и гляди, их Samsung обгонит. Тем более, что как раз Samsung очень не прочь обогнать всех, включая электромагнитное излучение. Он даже наметил план, краткое содержание которого можно передать словами: «и тут появляемся мы, все в белом, и побеждаем!».
Даже комментировать не хочется. Лучше про Cell вспомним.

В общем и целом, процессор Cell мне не нравится. Не верю я в революции в технике.
Стало быть, рано или поздно, но к идее модернизации и улучшения каждого ядра все равно придется вернуться. Собственно, я уже писал об этом в предыдущей главе, но в таком деле не грех повториться.
По моему скромному мнению, увлечение двухъядерниками (и многоядерниками в общем случае) – временное явление. Ровно до тех пор, пока не появилось более новое, более производительное ядро.
И убеждает меня в этой мысли прежде всего энтузиазм Intel по поводу многоядерности. Энтузиазм, приличествующий разве что неофиту, только что обращенному в новую веру.
Слишком еще свежа в памяти любовь к SSE2, которая объявлялась панацеей от всех бед «унаследованного программного обеспечения». Надо было всего ничего: «всего лишь перекомпилировать используемое программное обеспечение».

Свежа еще нежданно-негаданно закончившаяся любовь к технологии Hyper Threading, и «многократным приростам производительности от ее использования». Опять-таки, надо было «всего лишь перекомпилировать используемое программное обеспечение».
И вот свежая фишка: оказывается, все это был неправильный фэншуй. А настоящий, правильный фэншуй – это оптимизация под многоядерные процессоры, которые теперь есть не что иное, как столбовая дорога к вечности.
Постойте, давайте я угадаю! Надо «всего лишь перекомпилировать используемое программное обеспечение» (с).
Я верую!
Аминь!
Но лучше я все же подожду немножко, эдак с годика три. И погляжу, а что же выросло из всеобщей любви к многоядерности? Каковая отныне, вестимо, навсегда с нами. Ныне, и присно, и во веки веков (с)
Аминь!
Верую!
Похоже, на ближайших пару лет нашим самым любимым видом состязаний между Intel и AMD будет состязание «сиамских близнецов» в «парных заездах».
Посмотрим, на что можно будет рассчитывать у Intel в разных сегментах рынка.

Такой маленький, такой хорошенький


Что у нас сейчас самое модное? Правильно, ноутбуки! А что у нас самое модное среди процессоров? Правильно, двухъядерники! Что в результате должно получиться из скрещивания ежа и ужа? Правильно, два километра колючей проволоки! (с)
Разумеется, мода на двухъядерность не миновала (и не могла миновать) процессоры для ноутбуков. В частности, широко уже известный Yonah, наследник Dothan-а, внук Banias-а, «мир с ними обоими», тоже должен быть двухъядерным. Правда, как-то он странно двухъядерный: во время мобильной работы (то есть не от сети) второе ядро будет «почему-то» выключено. Да и о прохладе первых поколений Centrino можно постепенно забывать: TDP для Yonah уже 31Вт, а не 25Вт, как было ранее. И есть впечатление, что следующее за Yonah поколение решений для ноутбуков будет иметь еще более высокий TDP. Но это я просто придираюсь, не будем о грустном.

Хорошо хоть, «отмучился ужо» забавный «ноутбучный» уродец Pentium 4–М, к которому букву «м» приписали, по-видимому, сугубо злые люди, и притом исключительно из чувства сарказма. Ибо до его появления никто даже в горячечном бреду не задумывался о классе «ноутбучных» процессоров с TDP 62Вт.
Разумеется, маркетологи выкрутились и тут, в связи с чем появился «новый класс ноутбуков»: desktop replacement. К счастью, на сегодняшний момент «удачная инновация» Pentium 4–М скорее мертв, чем жив. И, честно говоря, мне его не жалко. Нелепое было изделие, чего уж там (я уже вижу разгневанных владельцев, которые говорят мне нехорошие слова и объясняют, что процессор вполне нормально работает; конечно, работает – если бы он еще и не работал, зачем он тогда вообще был бы нужен?!).
Вернемся к ядру Yonah. В общем-то, ничего особо плохого про него не скажешь: два ядра, использующие общий кэш второго уровня. Дальнейшее развитие технологий энергосбережения, новое поколение поддерживающих Yonah чипсетов. Повторяется любимая для Intel история: новому процессору новый чипсет. И неважно, насколько в действительности отличаются эти чипсеты между собой.
В общем и целом, от Yonah все ждут повысившейся производительности. Для этого Intel встроит в процессор некоторые усовершенствования. В частности, у двухъядерного Yonah будет общий для двух ядер кэш второго уровня.

Это позволяет убить двух зайцев: во время автономной работы у работающего ядра оказывается вдвое больший кэш второго уровня. А во время работы от сети, когда производительность максимальна, общий кэш второго уровня позволит решить проблему межъядерного взаимодействия. Ведь в Intel, в отличие от AMD, до сих пор использует более старый протокол MESI для взаимодействия процессоров между собой. Поэтому это узкое место необходимо как-то расширять.
Общий кэш второго уровня – один из способов решения этой проблемы. Другой способ будет применен AMD: протокол MOESI + общий кэш третьего уровня. Посмотрим, чей способ окажется результативнее.
Предварительно можно предположить, что потенциальный прирост от способа Intel должен быть больше. Хотя бы в силу того, что сейчас двухъядерные решения Intel уступают решениям AMD в эффективности. С другой стороны, у такого способа могут быть неприятные нюансы: борьба двух нитей программ за общие ресурсы (кэш), и снижение ассоциативности кэша для каждой из нитей.

К тому же, усложняется контроллер кэша второго уровня, и, возможно, увеличатся задержки доступа в кэш.
Впрочем, напомню, ожидаемые дивиденды от такого объединения все же превышает потенциальные неприятности.
Кстати, похоже, процессор Yonah будет использоваться еще одной фирмой, о которой мы недавно вспоминали. Это Apple.
Даже не знаю, чем это объяснить, но, несмотря на радостные презентации Apple, в которых процессор PowerPC 970 + набор команд Altivec чудовищно обгоняет в «любимых» 32-битных «флопсах» процессоры Pentium 4 и Аthlon 64, Apple почему-то отказывается от этих чудесных процессоров в пользу «заметно более медленных» (с) Apple процессоров Intel.
И где логика, спрашивается?

Впрочем, для настоящих сторонников Apple логика – не главное. Ну и что, что придется в очередной раз перекомпилировать все программы? Только-только расхлебались с переходом на 64 бита (и то сказать, это заняло не один год, и выходило три (!) серьезных обновления) «стабильнейшей операционной системы всех времен и народов» Mac OS X.
И вот теперь, когда все наконец-то заработало примерно так, как обещали три года назад, Apple затевает новый переход. На этот раз вообще на новую систему команд. Учитывая, как хромала и зависала «совершенно устойчивая» Mac OS X, следующий год будет для сторонников Apple крайне веселым. Скучать им точно не придется.
А переход похоже, состоится «при любой погоде». Стив Джобс от лица Apple уже объявил, что в следующем году Apple преподнесет нечто, сравнимое по своей значимости с появлением графического интерфейса!
Вот даже как!

Впрочем, о скромности Apple легенды складывались уже давно. Как там было в анекдоте: «и вот об этой своей скромности я могу говорить часами» (с)
Ну, нечто в следующем году таки будет. Компания Apple перейдет на использование «мерзких и медленных» х86-процессоров. А вот насчет значимости – это мы еще посмотрим. В следующем году.
Кстати сказать, я не сомневаюсь, что все целых 2% пользователей Apple поворчат, достанут деньги, и купят х86 компьютер (!). Зато втридорога, от Apple, и под управлением Mac OS X. :D Впрочем, пусть покупают. Хоть попробуют, как работают действительно быстрые компьютеры. :D
К тому же будет интересно сравнить скорость работы операционных систем от Microsoft и «высокопроизводительной» Mac OS X на одинаковом оборудовании, без ссылок на различие аппаратных платформ.

Итак, в следующем году Apple тоже будет использовать Yonah. Значит, продукт получился сравнительно хорошим. Удивительно только, что ядро Yonah режим ЕМ64Т поддерживать не будет.
Хотя в данный момент поддержку AMD64 (ой, извините, ЕМ64Т) невостребованной уже не назовешь. Сложно сказать, почему так получилось, но поддержка ЕМ64Т пока отсутствует.
Кстати, в этом месте позвольте от души пнуть маркетологов Intel: прямо таки припоминаются слезливые слайды, в которых рассказывается о процессоре следующего поколения. Который является синтезом всего лучшего из двух архитектур: NetBurst и Dothan. Так сказать, гибрид.
Так вот, это, как бы это помягче выразиться, очень-очень сомнительное заявление.
Прежде всего, потому, что никаких микроархитектурных решений от Pentium 4 в следующем процессоре не будет. Вообще. Не считать же, в самом деле, микроархитектурным решением поддержку SSE2 команд?
Еще от Pentium 4 в новом поколении процессоров будет использована шина Quad Pumped Bus. Вот уж действительно важное заимствование из микроархитектуры Pentium 4.

На этом – все. Все остальные ключевые моменты микроархитектуры NetBurst туда не войдут. Не будет в Pentium - Next Generation длинного конвейера. Не будет Trace cache (ах, как в свое время про него писали в документации Intel: дальнейшее развитие кэша команд – ни больше, ни меньше). Не будет ни системы replay (ну еще бы! :D), ни Rapid Execution Engine (а ведь как громко звучало: удвоенная частота работы ALU). В чем же тогда состоит «гибридность» нового процессора? Хотелось бы понять.
Вместо этого Pentium – Next Generation будет дальнейшим развитием микроархитектуры P6. Конечно, Pentium 4 тоже являлся развитием микроархитектуры Р6, но теперь ее будут развивать в кардинально другую сторону. Как легко догадаться, тогда было хорошее направление развития, а сейчас будет самое гораздо более лучшее.

Там будут все ключевые особенности Pentium III (и его наследников Banias и Dothan): относительно большой кэш данных и команд, короткий конвейер, относительно небольшая частота, технологии «склеивания микроопераций». Если упрощать, то фактически Pentium – Next Generation будет представлять собой модернизированное ядро Pentium III, с «приклеенным» к нему модулем SSE2, и при этом посаженное на шину от Pentium 4.
При этом сама по себе смена генеральной линии развития процессорных архитектур Intel ничего особо плохого за собой не влечет. Пустяки, дело житейское! (с) Но смешно становится в тот момент, когда вспоминаешь, какими эпитетами награждались применяемые в Pentium 4 решения. Если бы не тот гипертрофированный пафос описаний, сейчас все относились бы к смене микроархитектур вполне спокойно.
А ныне – извините. Никто никого не тянул за язык, и не заставлял использовать высокопарные формулировки. Использовали? Теперь выкручивайтесь и объясняйте, почему раньше у всех был неправильный фэншуй.

Впрочем, как-то незаметно я уже перешел от мобильных решений к десктопным, и описанию Pentium Next Generation. Об этом мы поговорим в следующей главе, пока же позвольте закончить обсуждение.
Похоже, Yonah будет продвигаться не только на мобильный рынок, но и на рынок barebone систем. И, видимо, в домашние медиацентры, концепция которых у Intel традиционно вращается вокруг собственных процессоров и решений на базе компьютера.
Что ж, в следующем году мобильные платформы получат неплохой продукт. Не слишком холодный (Yonah будет превосходить Turion 64 по тепловыделению), но вполне быстрый и приятный.
Кстати, системы на Yonah демонстрировались и на IDF. Впрочем, IDF (Intel Developer Forum) – это совершенно отдельная песТня. Жалко, никем ранее не спетая. Попытаюсь заполнить этот пробел.

Поговорим об IDF


Мысленно возвращаясь к прошедшему недавно IDF (Intel Developer Forum), хочется отметить, прежде всего, то впечатление, которое возникло в процессе «брожений» по зданию Российской Академии Наук, традиционному месту проведения этого мероприятия.
Но вначале небольшое лирическое отступление. Давно известно, что ИТ журналисты – люди, весьма чтящие традиции. Традиции для них – это нечто священное и незыблемое. По крайней мере, именно такое мнение складывается, когда читаешь отчеты о мероприятиях сродни IDF. Нарушать традиции – табу. И, хотя институт табуирования присущ только первобытным народам, это почему-то давно никого не пугает.
Журналисты, в частности, быстро привыкают к некоторым штампам, после чего применяют их, ни капли не задумываясь. В частности, уже давно сложился весьма занятный (а кое-кому очень выгодный) стереотип: Intel Developer Forum есть очень интересное, и крайне познавательное мероприятие. Так сказать, знаковое событие в отрасли.
Несмотря на то, что «так об этом пишут газеты, а газеты всегда правы» (с), мне «форум разработчиков» интересным и познавательным совсем не показался.

Пожалуй, начнем с того, что более всего это мероприятие напоминало небезызвестный «Гербалайф», да простят меня работники Intel, которых это сравнение может задеть. Разумеется, я не готов утверждать, что польза от процессоров Intel такая же, как от «Гербалайфа». Конечно же, нет. Она, в отличие от «Гербалайфа», «СуперЙохимбеДеревоЭстракта», и прочей гомеопатии, действительно ощутима – их процессоры, по крайней мере, работают. Иногда даже быстро работают.
Но зато очень похожа атмосфера, в которой проходит все мероприятие. Все точно так же бегают, натужно улыбаются, и совершают тщательно выверенные променады вдоль стендов. На которых, кстати, выставлено все, что угодно – лишь бы по тематике хоть приблизительно подходило. Это могут быть серверы, модули памяти, системы для моддинга, вентиляторы, журналы, и все что угодно.

На стендах выставлены образцы. Признаком «хорошего тона» на нынешнем IDF почему-то считалось не знать, что ты показываешь. Или отвечать невпопад. Мол, отвяжитесь, я здесь просто так стою, образцы охраняю.
Когда таким образом на вопросы отвечает симпатичная девушка, я, по крайней мере, могу рассчитывать на эстетическое удовольствие.
Когда подобным образом отвечает примерно сорокалетний мужчина с бейджиком «инженер компании …..», я начинаю думать, что кто-то из нас неадекватен. Так сказать, то ли лыжи не едут, то ли коэффициент трения опять больше тангенса угла наклона (с).
Причем никто не хамит, ни в коем разе!
Просто люди стоят возле собственного стенда, и не могут ответить на вопрос: «это жесткий диск стандарта SAS?». Извините, а зачем Вы тогда там стоите? Мол, кому надо, и так разберется?
Просто люди во время докладов с апломбом говорят абсолютную чушь. И, более того, настаивают на ней, когда задаются уточняющие вопросы.
Все это производит крайне странное впечатление.

В голову приходит только один вопрос: позвольте, уважаемые, а при чем здесь разработчики? Разработчики чего могут себя нормально чувствовать на этом форуме? Та вакханалия маркетинга, которая происходит на этом мероприятии, к разработке (то есть к серьезной, вдумчивой, принципиально непубличной работе) никакого отношения не имеет. Вообще. Это скорее не форум разработчиков, а «дни Intel в здании Академии Наук». Вот с таким названием данного мероприятия я бы согласился. А нынешнее название – в общем-то, уже профанация, будем откровенны. Не знаю, были ли первые форумы форумами для разработчиков, в то время я их не посещал – но нынешние ими совершенно точно не являются. Это хорошая ИТ «тусовка», но вовсе не то, что обещает название.
Ну да ладно, неважно, как называется мероприятие, лишь бы доклады интересные. Правильно я рассуждаю?
Что ж, разумный подход. Поэтому я, наблюдая в программе фамилии высоких должностных лиц Intel, вполне обоснованно ожидал потока интересных данных. В конце концов, кто, как не глава отдела по разработке платформы Centrino Шмуэль Иден, сможет рассказать что-нибудь интересное?
Увы, мои надежды не оправдались.

Содержание нескольких часов докладов различных сотрудников Intel можно передать тремя короткими пунктами. Во-первых, «все теперь будет хорошо. Раньше было хорошо, и теперь будет. Мы (Intel) все лучше и лучше, год от году».
Во-вторых, «торговать мы будем платформами. Потому что это выгоднее. Вот, Centrino какой успешный получился. Это потому что платформа. Поэтому все теперь будет в платформах. Цифровой дом, цифровой офис. Это все очень новое, и очень актуальное».
В-третьих, «мы скоро выиграем по очень важному соотношению «производительность на ватт». Подчеркиваю, не просто очень важному, а крайне супер очень важному. Некоторые не понимают важности этого соотношения, а остальные понимают. Те, которые понимают, они с нами согласны.
Теперь Вы, зная производительность процессора, всегда сможете посчитать, сколько ватт он выделит. Вот такой вот он полезный, этот восхитительный критерий «производительность/ватт»».
Признаться, после того, как улеглось все возмущение очевидной дикостью этого критерия, вся шумиха вокруг него вызвала во мне несколько другую ассоциацию.

Представим себе, что мы проигрываем соперникам в традиционных прыжках в длину с шестом. Есть два способа переломить ситуацию в свою пользу.
Первый состоит в том, что надо взять спортсмена, и вырастить из него чемпиона. Это сложно, и, главное, долго: спортсмены не каждый день рождаются, потом талантливого прыгуна надо найти. Подготовить. Натренировать. И только затем у нас, возможно, будет нужный нам результат.
Второй способ состоит в том, что мы находим человека с очень длинными ногами, умеющего делать шпагат. А затем во всеуслышанье объявляем о том, что прыжки в длину устарели, это более никому не интересно, и мы будем заниматься новым видом спорта: прыжками в ширину.
Разумеется, от такой идеи что соперник, что зрители поначалу цепенеют. Это что еще за новости? Как прыгать в ширину, да и кому вообще это надо? Зачем?!
Но мы не унываем: заманиваем на мероприятие народ всяческими бонусами, выставляем одного спортсмена за другим, день ото дня наращиваем масштаб соревнований. И, наконец, сообщаем олимпийскому комитету: «да сколько можно игнорировать нужды и чаяния молодого и очень перспективного вида спорта? Вы только гляньте на динамику: в первый год десять человек, во второй – десять тысяч. В третий год ожидается десять миллионов человек! Предлагаю сделать этот вид спорта олимпийским».

Олимпийский комитет удивится, конечно: это что еще за чудо – спорт такой, и какому воспаленному воображению в голову пришел? Но против цифр не поспоришь. Пресса подтверждает: действительно было десять человек, а теперь десять тысяч. Спрос налицо. Стало быть, новому виду «спорта» быть.
И вот оторопевший соперник держит в руках приглашение на соревнование по прыжкам в ширину.
К чему я это вспомнил? Да к тому, что здесь у нас ситуация ровно такая же (разве что «олимпийский комитет» в лице покупателей еще ничего не утвердил). Исторически процессоры обоих конкурентов постоянно росли по частоте и производительности. Попутно они постоянно росли по тепловыделению, но это до определенного момента никого особо не беспокоило. Просто потому, что подавляющему большинству покупателей процессор нужен для работы, а не для замеров тепловыделения.
Но с тепловыделением связаны еще некоторые нюансы. В частности, тепло надо куда-то отводить. И пока его немного, можно обойтись пассивным охлаждением. Затем, с ростом тепловыделения, приходится применять активное охлаждение. И все это время есть постоянная тенденция: размеры радиаторов охлаждения и вентиляторов постоянно растут.

Наконец, мы приходим к ситуации, когда ради отвода выделившегося при работе тепла нам приходится применять сравнительно шумные решения.
С этого момента тепловыделение начинает нас волновать. Не столько само по себе, сколько связанный с тепловыделением акустический шум систем охлаждения. Шумный компьютер – это уже недостаток.
Первый звоночек прозвучал, когда появился Athlon 1400 – его тепловыделение составляло 72Вт, что на тот момент было большим значением. И AMD достаточно долго боролась за то, чтобы сделать акустические свойства систем на основе своих процессоров приемлемыми. В те времена многие люди не покупали AMD потому, что решения на ее основе были заметно шумнее.
Сейчас на похожую (но заметно более жесткую) ситуацию нарвалась корпорация Intel. Когда тепловыделение старших ее процессоров превысило сотню ватт, системы охлаждения этих процессоров стали слишком шумными для того, чтобы с такой системой охлаждения можно было комфортно работать. Покупателей стал раздражать шум, который создают системы охлаждения.
Ситуация еще усугублялась тем, что решение от AMD, напротив, при той же или более высокой производительности, грелось (и, соответственно, шумело) намного меньше.

Разумеется, Intel всеми силами боролась с ситуацией: было создано несколько разновидностей охлаждающих систем для процессоров, радиаторы постоянно эволюционировали, были введены специальные рекомендации для корпусов «Advanced Thermal Design» (улучшенный тепловой дизайн). Но все это только полумеры: корпорация Intel вплотную подошла к пределу. Далее надо было либо переходить на жидкостное охлаждение, либо уменьшать тепловыделение процессоров.
Был выбран второй путь. Все это понятно и логично.
Но в результате, похоже, Intel решила удариться в другую крайность. И теперь все привести к этому самому показателю производительности на ватт. То есть к «прыжкам в ширину» в компьютерном мире.
«С детства усвоенные нами принципы диалектического материализма» (с) Ленин учат нас, что вводить новый критерий есть смысл только тогда, когда от его введения мы сможем что-нибудь выиграть. Что же показывает этот критерий обычному пользователю? А ровным счетом ничего.
Разве что можно будет сказать: этот процессор при максимуме производительности выделяет 80Вт, а вот этот – 95. Следовательно, ….
Следовательно, что?! А ничего. Ничего из этого не следует, кроме того, что второй процессор выделяет больше тепла.
Но мы ведь это заранее знали! Зачем же нужен этот критерий? Покупателя не волнует абсолютная величина тепловыделения. Его волнует, чтобы после установки процессора его вентилятор не шумел. Какая разница, сколько он при этом выделяет?

В принципе, автор готов предложить еще несколько столь же ценных критериев. Например, можно соревноваться по содержанию меди и никеля в теплораспределителе процессора. Или по количеству ножек на квадратный миллиметр поверхности. Ну и что, что эти критерии ничего не говорят о потребительских качествах процессора? Критерий производительность на ватт тоже ничего не говорит.
Абсурд, однако.
Каковой, впрочем, провозглашен ни более ни менее как официальным курсом корпорации с почти сорокамиллиардным годовым оборотом.
Мои поздравления с окончательной победой маркетинга над здравым смыслом. Интересно, а почему для своих флагманских продуктов, процессоров Itanium, Intel умалчивает о таком «ценнейшем» критерии? Глядишь, чего важного и узнаем про этот продукт. Прямо-таки распирает от любопытства, как у него с производительностью на ватт?! Не лишайте народ важных каждому покупателю цифр!
Впрочем, доброта – это доминанта моего поведения. Раз Intel настолько хочет сравнивать процессоры по новому критерию, будем сравнивать по нему. Кстати сказать, AMD тоже очень в восторге от этого критерия, ведь ей удалось опередить Intel.
Ну, тогда вот им обоим подарочек.
Представляем победителя по части критерия «производительность на ватт». Барабанный бой:


Давно я так не смеялся. Понятное дело, что в этой «мистификации имени маркетинга» VIA занимается откровенным надувательством, тщательно подбирая тесты, в которых процессор C7 выглядит прилично. Но как красиво они воспользовались модным критерием :D
Думала ли Intel, что весь IDF она будет «пиарить» изделие компании VIA?! :D
А ведь было время, когда продукты корпорации Intel выигрывали у различных конкурентов благодаря реальным преимуществам, а не за счет придуманных критериев.
Интересно, вернется ли оно когда-нибудь снова, это время?

Впрочем, зря я сетовал на скуку: были на Intel Developer Forum и скандально-интересные события. В частности, не обошел вниманием знаменательное событие и «самый известный российский разработчик процессоров», автор «чудовищно быстрого Эльбруса-2000», Борис Арташесович Бабаян. Наш «родитель бумажного тигра». Правда, к моему превеликому сожалению, пообщаться нам не удалось: у Бориса Арташесовича не нашлось времени, чтобы поговорить со мной, и рассказать о «переднем крае российского процессоростроения». Судьбу проекта Е2К (именно так сократили название «Эльбрус-2000») прояснить так и не удалось. Увы и ах.
А жаль.

Сага о BTX (дубль третий)


Продолжаем благодатную тему «форума разработчиков». Вообще говоря, мне повезло. Я побывал на новой форме работы специалистов Intel с публикой: так называемом экспертном совете. Задумка достаточно интересная: на любом подобном мероприятии остается масса мелких вопросов, которые хотелось бы кому-то задать.
Идя навстречу пожеланиям посетителей, Intel организовала экспертный совет. Вошли туда, разумеется, эксперты. Причем не первые попавшиеся сотрудники Intel, а вполне уважаемые зарубежные работники. Отнюдь не маркетологи, между прочим. Из русскоязычных сотрудников был только Всеволод Предтеченский (специалист по применению продукции Intel), еще в совете было трое англоязычных сотрудников. Забегая вперед, скажу, что именно Всеволод Предтеченский обычно давал самые вразумительные ответы.
В общем и целом, задумано было откровенно хорошо, поэтому я цинично и расчетливо занял место в первых рядах, заслоняя остальных посетителей своей наивной физиономией.

А дальше началось странное. Ну, не секрет, конечно, что некоторые вопросы сотрудникам Intel нравятся больше, некоторые меньше. Это вполне понятно: невзирая на внешне демократический процесс общения, сотрудники Intel обязаны думать прежде всего о том, что хорошо для корпорации (показать бы эту фразу Борису Арташесовичу, а то он заигрался в «заслуженного разработчика процессоров»). Поэтому то, что на некоторые «программные» вопросы следуют «программные» же ответы, никого давно не удивляет.
Но были ответы, которые привели меня просто в трепет. Казалось бы, что можно ответить на простой вроде бы вопрос «будет ли Itanium в будущем использовать OoO (Out-of-Order, внеочередное) исполнение бандлов?». Следуя законам логики, можно ответить четырьмя разными способами: «да», «нет», «не знаю», «знаю, но не скажу». Все остальные ответы должны быть той или иной комбинацией вышеперечисленных вариантов.
Ага, как же. Вместо этого я услышал пятиминутный спич на английском языке про то, какой Itanium молодец! То, что он молодец, я и сам вижу, по очередям выстроившихся ко мне за Itanium-ом покупателей. Хотелось понять, в какую сторону он движется и развивается. Но, увы, я этого так и не понял. Это понять как «не развивается»?

Дальше – больше. Задаю вопрос: «в связи с переходом на многоядерную архитектуру понятно, что отныне важную роль играет скорость памяти. Планирует ли Интел использовать технологию XDR?». Вроде понятный вопрос, думаю. Наученный опытом, ожидаю четыре варианта ответа: «да», «нет», «не знаю», «что такое XDR?».
Не тут-то было! Хороший сотрудник, видимо, должен уметь заговорить даже израильских шпионов (говорят, они самые матерые).
Я услышал ответ, смысл которого сводился к тому, что теперь, когда Intel переходит на многоядерные процессоры, очень важное значение приобретает умение программистов эффективно распараллеливать задачи на много ядер. И об этой важности программистов я слушал 4 (!) минуты. Причем, повторю, слушал вроде бы совсем не работников маркетинга.
Казалось бы, какое отношение этот «ответ» имеет к заданному вопросу? Или хороший ответ должен быть непонятным, это добавляет communication skill? Странная ситуация.

Кто-то из зала задал вопрос «планирует ли Intel переходить на жидкостное охлаждение». Ну, думаю, здесь хоть коротко ответят, чего рассусоливать. Нееее, это было бы слишком просто. Слово поочередно брали все (!) англоязычные эксперты. Все они по очереди рассказывали, что да, есть такие системы в лаборатории Intel. Но воздухом тоже вполне ничего охлаждается. Но жидкостные есть, да. Но и воздухом ничего, вполне. И вообще, Intel внимательно смотрит на нужды пользователей. Потому что Intel вообще внимательно смотрит кругом, да.
Я так и не понял, так планируют их использовать, или нет? Из контекста вроде понятно, что пока не планируют. Но четкого ответа нет. Неужели скромничают из опасения, что все-таки придется использовать?
Но пик веселья начался, когда кто-то из зала, явно сотрудник компьютерной компании, спросил, а где же обещанное народу торжество ВТХ? Что тут началось….
Феерическое было зрелище. Все трое зарубежных экспертов, по очереди вырывая друг у друга микрофон, не менее десятка минут каждый (!), рассказывали о «победном шествии формата ВТХ по планете». Победное шествие, по-видимому, заключалось в священном названии компании Microtech, которое повторялось каждых десять секунд.

То есть, судя по ответам Intel, у них уже целый ОДИН производитель корпусов BTX, производящий их в широком ассортименте. Есть, видимо, еще пяток производителей, производящих отдельные модели корпусов ВТХ. Остается только поздравить Intel с таким грандиозным количеством партнеров. Думаю, ранее такое количество компаний, поддержавших их инициативу, они даже не могли себе представить!
На робкие возражения автора вопроса «мол, реально купить все равно нельзя» уже никто ничего не отвечал. Эксперты вставали один за другим, регулярно произнося Microtech. Я даже засомневался – может, это слово-рефрен нечто вроде молитвы, поэтому его так часто повторяют?
Позднее я сумел разобрать, что Intel, оказывается, уже который квартал успешно ведет переговоры с Foxconn, стремясь заинтересовать его в выпуске данного вида продукции. Правда, Foxconn пока на провокации не поддается. Не хотят, мерзавцы, оценить очевидную выгоду продажи ВТХ корпусов.
Таким образом (!), заключили эксперты сообща, никаких проблем с ВТХ форматом в Москве нет.
Ну что ж, счастлив сообщить сотрудникам Intel, что даже волшебного слова Microtech, оказывается, еще недостаточно для успешной продажи BTX.

В частности, один из моих знакомых решил собрать себе систему на двухъядерном процессоре от Intel. Само по себе это ненаказуемо, а даже наоборот. Собрать он ее решил на платформе BTX, поскольку это «новая и перспективная» (с) платформа.
Но проблема возникла с тем, что он не смог найти комплект из корпуса, CPU, систему охлаждения, и вентилятора в одном месте. Из корпусов нашелся только корпус с блоком 250Вт, которого на систему с двухъядерным процессором Intel явно мало. Вентилятор нашелся целый один (!), шумный (кто там обещал, что ВТХ будет тихим?), и продавался отнюдь не в той компании, где имелся в наличии корпус.
Плата под ВТХ формат тоже нашлась только одна. Производства Intel.
Разнообразие найденных вариантов поражает, и восхищает. Спустя всего-то два года после объявления формата-наследника АТХ у нас есть уже целых пять предложений корпусов по Москве, одно предложение вентилятора, и даже один тип системной платы.
Это успех, ребята! Феноменальный успех формата ВТХ! Однозначно!

Кстати, почему-то припомнилось, что идеологически основной заслугой ВТХ должно было быть малое число вентиляторов (в идеале один вентилятор на весь корпус, вентилятор прогоняет воздух через весь корпус). Таким образом, благодаря тщательно рассчитанным путям воздушных потоков, корпус должен быть тихим, и эффективно охлаждать наиболее горячие места, в частности, процессор.
Правда, теперь мне интересно, а как идеология ВТХ сочетается с появлением горячих видеокарт, которые могут рассеивать порядка 100Вт?!
Где их место в новом продвинутом формате? Насколько видно по картинкам, с охлаждением в ВТХ видеокарт еще хуже, чем в корпусе АТХ формата.
За что мы тогда боремся?! Судя по всему, ВТХ уже не подходит к быстрым видеокартам, только в качестве платформы для интегрированных решений. Ну и зачем он такой нужен?
Собственно, вопрос «а зачем он нужен, этот ВТХ?» назрел давно. А действительно, зачем?
Потому что некие процессоры «слишком много кушать» (с) Шырли-Мырли? Ну так давайте лечить причину, а не следствие.

А что у нас на серверном рынке?


Похоже, на серверном рынке Intel «что-то задумал». Об этом говорит необычайно активные отмены обещанных ранее проектов, причем в невиданных доселе количествах, и очередной перенос выпуска нового ядра для Itanium, Montecito. Более того, необычайно большое количество отмененных проектов заставило шутников говорить о том, что «закон Мура» поменялся на «парадокс Пола»: количество отмененных проектов Intel удвается каждый год. :D
Ядром Montecito займемся позже, а пока можно просто оглядеться, да посмотреть, что ж у нас вокруг?
В принципе, вокруг у нас хорошо и лепо. Удачно стартовавшая в прошлом году «новая и перспективная» платформа Xeon с шиной 800MHz плавно заканчивает свой «долгий» жизненный путь. Прожив целый год, между прочим! Потому что «совершенно неожиданно» нашим очередным «самым гораздо более лучшим» направлением оказался путь удвоения ядер в процессоре.

А «новая и перспективная» платформа с шиной 800MHz, поддержкой ECC Registered DDR2-400, и шины PCI-E, оказалась непригодной для поддержки двухъядерных процессоров на ядре Paxville. Вот жалость-то! И ведь не предполагал никто!
И подумать не мог! Ну не было, не было никаких оснований предполагать, что придется удваивать ядра! Не было!
Поэтому надо переходить на Socket LGA771. Он хороший, он правильный, он поддерживает двухъядерные процессоры. Вот.
Потому что он нужен, чтобы двухъядерные процессоры правильно работали.
Кстати, настоятельная необходимость в Socket LGA771 была феноменально успешно обоснована на прошедшем IDF. Так сказать, личным примером.
Были на IDF образцы двухъядерных Xeon-ов, сделанных по технологии 65нм (так называемое ядро Sossoman). Процессор действительно демонстрировал весьма приличные показатели тепловыделения, это было видно по небольшим радиаторам на процессорах. Кстати, на чипсете радиатор был больше, и точно так же охлаждался вентилятором. Нешто чипсет теперь греется больше? :D

Впрочем, удивил не слабый нагрев новых Xeon-ов. Удивила платформа, на которой они работали. Вполне понятно, что это технологический образец, и от него не надо многого ждать. Но эти два процессора были в форм-факторе Socket 478!!! Вот ведь что странно! В то время, как мы перевели Xeon-ы вначале на разъем Socket 604, а теперь будем переводить на Socket 771, абсолютно новые Xeon-ы спокойно работают в форм-факторе Socket 478? Нет, ну надо же!
А нам так убедительно говорили, что необходимость в другом разъеме для Xeon-ов обусловлена прежде всего повышенными требованиями по питанию, которым Socket 478 не удовлетворяет. А как же тут работает?!
Или не работает?
Да нет, вроде вполне работает. Кстати, о частоте образца Sossoman: странность в том, что точно ее никто из присутствующих на IDF не знал. Утилиты этого ядра еще не знают. Операционная система, разумеется, ничего внятного написать тоже не может. Так что совершенно неизвестно, какой же была частота этих процессоров. Если учесть, что Sossoman есть серверная инкарнация Yonah, то меня совсем не удивляет низкий нагрев. Правда, не очень понятно, что у Sossoman с производительностью.
Так вот, о ядре Paxville. Я понимаю, что компании Intel очень надо было ответить на двухъядерные Opteron-ы, причем любой ценой. И без того более чем полгода соревноваться с двухъядерными Opteron-ами было просто нечем.

Цена оказалась немалой. Хотя формально процессоры на ядре Paxville DP устанавливаются в те же разъемы Socket 604, их потребление выросло. В результате не выдерживают VRM модули более старых платформ. Я уже писал, что обновленные требования к VRM предусматривают ток до 120А.
Куда катится этот мир?
Впрочем, пусть электропотребление процессора волнует разработчиков материнской платы. А что у нас с производительностью?
Нуууу… В общем, конечно, стало лучше, чем у одноядерных Xeon-ов. Заметно лучше. И теперь Intel может с гордостью сообщить, что ему удалось догнать по производительности двухъядерные Opteron-ы. Правда, не старшие, а 270-ые. Напомню, это два ядра по 2GHz. А у AMD старшие процессоры имеют 2.4GHz, и называются Opteron-ы 280. Эти процессоры не то чтобы перегнать, просто догнать в большинстве случаев не удалось. При этом системы на базе Xeon-ов потребляют в полтора раза больше энергии. Может, посчитаем наше новое и любимое соотношение производительность/ватт для ядра Paxville DP? :D Нет желания? А зря! Ниже мы этим займемся.

Впрочем, издевательством выглядит совсем другое. Фактически, в заданные TDP 130W поместилась только одна модель двухъядерного процессора, с частотой 2.8GHz. Остальные выйдут позже, в следующем году, после освоения технологического процесса 65нм.
Итак, у Intel есть новый модельный ряд из двухъядерных процессоров. Он состоит из целой одной модели.
При этом поддержка этой модели требует изменения ревизии материнских плат, обновления VRM модулей, сертификации и валидации платформ. Как вы думаете, насколько радостно производители встретили это улучшение?

Подозреваю, что не сильно радостно. Слишком частая смена платформ для производителей серверов ничего хорошего не несет: слишком тщательная необходима проверка, быстро таковую не проведешь.
Так что лучше бы Intel вообще не выпускала этого ядра до появления у себя нормального конкурентного решения. Ан нет. Видимо, престиж ситуации «у нас тоже есть двухъядерные решения» дороже нормальных отлаженных платформ.
А ведь еще со времен «Приключений капитана Врангеля» известно: «как Вы яхту назовете, так она и поплывет» (с). А хорошую вещь «пасквилем» не назовут! (с) :D

Кстати сказать, Paxville DP – не единственный объявленный двухъядерный Xeon. Чуть позднее Intel объявила Paxville MP. Процессор, рассчитанный на работу в четырехпроцессорных комбинациях, и выше.
Правда, с «выше» как-то не сложилось. Ранее, во времена Xeon-ов МР с шиной 400MHz, был такой чипсет: ProFusion. Он позволял построить восьмипроцессорные системы, достаточно хитроумным образом объединяя две шины с четырьмя процессорами на каждой. Но нынешняя платформа Intel для Xeon-ов МР работает не выше чем в четырехпроцессорной конфигурации.
Новый чипсет, i8500, значительно улучшил ситуацию с шинной архитектурой Intel. Ранее Xeon-ы МР все вместе работали на одной (!) шине с пропускной способностью 3.2GB/sec. К счастью, ситуация изменилась.

Во-первых, чипсет 8500 теперь поддерживает две шины, по два процессора на каждую, работающие на частоте 667MHz. Уже лучше, чем одна старая шина на 400MHz. Тем более, что производительность подсистемы памяти тоже подросла, в связи с переводом ее на ECC Registered DDR2-400. Хорошее дело.
Кроме того, выросла производительность каждой из шин, еще и изменилась топология. Северный мост чипсета представляет собой коммутатор, в который сходятся две процессорные шины, и четыре вспомогательных модуля XMB (внешние контроллеры памяти). Занятно: компания AMD интегрирует контроллер памяти внутрь процессора, а Intel, наоборот, выносит его в отдельные микросхемы.
В результате на каждую пару процессоров приходится уже 5.1GB/sec, а не 1.6GB/sec, как в старой платформе. Это позволяет прогнозировать нынешней платформе Xeon МР гораздо более высокую производительность, нежели раньше.
Только вот теперь более чем четыре процессора на платформе Intel сделать нельзя. Вообще. Разве что используя решения от IBM.
Что же касается восьмипроцессорных систем (точнее, систем на восемь разъемов), то их сейчас у Intel просто не будет.
Нет таких планов.
Вот такая вот загогулина. Раньше были. Потом – будут. А сейчас – нет.

Конечно, системы на восемь процессоров продаются не каждый день, никто не спорит. Но в качестве топ решения такие системы обязаны быть. Для ситуаций, когда производительность нужна любой ценой. Конечно, есть решения на процессорах Itanium, но это не х86 процессор (хоть и совместим). Соответственно, флажок «максимальная производительность для х86 систем» некоторое время однозначно будет у AMD.
Если AMD не сумеет эффективно воспользоваться этой ситуацией, то каждому работнику AMD надо будет присвоить звание «почетный неудачник». Или, скажем, сделать татуировку «неудачники». Причем в принудительном порядке.

Еще более занятно попробовать применить новый и самый любимый критерий Intel к нынешним платформам на Paxville. Как там у нас с производительностью на ватт?
А все в полном ажуре. Проигрываем решениям AMD со свистом. Судите сами: производительность систем на Paxville DP примерно равны по производительности системам на Opteron-ах 270. И, соответственно, заметно уступают Opteron-ам 280. А вот с тепловыделением не слишком радостно: 290Вт (два процессора Paxville DP и чипсет 7520) против примерно 200Вт (два Opteron-а 280 и чипсет AMD8111). Ну вот… Интересно, зачем активно продвигать критерий, в котором Intel проигрывает? В этом, видимо, есть какой-то очень тайный знак.
Может быть, ситуация с Paxville МР получше? Как бы не так: четыре процессора Paxville МР плюс чипсет 8500 плюс четыре чипа XMB выделяют 690Вт + 14Вт + 4 * 8.5Вт = 740Вт. В случае четырех Opteron-ов 880 это примерно 400Вт. При намного более высокой производительности четырехпроцессорной системы Opteron 880.
«Душераздирающее зрелище» (с), как говаривал ослик ИА. Это не проигрыш. Это разгром. Причем в новом и самом любимом ныне критерии Intel.
Intel жжОт (с). И в прямом, и в переносном смысле :D

Впрочем, вернемся к нашим серверным системам. Поговорим о планах Intel, и о будущих платформах Bensley/Dempsey. Это название одно- и двухъядерных платформ следующего поколения от Intel.
Они, как и чипсет 8500, будут поддерживать две отдельных шины, но уже только для двух процессоров. С их появлением у каждого из процессоров появляется своя, независимая шина. Это должно приятно сказаться на производительности систем, и сократить разрыв с Opteron-ами. Кроме того, эти платформы поддерживают шину 1066MHz для каждого из процессоров.
И, разумеется, новые платформы потребуют нового разъема! Вуаля: на сцену выходит LGA771.
Ну как, долго наслаждались платформой 7520 с шиной 800MHz?
Я уже упоминал, что Intel планирует использовать FB DIMM. Так вот, благодаря снизившемуся количеству контактов, платформы Bensley/Dempsey поддерживают четырех (!) канальную FB DIMM с производительностью свыше 17GB/sec. Правда, латентность этой системы неизвестна. Подозреваю, что она слегка ухудшилась по сравнению с предыдущей платформой на 7520.
Что ж, это должно выправить перекос в производительности, который есть сейчас. В любом случае, после выхода этих платформ AMD станет сложнее удерживать лидерство. А конкуренция – это всегда хорошо. Для покупателей.

Приятной новостью также является то, что Intel клятвенно заверила: платформы Bensley/Dempsey проживут достаточно долго. В частности, они будут поддерживать следующую серверную версию ядра Pentium Next Generation. Правда, есть некое опасение, что после выхода следующего серверного ядра придется поменять платы. Потому что в очередной раз надо будет поменять VRM-модули. Впрочем, это я уже излишне зло подшучиваю. Главное, чтобы не получилось «пророчески».
В ближайшем же будущем использоваться будут серверные ядра Sossaman, произведенные по технологии 65нм. Может быть, хоть они снизят «горячий нрав» нынешних Xeon-ов?
На этом серверную тему можно закруглять. Осталось последнее: ранее в тексте мы упомянули процессоры Itanium. Не поговорить ли нам о «скелетах в шкафу»?

Не думай об Itanium-ах свысока!


Хочется внести некоторую ясность в эпопею с процессором Itanium. Разумеется, сейчас сотрудники Intel тренированно округляют глаза, и клянутся, что никогда такого не было, но в свое время (и не столь отдаленное, кстати) Itanium действительно прочили на замену всего и вся, в качестве наследника х86 архитектуры.
Дескать, старую, плохую и надоевшую архитектуру мы закрываем, а взамен будет у нас новая жена, красивая и молодая.
Ой, простите, архитектура IA64! Ну конечно же, архитектура! Далась мне эта жена…. В общем, должно было получиться нечто как у доктора Айболита: «я куплю тебе новые ножки, и ты снова пойдешь по дорожке» (с)
Конечно, это требовало перевода программного обеспечения на новую архитектуру, но худо-бедно мы подстраховались: Itanium умеет аппаратно (хоть и не слишком быстро, мягко говоря) выполнять х86 команды. Как раз для того, чтобы можно было постепенно мигрировать на новую, «самую гораздо более лучшую» (с) архитектуру.

Конечно же, никто в Intel никогда этого подтвердит, но переход на новую и «самую гораздо более лучшую» архитектуру им понадобился отнюдь не для того, чтобы получить наиболее технически совершенное решение.
Техническое совершенство здесь только способ. На самом деле наиболее логичным выглядит следующее умозаключение: корпорация Intel тщательно готовила переход на свою, закрытую от остальных производителей архитектуру. В частности, закрытую от других производителей процессоров.
Ведь в свое время наличие альтернативных производителей х86 процессоров было одним из условий, благодаря которым IBM выбрала Intel в качестве основного производителя процессоров для IBM PC. Выбрали на свою голову, называется :D
Но часть рынка х86 от Intel в результате ускользнула, поскольку альтернативные производители (в частности, AMD) тоже выпускали и продавали процессоры. Это было глубоко обидно. Надо было придумать, как бы оставить их с носом, и заработать все деньги на процессорном рынке.

Вот и родился коварный план: придержать развитие х86, одновременно с этим разработав новую архитектуру IA64, причем полностью с нуля. Отсутствие унаследованных проблем, которыми, как тогда казалось, полна х86 архитектура, сразу же упрощает задачу достижения высокой производительности.
Архитектура IA64 оказалась достаточно необычной. Возможно, объяснение лежит в следующем, немаловажном нюансе: дело в том, что запатентовать архитектуру (систему команд) нельзя. Однако, при большом желании, набор команд можно построить таким образом, что для его реализации могут быть задействованы лишь определенные алгоритмы. Которые, как легко догадаться, патентовать уже вполне можно.
А вот когда IA64 будет демонстрировать более высокие результаты производительности, переход станет вполне оправданным с точки зрения пользователей, и превратится в чисто техническую проблему.
Тем более, что стоимость IA64 систем будет постепенно снижаться, и начнет вытеснять х86 системы в силу своей более высокой производительности. Разумеется, неявно подразумевалось некое обязательное условие: х86 процессоры больше не должны были активно развиваться. Должно было произойти примерно так же, как в свое время системы на процессоре Pentium вытеснили системы на процессоре 486, с поправкой на то, что архитектуры все же разные. Более того, тогда существовали оценки, которые гласили: в 2007 году IA64 приходит на десктопы. Победным маршем.

Поэтому важно было обеспечить возможность запуска «устаревшего» х86 программного обеспечения на IA64 системах, чтобы не создавать непреодолимого барьера для пользователей.
Самое главное, что у антимонопольного комитета FTC (Federal Trade Commission) не было бы никакого повода вмешиваться. Ведь никто не запрещает AMD сотоварищи и дальше производить устаревшие и дешевые х86. Мы просто переходим (причем очень лояльно для покупателей, с поддержкой предыдущего программного обеспечения) на новую, более быструю архитектуру, лишенную проблем старой.
Ну а то, что рынок х86 постепенно заканчивается и сворачивается – право слово, это просто исторический процесс, Intel здесь при чем?!
Причем однажды подобную вещь Intel с AMD уже проделала, когда назвала процессор пятого поколения не 586, а Pentium. В результате это название сразу же стало торговой маркой, и выпускать копию этих процессоров AMD уже не могла. Будучи тогда абсолютно не подготовленной к ситуации, AMD несколько лет «бултыхалась» с выпуском 486 процессоров под различными маркетинговыми названиями, вроде 5х86, лихорадочно пытаясь наверстать упущенное, и выпустить свое собственное ядро.
Ядро под названием К5 им выпустить тогда все же удалось, но толку из этого не вышло: к тому моменту Intel уже перешел на микроархитектуру Р6, выпустив Pentium Pro (на рынок серверов), Pentium II, Pentium III.
Кстати сказать, невзирая на отсутствие коммерческого успеха у проекта К5 (тому были вполне разумные причины), именно его (!) идеи получили развитие в процессорах К7/К8. Так что, в конечном итоге, далекий потомок процессора К5 все же восстановил поруганную честь предка. :D
Весь ужас положения, в котором оказалась тогда AMD, легко можно выразить одной фразой: минус два миллиарда долларов.

Фактически, в тот момент AMD выжила только чудом, и собственной настойчивостью. Причем даже не знаю, чего было больше – чуда, или настойчивости. Вспоминая о том времени, могу сказать, что, пожалуй, никогда не видел более настойчивой и самоотверженной борьбы за выживание, чем у AMD во времена работы над проектом К7.
Высшему менеджменту AMD, глядя на их борьбу, хочется аплодировать стоя. В тот момент AMD терпела убытки каждый квартал. Продукты компании продавались только в самом нижнем и самом дешевом сегменте, не принося никакой особенной прибыли. Весь верхний, средний, и большую часть нижнего сегмента рынка захватила Intel.

Представляю себе те истерики, которые закатывали Джерри Сандерсу разъяренные инвесторы AMD на ежеквартальных отчетах компании. Партнеры корпорации уже не ждали от нее каких-то удачных продуктов, акционеры в нее не верили, покупатели покупали ее продукты сугубо за более низкую цену, производители А-эшелона практически ничего на продуктах AMD не продавали – а AMD боролась и выживала. В то время в новый продукт AMD верил разве что Сандерс, и команда разработчиков К7.
После выхода К5 стало ясно, что Pentium-у он не конкурент. Слишком медленно росла частота ядра К5, даже после редизайна. К тому же возникли мелкие неприятности с совместимостью: К5 был в этом совершенно не виноват, но это ничего не меняло, ведь на продукции Intel все работало. Кто ж мог подумать, что разработчики программного обеспечения будут пользоваться таймером на основе пустых циклов (!). Причем ладно бы сторонние разработчики, но так сделала даже Microsoft в приснопамятной Windows 95!
Подобные истории не прибавляли привлекательности К5. А проект К7 был еще не готов…

Менеджмент AMD решается на отчаянный шаг: покупается посторонний разработчик процессоров, команд NexGen, разработавшая неплохой продукт под названием 6х86 Next Generation.
Причем покупается за безумные для AMD деньги: сумма сделки более 800 миллионов (!) долларов. Это в тот самый момент, когда квартальный оборот (!)AMD был в районе 250 миллионов долларов.
Пожалуй, у виска тогда не крутил из обозревателей только ваш покорный слуга – и то только потому, что тогда не писал статей. :D Иначе крутил бы вместе со всеми. Или даже громче всех :D
Купив новый продукт, и назвав его К6, AMD запустила его в производство. Увы, чуда не произошло: будучи лучше и быстрее К5, с Pentium II/Pentium III процессор К6 соревноваться мог только в целочисленной производительности. Увы, AMD прозевала игры, и важную роль в оных быстрого математического сопроцессора конвейерного типа. Последнее уточнение достаточно важно: в одиночных операциях сопроцессор AMD был одним из лучших в отрасли, но не умел запускать следующую операцию до окончания предыдущей. В отличие от сопроцессора Intel.

К тому же процессор К6 использовал устаревшую к тому моменту платформу Socket 7, которая пережила процессоры Pentium, К5, а теперь и К6. Поэтому устаревшая (хоть и тщательно реставрируемая) платформа, несмотря на «витаминизацию» в виде добавления AGP и кэша объемом 1МВ, не могла соревноваться по возможностям с платформами Pentium III + 440LX/BX, переживавших тогда пик своей популярности в мире.
Разумеется, все это не лучшим образом сказалось на доходах AMD. Выпушенный К6 не сумел поправить финансовой ситуации AMD, корпорация продолжала терпеть убытки. К тому же в тот момент AMD преследовали еще и производственные проблемы: даже тот небольшой спрос, что был на ее продукцию, AMD не успевала удовлетворять вовремя. Задержки выпуска продуктов после анонсов были вполне обычным делом для AMD тех лет.

Поэтому все это время AMD, чтобы выжить, просто продавала свои подразделения. Было продано сетевое подразделение, подразделение встроенных микропроцессоров – фактически, было продано все, кроме производства флеш-памяти. Тогда именно производство флеш-памяти кормило всю корпорацию, это было единственное (!) прибыльное подразделение.
Как бы там ни было, но К6 тогда сделал главное: позволил продержаться те два года, которые были необходимы для выхода на арену процессора К7. Процессора, который превратил AMD в то, что мы сейчас видим. А видим мы крупную корпорацию, на равных сражающуюся с корпорацией Intel (по крайней мере, в области технического совершенства продуктов).
И теперь стало понятно, зачем же AMD покупала NexGen. Без этой покупки продержаться до выхода процессора Athlon (К7) было бы невозможно: нечем, К5 более не продавался в силу низкой на тот момент производительности, а два года как-то выживать надо было.
Большинство других производителей х86 процессоров этой истории с Pentium-ом так и не пережили: разорились и были куплены Cyrix, IDT Centaur, Rise mP6, и многие другие. Из приблизительно 15 (!) первоначально лицензированных производителей х86 процессоров в живых осталась только AMD. Разумеется, можно возразить, что сейчас есть VIA, скупившая остатки Cyrix и Winchip. Да, есть. Только вот среди первоначальных лицензиатов ее не было. Да и сказать, что у VIA на рынке х86 процессоров все в порядке – явное преувеличение.

Поэтому можно понять желание Intel еще раз повторить удачный ход. Тем паче, что это сулит полное избавление от соперников на постоянно растущем рынке персональных компьютеров. Но для этого нужно, чтобы переход на IA64 демонстрировал не менее впечатляющий прирост производительности, как в свое время переход с 486-ых на Pentium-ы.
Разумеется, создание абсолютно новой архитектуры – весьма недешевое мероприятие. Но, во-первых, в момент принятия этого решения дела у Intel шли не просто хорошо, а очень хорошо (собственно, с финансовой точки зрения до сих пор так и есть). А во-вторых, на великолепную перспективу можно и поработать, затянув пояса. В-третьих, Intel пригласила в качестве партнера по разработке другую весьма немаленькую корпорацию, НР.
Сказано – сделано. Лучшие команды разработчиков Intel при поддержке НР были брошены на проект Merced (тогда Itanium назывался именно так). Были выделены деньги, сроки, люди – и завертелось.
Вам все еще кажется, что я преувеличиваю? А не припоминают ли читатели фразы «Foster: вероятно, последний 32-битный процессор Intel, то есть последний из семейства архитектуры IA32»?
Только вот коварный план №1 у «Барбаросов от процессоров» не удался. И первый Itanium задержался на пару лет, и х86 процессоры к тому моменту сильно скакнули вперед по производительности. В результате тот продукт, который должен был их заменить, оказался чуть ли не медленнее «устаревших предков».
Возник конфуз. План был красив, и его было жаль. Еще больше было жаль тех приятных следствий из плана, которые не произносились, но подразумевались. Но эта мерзкая объективная реальность никак не желала соответствовать красивой теории. Свинство с ее стороны.

В результате был рожден план №2. Ладно. Переход на IA64 мы слегка откладываем. Пока Itanium нацелим в нишу серверов и рабочих станций. А со временем (и с повышением производительности Itanium-а) все равно вернемся к плану № 1.
Правда, тут возникли некоторые сложности. Производительность х86 процессоров конкурента почему-то все время росла. Приходилось выкатывать свои варианты х86 процессоров, не менее быстрые. Все вроде удачно складывалось, но наш любимец Itanium как-то вдруг совсем сильно отстал.
Настолько, что делать на нем рабочие станции, для которых производительность – не самое последнее дело, стало выглядеть настоящим издевательством. Дескать, такую «производительность» – и за ТАКИЕ деньги?
Впрочем, вначале Intel еще колебалась, но партнеры не преминули показать степень своей «заинтересованности» в рабочих станциях на Itanium-е. Они их просто отменили. Практически все. Причем партнер – разработчик, НР, отменила их раньше всех других компаний.
Пришлось тихой сапой рождать план №3: переквалифицировать Itanium на рынок только серверов, благо поддерживается до 512 процессоров, и большой объем памяти. Попутно подготовить переход на общую с Xeon-ами инфраструктуру, чтобы со временем получить недорогую Itanium-платформу.
Кроме того, я никогда и никак не смогу этого доказать, но выглядит очень логичным, что позднее отмененное ядро Tejas изначально проектировалось именно с поддержкой IA64. Мол, пусть будет не очень быстро, но зато можно было бы получить недорогую станцию для программирования под Itanium. Ведь на таких станциях можно замечательно (и относительно недорого) переводить программное обеспечение на IA64.

Но «злейший друг», он же конкурент, мало того, что спутал карты, еще и зачем-то продлил жизнь архитектуре х86, объявив x86-64.
Это было уже изрядным свинством с его стороны: в результате появления x86-64 (позднее переименованной в AMD64) довольно заметная часть вкусностей Itanium-а оказалась доступной без кардинальной смены архитектуры. Как-то: плоская адресация памяти, защита от выполнения кода на страницах данных, быстрая работа с криптографией (а ведь было время, когда тесты на криптографию использовались на слайдах Intel как аргумент к переходам на Itanium). Хуже того, оказалось, что x86-64 еще и обратно совместима с IA32. И еще одна не самая мелкая гнусность ситуации: быстро исполняемый код для IA64 написать гораздо сложнее, чем для AMD64.
Дааааааааааа! – хором выдохнули разработчики программного обеспечения, которым необходимость искать персонал, умеющий работать с IA64, была хуже кости в горле.
И Intel дрогнул. Пришлось внедрять эту самую EM64T, хоть она, конечно же, «никаким образом не совпадает с AMD64» (с) Intel. Это ж очевидно, даже названия разные! Мало того, пришлось в очередной раз откладывать самый хороший и единственно верный план №3. И строить теперь уже план №4.
Каковой теперь уже заключался в создании монстроидального Montecito, производительность которого должна была стать шоком для всех потенциальных соперников. В частности, в Montecito должна была появиться технология Foxton (фактически узаконенный динамический разгон процессора), суть которой так и осталась для меня непонятой: ну не могу я понять, зачем разгонять процессор в тот момент, когда он НЕ загружен. Впрочем, похоже, внятно этого не сумели объяснить и разработчики этой технологии. Поэтому на сегодняшний день технология Foxton отменена.

Таким образом, Itanium должен был расположиться в верхнем сегменте производительности, и тем самым показать, «кто в доме хозяин».
Попутно его потомки позднее должны перебраться на общую с Xeon-ами платформу, снижая тем самым стоимость решения. Эта часть плана №3 вполне подходила и для четвертой версии.
Ну а пока идет перманентная война с основным конкурентом, нишу для Itanium-а можно организовать среди RISC-ов. Благо те, напуганные в свое время озвученными перспективами EPIC-архитектуры, попросту свернули конкурирующие проекты. Кроме IBM, чьи ресурсы позволяли без особых проблем продолжать развитие линейки Power.
Как выяснилось, такая инерционность IBM (или нежелание складывать все яйца в одну корзину) сослужила ей хорошую службу. Неожиданно на всем RISC рынке остались два варианта: системы на Itanium-е, которые наконец-то нашли себе хоть какую-то рыночную нишу, и системы на IBM Power 4/5.
Вот так вот иногда бывает: тише едешь, дальше будешь. Наверняка HP, сделавшая вместе с Intel ставку на Itanium, неоднократно тихо материлась «про себя», но сделать что-либо было уже поздно.

Группу разработчиков PA-RISC разогнали (часть разработчиков подобрал Intel). Группу разработчиков Alpha вполне эффективно разогнал еще Compaq, мир его памяти (и опять часть разработчиков оказалась в Intel). Разработку UltraSPARC прекратила SUN, и только Fujitsu еще тянет лямку SPARC64 архитектуры. Но уже без особого энтузиазма: рекорды в скорости собственно процессоров SPARCи уже давно не демонстрировали, их вытягивают наработанный парк программного обеспечения, и неплохая архитектура систем. Этого хватит еще надолго, но не навсегда.
Группа разработчиков MIPS померла еще раньше, причем уже сложно сказать, была ли в этом вина Silicon Graphics, или же нет.
Вот и получилось, что поле высокопроизводительных серверов как-то «само собой» расчистилось, без особой драки. В результате сейчас НР сражается с IBM на рынке серверов.
Что удивительно: мало того, что они сражаются! Если верить их собственным пресс-релизам, и НР, и IBM одновременно умудрились стать лидерами в одном и том же сегменте рынка!
Сомневаетесь? Думаете, это невозможно?
Зря!

Вот пресс-релиз НР.
Вот пресс-релиз IBM.

Стало быть, обе корпорации одновременно (!)в одном и том же сегменте рынка являются лидерами в продажах серверов!
Вот так вот! Вуаля! (с)
Что называется, просто молодцы! Бурно и продолжительно аплодирую.
Впрочем, HP в последнее время вообще «зажигает». Вот еще «о любви к IBM»
А чего стоит их отзыв о SUN Niagara? Любуемся!

Интересно, с чего это они так «распоясались»? Может, потому, что уже третий квартал подряд продажи серверов на Itanium-ах падают? А ведь как-то грустно:

Worldwide HP Itanium server shipments 6,900 systems (Q1/05)
Worldwide HP Itanium server shipments 6,770 systems (Q2/05)
Worldwide HP Itanium server shipments 6,200 systems (Q3/05)

Что называется, тут не только на конкурентов «вызверишься», тут и свои под раздачу попадут.
Кстати сказать, на этот раз SUN как-то пролетела мимо раздачи; ну ничего, придет время, и мы все наверстаем. :D

А пока вернемся к Itanium-у.

Старые идеи повышения производительности себя исчерпали, новых так и не возникло.
Подразделение Itanium облегченно перевело дух: появилась хоть какая-то рыночная ниша, в которой можно некоторое время «пастись», и отработать хоть часть тех сумм, что были потрачены на разработку с нуля архитектуры IA64. А потрачено было немало: по оценкам экспертов, на выпуск первой версии Itanium-а вместе с разработкой самой архитектуры IA64 партнерами (НР и Intel) было потрачено от 5 до 10 миллиардов (!) долларов.
Разумеется, выпуск второй версии Itanium (получивший название Itanium2) тоже стоил денег. Но эта сумма мне неизвестна.
Конечно, возможность заработать хоть какие-то деньги на процессоре Itanium можно только приветствовать. Думаю, на сегодняшний момент процессор Itanium уже производится с прибылью. Другое дело, что стоимость всей разработки платформы IA64 вряд ли удалось окупить. И непонятно, удастся ли когда-нибудь позднее. Ведь постоянно приходится вкладывать новые средства в разработку обновленных версий Itanium.
И в результате – вуаля! Оказывается, «процессор Itanium изначально предназначался корпорацией Intel для конкуренции на рынке высокопроизводительных RISC-систем и серверов» (с) Intel.
Ну что ж, мы верим, верим. Снова и снова.

Мне вот только интересно, а все ли работники Intel в это верят? Удалось себя уговорить? Впрочем, наверное, удалось: там с этим строго. Надо – значит, поверят. Искренне.
Занятно во всей этой истории, собственно, совсем другое. В общем-то, нет ничего страшного в том, что корпорация (пусть даже такая крупная, как Intel) постоянно корректирует свои планы в ту или иную сторону, прислушиваясь к рынку.
Это как раз нормально. Хочешь жить – прислушивайся к рынку.
Опять-таки, нормально, когда планы (и стратегические, и тактические) временами меняются.
Ненормально другое: когда каждый раз для изменения курса вымучивается некое псевдо правдивое оправдание. Зачем?!
Что, кого-то разве оскорбляет тот факт, что производительность х86 в свое время сильно недооценили? Вроде как никого.
Неужели корпорация Intel настолько боится «потерять лицо», что выдумывает, прямо скажем, не слишком правдоподобные отговорки ряди объяснения вполне естественных причин?
Ведь не все же вокруг идиоты, право слово. А тут просто какая-то вакханалия глупости и лжи выходит. Которая, кстати, приводит к гораздо большей «потере лица», чем откровенность.
Почему нельзя было сказать: «да, ребята, недооценили мы х86. Оно еще поживет. А там посмотрим» - и никому никогда не придется выкручиваться в ответ на вопросы журналистов. Нет же, снова и снова вначале наполеоновские планы «как космические корабли бороздят просторы Вселенной», затем тысяча и одна причина «почему нам этого не очень-то и хотелось».

Складывается впечатление, что маркетинг стал заговариваться. Его объяснения стали противоречивыми. Видимо, хваленый маркетинговый механизм Интел разладился: слишком часто он дает сбои на, казалось бы, простых и очевидных вещах.
Впрочем, леший с ним, с этим маркетингом. У него свои задачи, у нас – свои. Мы же попытаемся разобраться, что же произошло с Montecito.

Montecito возвращается ®


А почему чуть что – сразу Montecito? Все в порядке с Montecito, это ядро опять отложено. За последний год уже сложилась хорошая традиция: если Montecito отложено, значит, с Xeon-ами все будет хорошо! :D
Как я уже писал, ядро обязательно должно было стать однозначным лидером в производительности. Поэтому ему планировали сделать «лифтинг» и «тюнинг» всеми возможными методами: добавить второе ядро, увеличить кэш третьего уровня до 24М (!) (по 12МВ на ядро), ускорить при помощи Foxton частоту до 2GHz (при штатной частоте 1.6GHz), разогнать процессорную шину до 667MHz. Более того, в ядро Montecito добавили поддержку ни много ни мало технологии Hyper Threading, что, на первый взгляд, смотрится рядом с идеологией EPIC ну крайне странно. Примерно как позолоченные шпоры на твердотопливных ракетных ускорителях.
Впрочем, дай волю маркетологам, они бы убедительно объяснили, что наличие шпор улучшает аэродинамические качества ускорителя, и повышает удельный импульс тяги двигателей. :D

В целом, смотрелось вполне внушительно. Сейлзы производителей гордо шевелили усами, причастившийся к IA64 покупатель копил деньгу на очередную высокотехнологическую игрушку. Правда, временами многих, включая меня, пробивали грешные мысли на тему «а что будет, если на обычном Xeon-е сделать 24МВ кэша?», но мы самоотверженно гнали эти диссидентские мысли прочь. Не велено! Святотатство это! Не приведи Господи, результат еще получше Itanium-а окажется, что тогда делать будем?
В общем, как бы там ни было, но ожидания от Montecito были велики. Все без исключения партнеры Intel по программе Itanium объявили, насколько правильно они будут использовать Montecito, и какой невероятный прирост производительности это даст.
Дальше было как в песне. Помните?
«Больно, мне больно! Не забыть эту злую боль!
Больно, как больно! Умирает любовь!» (с)

Жизнь, как обычно, расставила все по местам. С такой же болью умирала наша любовь к рекордам.
Вначале за несколько непонятную идеологическую составляющую, и за «детскую болезнь левизны в коммунизме» (с) поплатилась технология Foxton. Ее не стало. И не стало 2GHz, которые она должна была помочь достичь. И осталось мегагерц только 1600, что уменьшило пиковую производительность сразу на 20%.
Затем тихо и незаметно увяла шина: Intel сообщила, что Montecito будет использовать шину 400MHz или 533MHz. Ну а на закуску прозвучала новость, что выпуск Montecito вообще отложен, до второго квартала 2006 года.
Интересно, когда Montecito таки выйдет, на нем все еще будет 24МВ кэша? Или он тоже «усохнет»?
Ну, как бы там ни было, рано или поздно, но это ядро все же выйдет. Вместе с технологией Hyper Threading. Я уже писал, что меня в свое время весьма удивила весть о наличии в Montecito технологии Hyper Threading. Пришлось разбираться, зачем она там нужна.
Разбирательство показало, что Hyper Threading там действительно делать нечего. А вот другая, родственная технология, Temporal Multi Threading, может оказаться крайне полезной.
Основная идеология IA64 (и концепции EPIC) состоит в том, что планировкой исполнения команд занимается не процессор, а компилятор. Компилятор тщательно изучает программу, и, точно зная, какими ресурсами располагает процессор, тщательнейшим образом оптимизирует программное обеспечение под конкретный процессор.

Вообще говоря, эта цель была в значительной степени достигнута. На замерах производительности Itanium-ы обычно демонстрируют не менее 90% своей пиковой производительности в силу того, что для них есть хороший компилятор, который вполне качественно оптимизирует код программы. И пусть некоторые злые языки утверждают, что лучше всего компилятор оптимизирует код только заранее известной ему программы – мы не пойдем у них на поводу, и не поверим в этот поклёп. :D
Одна из вещей, которую не может угадать компилятор – расположение необходимых нам для выполнения программы данных. Конечно, вся стратегия работы кэширования и логики префетчей направлена на то, чтобы вовремя «подтаскивать» данные, но все же нередко бывают ситуации, когда данных нет в кэше.
Значит, их приходится ожидать. Ожидание данных из памяти занимает порядка 200 тактов (!) А, учитывая, что процессор будет дожидаться выполнения всех команд в бандле, получается, что все исполнительные устройства ожидают, пока приедут данные к одной-единственной операции.
Согласитесь, обидно.

В связи с этим возникла следующая, вполне разумная идея: ведь эти 200 тактов можно было бы выполнять другую нить программы. Получается аналог технологии Hyper Threading, только не с пространственным, а с временным разделением. Время, которое мы просто потеряли бы на ожидание данных, сейчас мы будем применять для выполнения другой нити.
Конечно, переключение контекста процессора, и сохранение архитектурного состояния для первой нити займут некоторое время. Скажем, пару десятков тактов. Еще пару десятков тактов надо на обратное переключение. Но, как ни крути, остается полторы сотни тактов, которые можно и нужно разумно использовать.
Что ж, выглядит вполне адекватно и правильно.

Единственное, что настораживает – не очень понятно, а куда дальше будет развиваться архитектура IA64? Использование логики внеочередного исполнения как-то слишком сильно выпадает из идеи «все перестановки выполняет только компилятор, процессор четко выполняет данные ему инструкции».
Есть ли вообще принципиально новые и полезные для применения идеи в IA64, которые бы позволили обогнать, например, IBM Power 5+, который захватил лидерство в производительности.
Очень надеюсь. Иначе остается допустить, что Intel выжимает из архитектуры IA64 последние соки. А, стало быть, особо развиваться IA64 некуда.
Неужели это правда? Неужели разработка архитектуры следующего поколения для IA64 закончилась пшиком?
Хочется надеяться, что нет. По крайней мере, у главного соперника Itanium-а, процессора IBM Power 5/5+, есть еще возможности для роста производительности. Слухи о разработке Power 6 с целевой тактовой частотой 3GHz (!) достаточно активно муссируются.

«Я ждал это время, и вот это время пришло!» (с) Цой


Свершилось! Это произошло! «Низкоуровневый дифференциальный высокочастотный кошмар технологов» по имени NetBurst отправлен в отставку.:D «Власть меняется» (с) «Свадьба в Малиновке», и теперь ведущую роль в разработке архитектуры следующего десктопного процессора играет израильская группа разработчиков Intel.
Интересно, устроила ли тотальный банкет израильская группа разработчиков, изначально крайне неодобрительно относившаяся к парадигме NetBurst? :D
Конечно, эпопея NetBurst закончится не слишком быстро. Вначале выйдет ядро Cedar Mill/Presler (редизайн ядра Prescott-2M на технологию 65нм), а двухъядерные процессоры Presler будут создаваться из двух раздельных ядер (!) Cedar Mill.

Кстати, никак не могу понять, почему у многих обозревателей вызывает полуистерическое восхищение тот факт, что Presler будет состоять из двух отдельных кристаллов Cedar Mill под одной крышкой – распределителем тепла?
Вообще-то для скорости межпроцессорной связи ничего хорошего из этого не получится. Поэтому восторги Intel я бы еще понял, компания существенно снижает таким образом количество бракованных процессоров. А вот восторг обозревателей совершенно непонятен!
Кстати, еще один мелкий вопрос: а почему арбитр шины по-прежнему находится в чипсете? Ведь чипсеты минимум дважды заменят (вначале 915/925 на 945/955, а затем 945/955 на 965/975), а арбитр по прежнему в чипсете. Абсурд какой-то: два ядра сидят рядом друг с другом, присоединены к одной шине, а вот управляется их совместная работа на шине арбитром, который находится в чипсете!
Где логика? Почему он не перенесен поближе к тому месту, где он действительно нужен?
Или тепловыделение двухъядерных процессоров настолько близко к пределу, что ничего лишнего туда стараются не интегрировать? Впрочем, это уже не слишком важно.

Ведь во второй половине следующего года, похоже, наконец-то случится ЭТО. ЭТОГО давно ждали все поклонники продукции Intel. Некоторые острословы даже поговаривали, что Intel разучилась ЭТО делать.
Не поймите превратно: ЭТО – всего лишь хорошие десктопные процессоры.
В наших общих интересах, чтобы данное утверждение было неверным. Потому что, глядя на аппетиты AMD, если у Intel не будет хорошего продукта и дальше, AMD совсем задерет цены на процессоры. Из самых лучших побуждений, разумеется. :D
В конце концов, даже Intel не может все время выпускать не очень удачные продукты. Потому что маркетинг – могучий инструмент, но не всемогущий. Даже ему временами нужно подспорье в виде удачного продукта. Доверие покупателей к торговой марке – хороший капитал, но несколько последних лет Intel довольно активно его тратила. А доверие не беспредельно (в нормальных случаях, патологические я обсуждать отказываюсь).
Уже давно пора было выпустить хорошее десктопное ядро, которое могло бы стать основой для дальнейшего развития десктопных, серверных, и мобильных процессоров. Если с мобильными процессорами все относительно хорошо, то с серверными и десктопными все не очень радостно. Возможности NetBurst наращивать производительность, не переходя на жидкостные системы охлаждения, фактически исчерпаны.
Пора выпускать новое ядро.

Похоже, на этот раз у Intel есть все шансы выпустить удачный во всех отношениях продукт. Речь о продукте под кодовым названием Conroe.
Про него пока известно не очень много подробностей. В частности, известно, что Conroe будет уметь исполнять до четырех операций за такт (и, значит, будет иметь четыре конвейера). Разумеется, дополнительный конвейер необходимо поддержать дополнительными инфраструктурными образованиями. Такими, как дополнительный порт запуска, а, возможно, и создание двухпортового кэша (как это давно сделала AMD; например, К7 может одновременно писать в кэш первого уровня, и читать из него, тогда как продукция Intel такими возможностями не обладает). Без подобных улучшений четвертый конвейер превратится в нечто бессмысленное, «вещь в себе». Впрочем, будем надеяться на лучшее: думаю, архитекторы Intel понимают необходимость таких усовершенствований не хуже, чем я.
Это означает, что ядро Conroe было кардинальным образом переделано.

Конечно, в основе своей ядро Conroe будет опираться на проверенную временем архитектуру Pentium III, но с определенными усовершенствованиями.
Прежде всего, в Conroe появится поддержка EM64T. Вероятно, попутно будет переделан декодер команд, причем не очень понятно, будет ли это массив простых декодеров (как было в Pentium III и его потомках), или же это будет один, но многоканальный декодер. Примерно того же типа, что в AMD Athlon.
Лично я больше склоняюсь ко второй версии. И вот почему.
Дело в том, что декодеры в Pentium III (кстати, весьма слабо описанная тема) работают несколько своеобразно, если можно так выразиться.
Выбирается некоторый промежуток из кэша команд («окно»). Затем используется массив декодеров (а вовсе не один декодер). Каждый декодер работает со смещением относительно предыдущего и пытается вытащить из мешанины единиц и нулей свою команду. То есть первый декодер рассматривает последовательность байтов, находящуюся в окне со смещением «0», как верную инструкцию, - инструкцию, которую надо будет выполнить, - и определяет её длину. Второй декодер проделывает аналогичную операцию для последовательности со смещением «1» (очевидно, она будет пересекаться с предыдущей), третий - для последовательности со смещением «2» - и так далее. После чего полученная информация о длинах инструкций суммируется, и на этом основании отбрасывается большинство рассмотренных последовательностей, - т.е. те, которые были получены из цепочек байтов, принадлежащих, как выяснилось, не к одной, а к разным командам.

Понятно, что эффективность такого декодера не слишком велика, поскольку значительная часть работы по распознаванию производится вообще впустую, и превращается в тепло. Кстати, это одна из причин того, что именно декодер в процессорах Pentium III/Banias/Dothan, и, видимо, Yonah – достаточно горячий блок. Именно он в существенной степени определяет тепловыделение процессора.
Соответственно, при увеличении количества исполняемых за такт команд было бы необходимо увеличивать размер массива декодеров, что еще сильнее увеличит создаваемый им поток тепла. Посему использование более «умного» многоканального декодера кажется более оправданным с точки зрения логики.
Поэтому для ядра Conroe необходимо применить другой подход, более близкий к примененному в К7/К8. Занятно, что Conroe, по-видимому, будет в этом месте гораздо больше похож на К8, чем на Pentium 4. :D
Кроме того, получит дальнейшее развитие вот какая тема. Уже в ядре Banias Intel применила весьма примечательную вещь, на которую никто из обозревателей особенного внимания не обратил: Micro uops Fusion. Если абстрагироваться от маркетинговых названий, то суть этой идеи относительно проста.
При соблюдении определенных условий ядро Banias/Dothan объединяет некоторые виды микрокоманд, которые можно выполнять одновременно. Например, логические операции и операции вычисления адреса, это наиболее понятный пример. Подобная технология уже давно применяется в ядрах К7/К8, и такие вот объединенные команды в процессоре Pentium M, по сути, очень похожи на МОПы в К8. Отличается в архитектурах К7/К8 и Pentium M процент таких МОПов среди общего количества команд в процессоре. В частности, среди всех вообще микроопераций процент тех, которые Pentium M объединяет при помощи Microuops Fusion, не слишком велик. В процессорах К7/К8, в отличие от Pentium M, этот процент заметно выше.

Но частота встречаемости различных команд в тексте программы разная. В частности, Pentium M «склеивает» наиболее часто используемые операции, поэтому в силу более высокой частоты количество подвергаемых «склеиванию» микроопераций достаточно велико. Это позволяло получить некоторый прирост производительности.
В ядре Conroe развитие этой идеи пойдет заметно дальше. Разумно предположить, что Intel постарается максимизировать количество таких МАКРОопераций. В этом смысле Conroe будет продолжать идеологию К8 – не слишком высокочастотный, но «широкий» процессор.
Занятно, но Intel сделает подобное «широкое» решение даже раньше, чем AMD, хотя именно у AMD были все предпосылки и возможности для лидерства в этой области. Собственно, занятно это для Intel, а вот AMD за это давно хочется пнуть.
Поскольку целевая частота работы Conroe заметно ниже, чем у NetBurst, можно будет избавиться от сильно подогревающей процессор LVS логики. Вместе с исчезновением Rapid Engine, и связанной с этим удвоенной частоты некоторых блоков. Посему есть весьма основательная надежда, что «огнедышащий» нрав Prescott-ов в новом процессоре не повторится.
Кроме того, будут значительно расширены и увеличены всевозможные буферы и шины. В частности, штатной станет шина 1066MHz, а позднее, возможно, процессор переберется на шину 1200MHz (или 1333MHz).
Кэш второго уровня будет общим для двух ядер. Стартует Conroe с кэшем размером 4МВ, общим для двух ядер, позднее он будет увеличен до 8МВ.

Наиболее интригующий вопрос связан вот с чем: что будет с производительностью FPU в ядре Conroe? Вариантов, собственно, два: нынешний блок FPU из ядра Dothan перекочует в Conroe без изменений, либо же он будет доработан и «расширен».
Первый вариант не слишком хорош для Intel. С текущим блоком FPU ядро Dothan проигрывает и ядру К8, и ядру Prescott. Просто потому, что производительность FPU в режиме х87 уступает К8, а в режиме SSE2 – и К8, и Prescott. Ведь темп у Dothan-а в лучшем случае одинаковый с Prescott-ом (одна пара SSE2 операций за два такта), а частота заметно ниже. Кроме того, запуская на Prescott-е чередующиеся команды (например, то сложение, то умножение), темп можно поднять до SSE2 команды каждый такт. Тогда как на Dothan-е такого темпа добиться даже теоретически невозможно.
Соответственно, есть два способа избежать этой проблемы: либо запускать FPU на удвоенной частоте (свят-свят-свят!), что не слишком эффективно, да и чревато высоким нагревом, либо делать его «шире». Например, создать сдвоенный блок FPU так, чтобы можно было запускать пару SSE2 операций каждый такт. Это требует фактически удвоения ширины FPU, и удвоения всех внутренних шин, но оно того стоит.
Есть 90% уверенность именно в таком варианте увеличения производительности: «уширении» блока FPU. Маркетинговые предпосылки для этого мнения следующие: насколько мне в данный момент известно, стартовая частота Conroe будет не слишком далека от 2GHz. Соответственно, чтобы выиграть хотя бы формальное сравнение с процессором «предыдущего поколения» Prescott-ом, остановившемся на частоте 3.8GHz, Conroe должен будет выполнять вдвое больше SSE2 команд за единицу времени.
Такое требование проще всего удовлетворить путем расширения FPU до 128 бит.

Тогда переход на Conroe будет иметь очень разумное обоснование: производительность в целочисленных операциях вырастет очень заметно, здесь даже классический Pentium III легко соревновался с Pentium 4. Производительность в FPU будет, по крайней мере, не худшей. А в дальнейшем, с ростом частоты, станет заметно лучше.
Плюс ко всему меньшее тепловыделение, большой кэш, тонкий техпроцесс (и сравнительно небольшая площадь ядра), наличие второго ядра, быстрая шина – есть все предпосылки для удачного продукта.
Похоже, в этот раз будет «самое оно». Даже с учетом укороченного конвейера (14 стадий) можно рассчитывать на достижение 3GHz на техпроцессе 65нм или 45нм. А это, благодаря четырем исполнительным конвейерам, и двум (а позднее и четырем) ядрам на процессор, весьма заметное повышение производительности.

Стоит задуматься. И, если Intel ничего не испортит в этом продукте, Conroe с большой вероятностью окажется в моем следующем компьютере.
Кроме того, подобное ядро подтолкнуло бы AMD перед необходимостью в симметричном ответе. А мы, покупатели, от этого только выиграем. Хе-хе :D
В любом случае, на сегодняшний момент потенциальных недостатков у Conroe не заметно, и это безусловно радует.
В конце концов, маркетинг Intel заслужил передышку. Дайте ему отдохнуть, в конце-то концов! Выпустите приличный продукт, ну пожалуйста!


Далее: Кое-что об Эльбрусе-2000