-- чтобы связать множество GPU в большой вычислительный под/pod, нужно было добавить DPU (data processing unit), сетевой чип. Купили Mellanox и сделали BlueField. Вот я писал в октябре 2020, "DPU (data processing unit) BlueField-2 на 6млрд. транзисторах берёт на себя шифрование и передачу данных в компьютерных сетях, включая кластеры в датацентрах. Выяснилось, что на эту передачу данных уходит до 30% компьютерной мощности датацентра в текущей архитектуре. Вот с дорогих CPU и GPU эти 30% нагрузки уходят в специализированные более дешёвые чипы (один чип DTU берёт на себя нагрузку по пересылке данных с примерно 125 CPU кластера). Примером тут стал выпуск NVIDIA EGX A100 -- чипа A100 или другого с архитектурой Ampere и BlueField-2 на одной плате, вычислительная мощь и секьюрное скоростное сетевое соединение через 6 сетевых адаптеров -- https://www.nvidia.com/en-us/data-center/products/egx-converged-accelerator/. Это всё серединка. Что это означает? Вот фраза из пресс-релиза: "Вместо 10 000 серверов в одном месте будущие корпоративные ЦОД будут иметь один или несколько серверов в 10 000 различных локациях, включая офисные здания, фабрики, склады, вышки сотовой связи, школы, магазины и банки"".
-- и тогда же я отметил, что и на CPU есть претензии: NVIDIA хотела купить ещё и ARM, но ей вряд ли дадут. Хотя никаких отмен не было, сделка в процессе (но вопросы к ней, конечно, есть -- https://www.cnbc.com/2021/04/19/nvidia-takeover-of-arm-faces-uk-government-intervention.html).
CPU для датацентра с GPU и TPU
Фирму ARM NVIDIA пока не купила, он пока "полукуплена", но можно взять и лицензировать процессор. NVIDIA от планов по CPU не отказалась, и от планов купить ARM не отказалась. CPU текущей архитектуры от Intel и AMD плохо работают с памятью. И NVIDIA объявила о создании собственного CPU на базе энергоэффективного процессора ядра ARM и памяти LPDDR5, который снимает эту проблему. Это CPU Grace, названный в честь Grace Hopper -- https://en.wikipedia.org/wiki/Grace_Hopper. И помним, что Hopper -- это название следующей архитектуры GPU. Будет Grace Hopper, СPU+GPU, хорошая шутка!
Основное препятствие нынешних CPU и GPU в распараллеливании вычислений -- это низкая скорость работы с памятью. Поэтому в новом процессоре на базе нового ядра ARM NEOVERSE (планируется в 2023 году) на LDDPR5 расшивается прежде всего канал от памяти в GPU, на пути которого стоит CPU -- и там получают на Grace Hopper 2000Gb/sec (при нынешней архитектуре CPU x86 и DDR4 это 64Gb/sec), что даст x10 ускорение в дообучении нейросетки с 1 триллионом параметров, а именно с 1 месяца до 3 дней. А если речь идёт о 0.5T параметров, то вывод такой огромной нейросетки в части обработки естественного языка можно будет делать в реальном времени на одиночном GPU. Триллионная сетка в 2023 году -- это будет расхожий размерчик, максимальная обученная сетка в текущем году уже 1.6 триллионов параметров, https://arxiv.org/abs/2101.03961. Конечно, все эти оценки -- маркетинг-маркетинг, но какое-то представление о масштабах всё-таки дают.
Вот тут roadmap этих чипов, программа развития одного из отнюдь не самых нижних уровней технологического стека NVIDIA (помните "многоуровневую программу развития танцора" из учебника системного мышления? вот это как раз программа развития одного из уровней развития для датацентра, который выпускает NVIDIA):
Самое интересное начинается потом: системная инженерия в действии. Целевая система NVIDIA -- "датацентр вместе с системным программным обеспечением".
Монтаж суперкомпьютера (он же -- "датацентр", ибо на нём можно выполнять множество самых разных программ одновременно) Christofari на 6.7PFLOPS для Сбера занял у NVIDIA меньше месяца -- вот это и есть целевая система для NVIDIA. Вот текущий стек для такого :
-- много-много уровней микропроцессорной архитектуры (самая разная IP в чипах -- вычислительные ядра, маршрутизация данных, виртуализация и т.д.)
-- CPU Grace, GPU Hopper, DPU BlueField -- чипы/микропроцессоры. Тут даже не волнует, что каждый год выходит чип с новой архитектурой и на новом техпроцессе, и каждый раз объявляется x10 по энергоэффективности и производительности на этом уровне. Так, сегодня был объявлен DPU BlueField-3 как "первая 400Gb/s инфраструктура датацентра на чипе".
-- плата, которая объединяет все чипы и память. Скажем, сегодня объявлена плата (автомобильный одноплатный компьютер) Atlan с CPU+GPU+DPU -- его можно будет найти в модельном ряду автомобилей 2025 года (а сам этот компьютер выйдет в 2024 году, год на встраивание в автомобили). Не скоро, да -- но там будет производительность 1 POPS (1000 TOPS, сегодня Xavier имеет производительность 30TOPS, а в 2022 году выйдет Orin на 254TOPS).
-- мини-эвм из нескольких одноплатных компьютеров с общим термопакетом, механикой (конструктив рэка в серверную стойку) и общим выходом в сеть, это серия DGX.
-- SuperPOD из нескольких серверных стоек с рэками DGX.
-- ждём-с датацентра "под ключ" со многими SupePOD. В речи Дженсена Хуанга он подчёркивает, что современная единица вычислительной мощности -- это как раз датацентр. Пока он считает, что датацентр это просто часть SuperPOD (датацентр -- это когда безопасность всех от всех, это не просто компьютеры с линиями связи между ними), или даже часть строительного блока для SuperPOD, ибо у этих станций DGX мощь достаточная для ой как много чего, а безопасность и виртуализация идёт "из коробки" (и софт, и хард для этого имеются). Но уже в EDX линейке (DGX -- это исследовательские суперкомпьютеры-датацентры, а EDX -- линейка для корпоративных вычислений) становится очевидным, что датацентр в представлении NVIDIA более распределённый.
-- операционный софт. И речь идёт не только о DOCA как похожей на классические операционные системы прослойки контейнеризации и безопасности между прикладным софтом и железом, но и всяческих программах современного стека искусственного интеллекта (Megatron, TAO, Jarvis, и т.д. -- это ж не прикладной софт, это полный аналог "системного софта" для Software 2.0 -- и Дженсен пару раз в презентации это упомянул. Всякие "компиляторы ваших прикладных знаний-умений для использования в составе датацентра" -- это системный софт, и NVIDIA им вполне озабочена).
Захват мира ступенька за ступенькой, на каждой ступеньке своя команда инженеров, своя архитектура, свой язык, свои модели, свои цены, свои интерфейсы, свои практики разработки. С каждой ступеньки можно идти вверх самыми разными путями (это не столько "стек", сколько дерево корнем вверх), можно торговать самой платформой, а можно торговать продуктами на базе платформы -- на сколько хватит денег для разработки этих продуктов, ведь нужно профинансировать каждую команду инженеров на каждом уровне (и не одну команду: под каждую часть системы нужна команда, и ещё команда для всей системы, и так на каждом уровне продукта). И обеспечить управление конфигурацией и изменениями, всё ж непрерывно меняется в этом стеке чуть не ежедневно!
Продадут ли NVIDIA их чипы, основу их могущества? Продадут! Радостно продадут! Я помню, что инженеры NVIDIA на мой вопрос, не боятся ли они продавать чипы компьютерщикам из Cray, которые выпускают серверы на этих чипах, конкурирующие с DGX, отвечали, что фишка даже не в том, что они продадут прошлое поколение чипов (что правда), а сами будут поставлять DGX на новом поколении, недоступном для Cray. Их главный козырь был в том, что они сформировали термопакет так, что людям из Cray придётся сильно помучаться, чтобы повторить их достижение. Инженерия на каждом системном уровне -- настоящая, не делается никаких скидок инженерам при использовании новейших архитектур на нижних уровнях для их архитектурных решений на более высоких уровнях. Вся инженерия должна быть первосортной, на всех системных уровнях, иначе не это не инженерия! Конкуренция идёт на каждом уровне!
Компьютер для DGX SuperPOD обновили, там теперь блоки A100 с 80Gb памяти, и вывод для GPT-3 эта штука делает 16 раз за 1 секунду. Если брать строительный блок DGX station A100 (дексктопная комплектация A100, а не рэковая на 4 раза по 80G), то можно арендовать её через интернет по цене $9000 в месяц (или купить за $149тыс). Для небольшой лаборатории это уже может быть посильной платой, и это чудовищная вычислительная мощь по нынешним временам.
Почему NVIDIA идёт на относительно дешёвую аренду DGX station 320G HBM2e с шиной 8ТB/s с производительностью до 2.5petaFLOPS TF32 или даже 5petaOPS INT8? Заявляемый тезис: демократизация AI. Исследователи должны иметь возможность задёшево и быстро получить адекватную их потребностям вычислительную мощность. А потом они обучатся, некоторым из них придёт аппетит во время еды -- и они уболтают каких-нибудь боссов купить им если не SuperPOD, то хотя бы арендовать его мощности "в облаке". NVIDIA использует аппаратуру BlueField для того, чтобы превратить SuperPOD в "суперкомпьютер в облаках" -- там встроена виртуализация и инфраструктура безопасности, поэтому всё будет "в облаке", но безопасно без потерь производительности. NVIDIA DGX SuperPOD with NVIDIA BlueField. Конкуренция с фирмами, которые занимаются безопасностью? Нет, не конкуренция: вычислительная инфраструктура для них! А всё вместе? Software defined datacenter -- откусываете себе кусок вычислительной мощности и объявляете его датацентром, а сисадмином всего этого откушенного куска выступает софт DOCA. И ещё всё это кладётся в VMWare, и вся корпоративная инфраструктура AI оказывается в привычной среде, железо NVIDIA закрывается привычными корпоративным сисадминам интерфейсами.
Альтернативные технологические стеки
Поскольку в NVIDIA сидят системные инженеры, то этот стек может собираться совсем по-другому. Например, берём одноплатный компьютер Orin и делаем на его основе полную систему автономного вождения Hyperion 8 AV platform -- там и Orin (три штуки в комплекте, из них два для вычислений автономного вождения, а один для интерфейсов и развлечений), и радары, и лидары, и камеры, и софт для всего этого и даже запись всего материала с камер и датчиков как Ground truth (комплект предлагается прежде всего для проведения разработок в части обучения систем автопилотирования). А если не автомобиль, а что поменьше -- какой-нибудь робот? Отлично, и туда тоже, https://developer.nvidia.com/aerial-sdk, ещё и связь по 5G будет обеспечена: https://developer.nvidia.com/blog/new-real-time-smartnic-technology-5t-for-5g/ (сегодня было объявлено, что в эту технологию играют уже Fujitsu, Google Cloud, Mavenir, Radisys and Wind River. Впрочем, во всё сегодня объявленное уже кто-то играет из больших и серьёзных игроков). И оркестрация всего это комьютерного флота, управление зоопарком вычислительной мощности: софт для этого тоже есть. Отличие от других инициатив по 5G? Безопасность, защита всех приложений от всех: строится промышленная сеть.
А продадут ли просто GPU в чужие руки? И геймерам продадут, и майнерам, и в датацентры (облачный сервис AWS Graviton2 с GPU от NVIDIA появится во второй половине 2021 года, NVIDIA объявляет это как "easiest way to move Android gaming to the cloud").
Продадут ли не SuperPOD, а прямо суперкомпьютер? Продадут! На базе технологий NVIDIA и Hewlett Packard (у них берётся главным образом инфраструктура памяти) строится суперкомпьютер ALPS мощностью 20 exaFLOPS of AI (операции с плавающими формата, используемого в AI -- https://blogs.nvidia.com/blog/2020/05/14/tensorfloat-32-precision-format/). Всё, пошли экзафлопы -- и сразу десятками.
И это просто хардвер. А над этим огромное количество софта, чтобы не нужно было тратить время на оживление железа (весь этот софт уже неоднократно объявлялся -- там и Omniverse как виртуальный мир с шикарным рендерингом и физическим движком, и рекомендальная система общего назначения, и голосовой ассистент, и движок для ботов и много чего ещё. Анонсированы новые версии, как же без этого). Ах, и очередные новости про корпоративные облака на базе уже не DGX, а EGX (то есть рэков не для разработчиков AI, а более скромных по характеристикам).
NVIDIA как хороший кейс по системному мышлению, инженерии, предпринимательству
Какие уроки из этого можно извлечь? Для меня это всё хороший набор примеров системного мышления в его связи с инженерией (ну, инженерия тут очевидна) и предпринимательством (предпринимательская стратегия -- disruption/подрыв на нижних уровнях технологического стека, а потом бегом-бегом вверх по стеку "к прикладным деньгам", насколько позволяют деньги и время, с огромным уважением к системной архитектуре, жёсткая привязка работы всей фирмы к работе над чётко прочерченными системными уровнями продукта, переход от продуктов к сервисам). Собственно, все мои материалы о NVIDIA именно об этом: она показывает, как системное мышление перевести в деньги. Про менеджмент я молчу: всей этой быстроразвивающейся махиной нужно управлять, но нам мало известно про то, как управляется NVIDIA, учебного примера тут не сделаешь (хотя можно восхищаться, что такая фирма работает и поставляет продукцию, хотя и немножко нервно, как мы знаем по рынку видеокарт -- но кто ж тут с этими форсмажорами работает не нервно!).
Второй тут пример -- это SpaceX, но про сами технологии SpaceX мы знаем мало, кроме того, что "оно летает!". А вот про технологический стек NVIDIA мы знаем предостаточно (хотя тоже не так много -- но побольше, чем про StarShip и StarLink), и как учебный пример это более чистый случай.
А в чём тут пример предпринимательства? Вы должны взять безумную инженерную идею и вложиться настоящими безумными деньгами. Так, разработка NVIDIA Grace CPU оценивается в 10тыс. инженерных лет (понятно, что эту цифру можно долго обсуждать -- включили ли сюда годы работы инженеров, которые разрабатывали технологию очистки кремния, или таки речь идёт только о тех инженерах, которые разрабатывали именно архитектуру Grace, включены ли сюда работы только инженеров NVIDIA, или и все годы работы инженеров ARM, но опять-таки -- цифра указывает на масштабы). Стоит ли овчинка выделки? NVIDIA говорит, что Grace даёт x10 по производительности по сравнению с текущими компьютерами на базе GPU и процессоров x86 -- явно стоит овчинка выделки! В Grace задействована LPDDR5 подсистема памяти, которая даёт удвоенную скорость канала к памяти и x10 энергоэффективность по сравнению с DDR4. И всё это с выполнением обещания, что программироваться будет по-прежнему через интерфейс CUDA, "все ваши вложения в софт сохранятся". Нравится?! Конечно! Если вы предприниматель, то готовы вы вложить деньги на те самые 10тыс. инженерных лет зарплаты инженеров, их оборудования, испорченных образцов (это электроника!), вложить свои нервы на их бесчисленные опоздания и исправление неизбежных ошибок? Кстати, поставка ожидается в 2023 году. Готовы вложиться сейчас, а потом ожидать, что в 2023 году этот Grace будет расходиться как горячие пирожки, и окупит все эти вложения и даже даст прибыль? Вот люди в NVIDIA готовы. Это и есть пример технологического предпринимательства.
На чём основываются эти предположения? Тезис Sutton: компьютерный интеллект определяется прежде всего просто мощностью вычислителя, а не хитростью алгоритма. Поэтому хотите стать умней -- запасайтесь вычислительной мощностью, What Jensen giveth, Jürgen taketh away (https://ailev.livejournal.com/1419891.html). А поскольку один вычислительный узел обладает весьма ограниченной скоростью вычислений, нужно как-то распараллелить эти вычисления. Так что архитектурно параллелим внутри чипа, внутри платы, внутри рэка, внутри серверной стойки, внутри пода, внутри датацентра. Кто лучше распараллелил, тот и в дамках -- это и есть суть перехода от "закона Мура" к "закону Хуанга".
Дженсен Хуанг закончил красиво, подпишусь под каждым словом: "двадцать лет назад это было фантастикой, десять лет назад мы об этом мечтали, а сейчас мы в этом живём". Банальность, конечно, но если честно, то я и не мечтал в таком жить, и в фантастике не всё встречал. Там много чего ещё было, но я бы ещё про Omniverse отдельно заметил -- виртуальный мир с физическим движком для digital twins.
На картинке иконки знаменитых учёных и инженеров, имена которых присваиваются архитектурам процессоров NVIDIA (Grace Hopper там тоже есть. А рядом пролетающий мотылёк -- это ж именно она первая придумала термин computer bug, после того как нашла реального мотылька, мешавшего работе компьютера Mark II Aiken Relay Calculator, и она провела первый debug/отладку путём удаления этого мотылька):
У меня тоже есть маечка с такими иконками (только прошлых поколений процессоров NVIDIA). И я использую её по назначению: https://www.youtube.com/watch?v=i2vFwjFmF8Y (у меня, как заведено издревле, "после лекции -- танцы").