Intel Larrabee

Материал из Абсурдопедии
Перейти к навигацииПерейти к поиску

Intel Larrabee — былинный, эпичный и, разумеется, былинно провальный проект™ корпорации Intel по созданию вундерваффе, которое должно было одним махом вернуть Голубому Гиганту доминирование на рынке дискретной графики, заодно откусив жирный кусок у зелёных и красных в сфере высокопроизводительных вычислений. Представлял собой попытку скрестить ежа с ужом, а именно — процессор общего назначения с графическим ускорителем, используя для этого магию x86-архитектуры. В результате получился не столько Франкенштейн, сколько гомункул, которого сначала долго и с помпой вынашивали, а потом тихо и стыдливо утопили в формалине, явив миру под вывеской Xeon Phi.

Зачатие в пробирке[править]

В середине нулевых, когда трава была зеленее, а Intel безраздельно царствовал на процессорном Олимпе, не давая AMD продохнуть, в головах синих стратегов зародилась крамольная, но гениальная в своей наглости мысль. Рынок дискретных видеокарт, плотно поделенный между вечно бодающимися Nvidia и ATI (ещё не купленной AMD), выглядел уж больно аппетитно. Интеловские встроенные решения, вроде GMA, годились разве что для показа рабочего стола, созерцания пиксельных пасьянсов и отрисовки Кваки в полноцвете (хоть и получше Tomb Raider на S3 ViRGE, господа!), вызывая у любого уважающего себя геймера лишь гомерический хохот и праведный гнев. Попытки влезть в высшую лигу у Intel уже были, например, былинный провал i740, после которого компания, казалось, зареклась соваться в дискретную графику. Но амбиции и жажда тотального доминирования взяли своё.

Идея была не в том, чтобы просто сделать ещё одну видеокарту, которая будет чуть быстрее или чуть дешевле конкурентов. Нет, Intel замахнулась на самое святое — на саму парадигму построения GPU. Вместо того чтобы городить огород из узкоспециализированных блоков для растеризации, шейдеров, и прочей графической магии, как это делали Nvidia и ATI, было решено пойти путём истинных джедаев x86. Концепция Larrabee, анонсированная с большой помпой на SIGGRAPH в 2008 году, заключалась в создании многоядерного (many-core) процессора, состоящего из десятков (в перспективе — сотен) упрощённых, но вполне себе полноценных x86-ядер.

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

За основу для этих ядер был взят не какой-нибудь новомодный Core 2 Duo, а старый, добрый и простой как валенок Pentium первого поколения (конкретнее, ядро P54C). Конечно, его основательно допилили, прикрутив 64-битные расширения, многопоточность (до четырёх потоков на ядро) и, что самое главное, — широченный 512-битный векторный блок (VPU). Именно этот VPU и должен был стать тем самым секретным ингредиентом, который позволит куче мелких пентиумов ворочать графонием не хуже, а то и лучше, чем специализированные монстры от конкурентов. Связываться вся эта орава ядер должна была через высокоскоростную кольцевую шину (1024-битную, по 512 в каждом направлении).

Философия Larrabee была проста и соблазнительна: всё в софте. Задачи, для которых у обычных GPU были намертво впаянные в кремний блоки (z-буферизация, отсечение, блендинг), здесь предполагалось выполнять программно, на этих самых x86-ядрах. Это сулило невиданную гибкость. Можно было на лету менять рендеринговый пайплайн, реализовывать любые, самые экзотические алгоритмы, и вообще, творить дичь. Разработчикам обещали рай на земле: больше не нужно было ковыряться со специфическими шейдерными языками, всё можно было писать на привычном C++, используя стандартные инструменты. Программируемость должна была стать альфой и омегой Larrabee.

Беременность слона[править]

Слухи о проекте, тогда ещё под кодовым названием SMAC, поползли в 2005-м, а официальные намёки начались в 2007-м. Intel развернула мощнейшую пиар-кампанию. На всех конференциях и форумах разработчиков (IDF, SIGGRAPH) представители компании с горящими глазами рассказывали о грядущей революции. Особый упор делался на трассировку лучей в реальном времени — священный Грааль компьютерной графики. В то время как Nvidia и AMD только-только осваивали унифицированную шейдерную архитектуру, Intel уже показывала демки Enemy Territory: Quake Wars с фотореалистичными отражениями в воде, полностью обсчитанными методом рейтрейсинга на прототипе Larrabee.

