Воспоминаний тяжкий груз
АрхивКомментарий дняПроблемы с запуском старых приложений на новых, 64-битных процессорах, остаются серьезным сдерживающим фактором миграции на 64 разряда. И Intel, совсем уж было собравшаяся исключить поддержку x86 из Itanium, занялась ее совершенствованием.
Сегмент 64-разрядных процессоров для массового рынка непрерывно видоизменяется, обретая новых участников и теряя отжившие схемы. Появление Opteron от AMD, подготовка к началу продаж Itanium 2 6M - всё это несомненные подвижки вперёд. Но неделя минувшая была отмечена и одним любопытным, неожиданным происшествием, примерно охарактеризовать которое можно как "шаг вперёд, два назад". Речь - о новой инициативе компании Intel, работающей над созданием программного эмулятора, который позволит нормально выполнять приложения для систем x86 на новом Itanium. И это при том, что всего-то через год поддержку инструкций x86 вообще планировалось устранить?!
Вышеупомянутый Itanium 2 6M является третим по счёту членом одноимённого 64-разрядного семейства: более известный под кодовым названием Madison, он, при одинаковой рабочей частоте, превосходит по производительности своего непосредственного предшественника Itanium 2 McKinley на 30-50%. Он ещё поддерживает x86, равно как и его последователь, Itanium 2 9M, выход которого запланирован на будущий год. А вот в следующих процессорах Itanium аппаратную поддержку x86 планируется ислючить. Раз и навсегда. Ну, или по крайней мере, планировалось до недавнего времени. Так что же случилось?
Если быть точным, около недели назад в западной прессе началось усиленное пережёвывание новой инициативы процессорного гиганта, конечным результатом которой должен стать програмный продукт под названием IA-32 Execution Layer (IEL, также известный под кодовым названием btrans). По сути своей это специальный блок, встраиваемый в ядра операционных систем для процессоров Itanium 2 (по всей видимости, речь именно о новом Itanium 2 6M) и последующих его модификаций, отвечающий за трансляцию на лету программ в инструкциях x86 в машинный код Itanium. IEL будет наделена знаниями о процессорах Pentium и Xeon, и сможет в каждом конкретном случае выбрать - какой именно процессор следует эмулировать. Зачем это надо - ведь не секрет, что в чипах семейства Itanium предусмотрена аппаратная поддержка инструкций x86? Дело в том, что аппаратный транслятор Itanium работает очень медленно: разрыв в производительности на некоторых приложениях (CAD-системы, как ни странно) достигает одного порядка. Иначе говоря, рассчитывать на серьёзную работу со старыми приложениями, запущенными на новом процессоре, не приходится - ведь тактовая частота "итаников" остаётся пока на уровне полутора гигагерц. Решить эту проблему и призван программный транслятор: читая старый код, переводя его в 64-битные инструкции и оптимизируя, IEL должен помочь программам достичь скоростей, сопоставимых с выполнением на старых процессорах. Как говорят в Intel, Itanium 2 6M, работающий на 1,5 ГГц, сможет выполнять x86-приложения со скоростью процессора Xeon, работающего на тех же 1,5 ГГц. При этом - поддержка мультипроцессорности и полного набора команд, включая инструкции SSE (аппаратный транслятор Itanium всего этого лишён).
Вообще, новость о работе над IA-32 Execution Layer - совсем и не новость: анонсировала её Intel ещё на февральском IDF. Тогда, впрочем, сообщению не уделили должного внимания. Выход Opteron, способного выполнять x86-приложения как родные, а также извещения от Microsoft, Red Hat и SuSE о поддержке инициативы Intel, вытащили февральский анонс на поверхность. Впрочем, новость или не новость, а налицо - явная неготовность рынка к переходу на 64 разряда: хорошей статистики по продажам серверов на Itanium 2 автору колонки раздобыть не удалось, но, судя по тому как комментирует западная пресса альянс Intel и производителей операционных систем, проблемы с запуском 32-разрядных приложений на новых, сверхмощных процессорах, по сей день остаются сдерживающим фактором для перехода - и останутся таковым в ближайшем будущем. Несовершенная аппаратная поддержка инструкций x86, скорее всего, будет исключена по плану, но программная - останется, чтобы обеспечить конкурентоспособность новых процессоров Intel с процессорами от AMD на первом этапе, пока количество приложений для новых процессоров не станет достаточным. Как долго это продлится? Подключайтесь к дискуссии, обсудим!