Директор по технологиям корпорации Intel Джастин Раттнер считает гибкость архитектуры x86 ключевым условием ее прошлых и будущих успехов. Хотя зачастую люди ссылаются на неизменность набора инструкций x86, Раттнер убежден, что как сама система команд, так и реализующая их архитектура прошла за минувшие годы очень долгий эволюционный путь.
К примеру, в 90-е годы разработчики архитектуры x86 успешно отразили атаку со стороны специализированных мультимедийных процессоров, предложив расширенный набор встроенных инструкций MMX и SSE, который позволил заметно ускорить организацию вычислений при выполнении мультимедийных и телекоммуникационных приложений. Нельзя не вспомнить и расширения чипа, которые улучшались на протяжении многих лет, в частности, аппаратную поддержку виртуализации и механизмов управления памятью.
Не менее важным представляется и то, что в Intel заботились о поддержке обратной совместимости семейства x86 на всех этапах эволюции. Совершенствование набора инструкций вкупе с обеспечением внутренней совместимости позволило архитектуре x86 занять очень широкую нишу на рынке как однопользовательских, так и корпоративных компьютеров, начиная от портативных и заканчивая суперкомпьютерами.
"Важно понимать, что архитектура x86 не является какой-то замороженной конструкцией, -- отметил профессор Калифорнийского университета в Беркли Дэвид Паттерсон. -- На протяжении трех десятилетий ее разработчики добавляли по крайней мере одну инструкцию в месяц к уже имеющимся. Сегодня набор команд процессора x86 включает в себя около 500 инструкций, а в каждом следующем поколении появляется еще от 20 до 100 или даже больше новых команд. Обратная совместимость по-прежнему ставится во главу угла, но вместе с тем мы видим постоянное добавление каких-то новшеств".
Смена стратегии
Впрочем, даже и без специфических усовершенствований многолетнее увеличение производительности в соответствии с законом Мура можно считать одной из самых удивительных тенденций в истории успеха информационных технологий. Процессор 8086, представленный в 1978 году, работал на частоте 10 МГц и имел 29 тыс. транзисторов (в действительности, в 1978 году процессор 8086 работал на частоте 5 МГц и вдвое более высокой частоты достиг спустя несколько лет. - Прим. ред.) Современный четырехъядерный процессор Intel для настольных компьютеров опережает его по частоте в 300 раз, а число транзисторов в нем увеличилось в 28 тыс. раз и доведено до 820 млн. При этом габариты и стоимость микросхем остались примерно на том же уровне.
"Дальнейшее уменьшение размеров транзисторов требует решения сложнейших технических задач, и Intel вкладывает в это немалые деньги, -- отметил профессор Университета Карнеги-Меллона и одновременно научный консультант Intel Тод Маури. -- Попытки обойти одно из возникших на пути разработчиков препятствий привели к тому, что в компании называют 'правым поворотом'. При дальнейшем уменьшении размеров электрических схем тепловыделение вырастает настолько, что теперь повышение производительности возможно лишь за счет увеличения числа процессорных ядер, а не тактовой частоты процессора. А это в свою очередь перекладывает ответственность за дальнейший рост производительности с аппаратного на программное обеспечение. Цель научного сообщества сегодня заключается не столько в построении одного хорошего ядра, сколько в извлечении максимума возможного из множества ядер".
Одним из наиболее многообещающих подходов использования параллелизма в многоядерных процессорах является так называемая "программная транзакционная память". Такое решение позволяет сохранить информацию, совместно используемую в параллельных потоках, от разрушения, не прибегая к блокировке доступа к данным. Здесь применяется алгоритмический подход -- большая часть задач возлагается на программное обеспечение -- однако механизмы поддержки данной технологии можно встроить и в оборудование x86.
По словам Маури, единственное ограничение на пути дальнейшего увеличения процессорных ядер связано со способностью разработчиков программного обеспечения эффективно использовать их возможности. "Наиболее серьезное препятствие заключается в необходимости перехода от последовательного к параллельному мышлению", -- подчеркнул он.
Раттнер полагает, что через пять-семь лет количество ядер в одном чипе будет исчисляться уже сотнями. А поскольку каждое ядро обладает возможностью многопоточной обработки, количество параллельных потоков, поддерживаемых этими чипами, может достигать тысячи или даже более. Правда, сегодня на планете вряд ли найдется много людей, знающих, как использовать эту тысячу потоков.
Новые разработки
По словам Раттнера, в лабораториях Intel исследуются и другие интересные решения. Речь, в частности, идет о чипах x86, оснащенных новыми средствами обеспечения безопасности, которые заметно повышают устойчивость работы процессоров в условиях усиления агрессивности атак.
Кроме того, готовится к выпуску графический процессор Larrabee, который построен на базе архитектуры x86 и должен составить конкуренцию специализированным графическим процессорам компании nVidia и ATI, подразделения AMD. В Larrabee появится "целый новый класс инструкций, ориентированных на выполнение визуальных расчетов". Преимущество Lurrabee перед специализированными графическими процессорами конкурентов заключается в том, что он представляет собой расширение архитектуры общего назначения x86.
"Устойчивость и надежность архитектуры нам удалось перенести в те сферы, которые, казалось, лежали за гранью ее возможностей", -- подчеркивает Раттнер.
Аналогичные планы вынашивает и AMD. В январе появилась информация о подготовке гибридного варианта центрального и графического процессора Fusion, который будет представлять собой расширение существующего процессорного семейства Phenom. Первые поставки планируется начать в 2009 году, когда на рынке появится двухъядерный чип для ноутбуков.
VIA Technologies анонсировала процессоры Nano (ранее они фигурировали под кодовым наименованием Isaiah) для рынка мини-ноутбуков. Компания намерена и дальше предлагать процессоры семейства x86 с низким уровнем энергопотребления на рынке мобильных устройств, но помимо этого она начнет осваивать и сферу настольных компьютеров.
На вопрос о возможности вытеснения архитектуры x86 какими-то новыми микропроцессорными решениями Раттнер ответил, что она надежно защищена повсеместно распространенными программно-аппаратными технологиями Wintel. Именно союз Intel с Microsoft помог производителям процессоров x86 отразить в конце 80-х годов атаку со стороны поставщиков RISC-процессоров.
"До тех пор, пока не появится решение с альтернативным набором инструкций, обеспечивающее в пять раз более высокую производительность, у клиентов не будет стимула что-либо менять, -- утверждает Раттнер. -- Именно эти трудности и приходится сегодня преодолевать разработчикам более мощной архитектуры Intel Itanium".
Выше только звезды?
Впрочем, нельзя утверждать, что набор инструкций x86 не получит какое-то совершенно новое материальное воплощение, потому что кремниевые транзисторы уже фактически исчерпали свой физический потенциал. На протяжении 40 лет транзисторы располагались под слоем кремниевой подложки. Сегодня имеющийся технический арсенал позволяет размещать их непосредственно на ее поверхности.
В результате появилась возможность изготавливать транзисторы не из кремния, а, например, из арсенида галлия, который обещает улучшить характеристики производительности и энергосбережения оборудования.
"Наверное, в ближайшем и следующем поколении (в течение двух-четырех лет) вряд ли стоит ждать каких-то существенных изменений, -- полагает Раттнер. -- Но через десять лет мы наверняка станем свидетелями применения новых материалов".
"Конечно, сфера использования архитектуры x86 ограничена определенным сегментом, -- отметил президент инжинирингового подразделения VIA Centaur Гленн Хенри. -- Вряд ли такие процессоры подходят для изготовления тостеров или топливных инжекторов автомобиля. Естественно, существует и верхнее ограничение, если вы собираетесь, например, смоделировать взрыв атомных бомб. Что же касается среднего сегмента, здесь архитектура x86 уже давно доказала свою способность адаптироваться к самым разным потребностям".
Intel весьма активно работает над созданием нового электронного оборудования на базе транзисторов, но не проявляет особого усердия при решении задач, ориентированных на далекую перспективу и связанных с проектированием квантовых процессоров и моделированием ДНК.
"Реализация подобных проектов предполагает изменение фундаментальных математических основ функционирования вычислительной техники, а следовательно, сопряжена с серьезным риском, -- пояснил Раттнер. -- Кроме того, сферы применения таких технологий ограничены достаточно узкими областями, они не претендуют на решение задач общего назначения".
По мнению Маури, появления подобных эзотерических технологий следует ждать не раньше, чем через 20 лет.
"Я полагаю, что этого не произойдет до тех пор, пока люди не исчерпают резервы привычных технологий, -- отметил он. -- Только тогда они всерьез задумаются об этом. При попытке свить провод из отдельных атомов начинают происходить весьма странные вещи, и у разработчиков нет точного рецепта относительно того, что в таких случаях следует делать".