Если вы посмотрите на воду... это сделано всего лишь десятью строчками... кода.
— Билл Марк, старший научный сотрудник Intel, на демонстрации в 2009 году

Демка, конечно, выглядела впечатляюще. Водичка блестела, отражала пролетающие кораблики, и всё это, как утверждалось, работало в реальном времени. Публика ахала, конкуренты нервно курили в сторонке и делали хорошую мину при плохой игре. Один из сотрудников Nvidia тогда назвал презентацию Intel маркетинговой пылью и процитировал аналитика, сравнившего архитектуру Larrabee с GPU 2006 года. Но хайп-трейн уже было не остановить. Intel обещала выпустить потребительскую видеокарту на базе Larrabee в 2010 году. Игровое сообщество замерло в ожидании третьего игрока, который придёт и всех рассудит.

За кулисами, однако, всё было далеко не так радужно. Разработка шла со скрипом. Концепция всё в софте натолкнулась на суровую реальность: написать эффективный программный растеризатор, который бы не уступал специализированному железу, оказалось задачей титанической сложности. Драйверы были сырыми и глючными. Производительность в реальных играх, использующих традиционный растеризационный конвейер DirectX и OpenGL, оставляла желать лучшего. Инженеры Intel, во главе с такими светилами как Том Форсайт, трудились не покладая рук, но время уходило.

Проблема была в том, что Larrabee пытался усидеть на двух стульях. С одной стороны, это был GPGPU-ускоритель, идеально подходящий для параллельных вычислений и новомодных штук вроде трассировки лучей в реальном времени. С другой — его пытались заставить эффективно работать с легаси-кодом, написанным и заточенным под совершенно другую архитектуру. И если в синтетических тестах и специально написанных демках Larrabee мог показывать чудеса, то в обычном Crysis он сливал тогдашним топам от Nvidia и ATI. А геймерам, как известно, нужны не красивые демки, а высокий FPS.

Выкидыш[править]

К концу 2009 года стало очевидно, что слон не родится в срок. Задержки в разработке как железа, так и софта, становились критическими. А конкуренты не дремали: ATI выпустила свою сверх-успешную линейку Radeon HD 5000 с поддержкой DirectX 11, а Nvidia готовила к выходу своих фермиевых монстров. На фоне этого первые тесты Larrabee выглядели, мягко говоря, неубедительно. По слухам, производительность прототипов едва дотягивала до уровня GeForce GTX 285, который на тот момент уже считался решением прошлого поколения.

4 декабря 2009 года Intel была вынуждена сделать официальное заявление: Larrabee не выйдет на потребительский рынок в качестве игровой видеокарты. Вместо этого, проект переориентировали на рынок высокопроизводительных вычислений (HPC), где он должен был стать платформой для разработчиков. Это был эвфемизм, означавший полный и безоговорочный провал первоначальной затеи. В мае 2010 года было объявлено об окончательном прекращении проекта по созданию дискретной GPU на базе Larrabee.

Причины провала были комплексными. Во-первых, банально не успели. Рынок GPU развивался стремительно, и к моменту гипотетического релиза Larrabee был бы уже неконкурентоспособен. Во-вторых, производительность на ватт оказалась ниже плинтуса. Пытаться эмулировать в софте то, что у конкурентов делало специализированное железо, оказалось крайне энергозатратно. В-третьих, сказалась излишняя самоуверенность Intel. Они верили, что магия x86 и программная гибкость сами по себе обеспечат победу. Но оказалось, что десятилетия эволюции специализированных GPU нельзя просто так выкинуть на свалку истории.

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

Так закончилась эта амбициозная сага. Мечта о третьей силе на рынке игровых видеокарт рассыпалась в прах. Геймеры вздохнули и продолжили выбирать между красным и зелёным. А Intel... Intel не была бы собой, если бы просто так похоронила многомиллиардный проект.

Реинкарнация в зомби: Xeon Phi[править]

Пепел Larrabee недолго оставался холодным. Уже в 2010 году Intel анонсировала новую архитектуру Many Integrated Core (MIC), которая, по сути, была прямым наследником идей Larrabee. Технологию, не взлетевшую в игровом сегменте, решили пристроить туда, где её сильные стороны — огромное количество x86-ядер и мощные векторные блоки — были бы более востребованы: в мир суперкомпьютеров и HPC. Так на свет появился бренд Xeon Phi.

Первые продукты, известные под кодовым названием Knights Corner, вышли в 2012 году. Они представляли собой карты-ускорители на PCI Express, которые работали в паре с обычными процессорами Xeon. На одной такой плате могло размещаться до 61 ядра, и всё это великолепие, произведённое по 22-нм техпроцессу, обещало более 1 Терафлопса производительности в вычислениях с двойной точностью. Главным преимуществом перед GPGPU-решениями от Nvidia (Tesla) и AMD (FirePro/Instinct) была всё та же нативная поддержка x86. Учёным мужам и прочим бородатым админам суперкомпьютерных кластеров не нужно было переписывать свой код под CUDA или OpenCL — достаточно было относительно небольшой оптимизации, чтобы заставить его работать на сотнях ядер Phi. По крайней мере, так это выглядело в рекламных проспектах.

И поначалу дела шли неплохо. Xeon Phi нашёл свою нишу. Например, китайский суперкомпьютер Тяньхэ-2, который несколько лет подряд возглавлял топ-500 самых мощных систем мира, был построен именно на связке из процессоров Xeon и ускорителей Xeon Phi.

Следующее поколение, Knights Landing (2016), сделало ещё один шаг вперёд. Теперь Xeon Phi мог быть не только сопроцессором-картой, но и самостоятельным, загрузочным процессором, устанавливаемым в обычный сокет. Это был монстр с 72 ядрами, собственной высокоскоростной памятью MCDRAM и интегрированным сетевым контроллером Omni-Path. Казалось, что зомби-Larrabee обрёл вторую жизнь и вполне счастлив в своей новой ипостаси.

Но идиллия длилась недолго. Пока Intel почивала на лаврах, Nvidia не сидела сложа руки. Их архитектуры GPU эволюционировали, экосистема CUDA росла и крепла, а производительность в задачах, связанных с машинным обучением и нейросетями, росла экспоненциально. Xeon Phi, со своими корнями из мира классических HPC-задач, стал отставать в этом новом, хайповом направлении. Программировать под него всё равно оказалось не так просто, как обещалось, а производительность в реальных задачах не всегда оправдывала ожидания.

К тому же, сама Intel начала испытывать серьёзные проблемы со своими производственными процессами, в частности, с переходом на 10-нм техпроцесс. Следующее поколение Xeon Phi, Knights Hill, которое должно было производиться по этой технологии, было отменено. А в 2018-2019 годах Intel тихо и без лишнего шума начала сворачивать производство и продажу существующих моделей Knights Landing и Knights Mill. К 2020 году бренд Xeon Phi был официально мёртв. Круг замкнулся. Зомби, порождённый провалом, в конце концов, сам был отправлен на покой.

Наследие[править]

Несмотря на провал, Larrabee не был совсем бесполезным. Работа над ним дала инженерам Intel бесценный опыт в создании многоядерных архитектур. А самое главное — именно из Larrabee вырос набор инструкций AVX-512, который сегодня является неотъемлемой частью топовых процессоров Xeon и даже некоторых десктопных Core. Так что каждый раз, когда ваш сервер сжимает данные или обсчитывает научную модель с использованием AVX-512, где-то в кремниевом раю улыбается один маленький, но гордый призрак Larrabee.

Более того, сама идея гибридного процессора, сочетающего в себе CPU и GPU-подобные возможности, никуда не делась. Её, в том или ином виде, реализовала AMD в своих APU. Да и сама Intel, нахлебавшись с Larrabee, не оставила попыток вернуться на рынок дискретной графики. В 2018 году они переманили у AMD гуру графики Раджа Кодури и даже вернули в свои ряды одного из архитекторов Larrabee, Тома Форсайта. Результатом этих усилий стала линейка видеокарт Intel Arc, которая, в отличие от своего идейного предка, построена по вполне традиционным канонам.