Tesla рассказала об архитектуре чипа D1 для суперкомпьютера Dojo

Tesla поделилась подробностями о собственном процессоре D1, который станет основой ИИ-суперкомпьютера Dojo. Компания рассказала об архитектуре, устройстве и возможностях нового чипа.

8d0bab31c70081e8e743ade53a2cfac1.jpg

Свою разработку Tesla представила на конференции Hot Chips 34. Презентацию провел Эмиль Талпес, выходец из AMD, который работает над созданием и совершенствованием аппаратного обеспечения Tesla.

Для масштабируемости механизмов в рамках большой вычислительной системы используется распределённая сеть хранения на базе SRAM.

5678fff7356dfbe8694df1e8181a5d6c.jpg

Основой процессора выступает ядро целочисленных вычислений на некоторых инструкциях из набора RISC-V и с фирменными инструкциями, оптимизированными с учётом требований для ядер машинного обучения. При этом блок векторной математики был создан практически с нуля.

51eae28fe116169ce9ec39bf97af3d05.jpg

Набор инструкций Dojo включает скалярные, матричные и SIMD-инструкции, а также примитивы для перемещения данных из локальной памяти в удалённую и семафоры с барьерами для согласования работы c памятью во всей системе. Специфические инструкции для машинного обучения реализованы в чипе аппаратным путём.

a494866f2b579bef4bad95cf8bc4b705.jpg

D1 будет представлять собой высокопроизводительный процессор общего назначения без специфических ускорителей. Каждый его вычислительный блок включает одно ядро D1 с локальной памятью и интерфейсами ввода/вывода (64-бит суперскалярно).

7aa3f0f198ad72d24906f53342a15f03.jpg

В ядре реализована поддержка многопоточности (SMT4) для увеличения производительности на такт. Данная реализация не поддерживает виртуальную память, а её механизмы защиты ограничены в функциональности. За управление ресурсами Dojo отвечает специализированный программный стек и фирменное ПО.

038d2100f82db5aa30545d56fcb2e0af.jpg

Ядро 64-бит имеет 32-байтное окно выборки (fetch window), которое может содержать до 8 инструкций. Это соответствует ширине декодера. Он способен обрабатывать два потока за такт. Результат поступает в планировщики, которые отправляют его в блок целочисленных вычислений (два ALU) или в векторный блок (SIMD шириной 64 байт + перемножение матриц 8×8×4).

92be4af07b6812670e3d40d802cc0293.jpg

У каждого ядра D1 есть SRAM объёмом 1,25 Мбайт. Данная память способна загружать данные на скорости 400 Гбайт/с и сохранять на скорости 270 Гбайт/с. Специальные инструкции позволяют работать с данными в других ядрах Dojo. Работа с удалённой памятью не требует дополнительных операций.

91137bc67ff1512e3ba1f636319580d0.jpg

Скалярный блок поддерживает целочисленные форматы разрядностью от 8 до 64 бит, а векторный и матричный блоки — широкий набор форматов с плавающей запятой, в том числе для вычислений смешанной точности (FP32, BF16, CFP16 и CFP8). Компилятор Dojo может динамически изменять значения мантиссы и экспоненты, и система может использовать до 16 различных векторных форматов.

2254a9ae03bb404fe7afe7bae8883583.jpg

Топология D1 использует меш-структуру, в которой каждые 12 ядер объединены в логический блок, а сам чип представляет собой массив размером 18×20 ядер, однако доступны лишь 354 ядра из 360 присутствующих на кристалле. Кристалл площадью 645 мм2 производится на мощностях TSMC с использованием 7-нм техпроцесса. Тактовая частота составляет 2 ГГц, общий объём памяти SRAM — 440 Мбайт.

76c8f638fd47767c11a92bbf2d2867e7.jpg

Процессор D1 развивает 362 Тфлопс в режиме BF16/CFP8 (до 22 Тфлопс в режиме FP32). Режим FP64 векторными блоками D1 не поддерживается, и для многих традиционных HPC-нагрузок процессор не подойдёт.

c16c5a03fc4151535b90f5f9d0f60cc2.jpg

Каждый кристалл D1 имеет 576-битный внешний интерфейс SerDes с совокупной производительностью по всем четырём сторонам (8 Тбайт/с). Он объединяет кристаллы в единую матрицу 5×5. Матрица из 25 кристаллов D1 называется Dojo training tile.

d33331a45021a951abd184744a75f983.jpg

Dojo training tile представляет собой термоэлектромеханический модуль. Он имеет внешний интерфейс с пропускной способностью 4,5 Тбайт/с на каждую сторону, совокупно располагающий 11 Гбайт памяти SRAM, а также собственную систему питания мощностью 15 кВт. Вычислительная мощность составляет 9 Пфлопс в формате BF16/CFP8.

d07449775a41ce1d4f88c4fe1e9cc96b.jpg

Dojo training tile можно объединять в более производительные матрицы. Для связи используются блоки DIP — Dojo Interface Processors — интерфейсные процессоры, посредством которых матрицы общаются с хост-системами. Каждый DIP содержит 32 Гбайт памяти HBM.

0cb76531fb622b72743ef02f1d10f9e2.jpg

DIP использует собственный транспортный протокол (Tesla Transport Protocol, TTP), обеспечивающий пропускную способность 900 Гбайт/с, а поверх Ethernet — 50 Гбайт/с. Внешний интерфейс у карточек — PCI Express 4.0, и каждая интерфейсная карта несёт пару DIP. С каждой стороны каждого ряда установлено по 5 DIP, что даёт скорость до 4,5 Тбайт/с от HBM-стеков.

63c7057a7979f272e6cd243dc86820e5.jpg

При требовании слишком большого числа переходов (до 30 в случае обращения от края до края) система может воспользоваться DIP, объединёнными снаружи 400GbE-сетью по топологии fat tree.

aebe7afc6d033ce69cc7e28bfca1747c.jpg

Суперкомпьютер Dojo V1 в базовой версии выдаёт 1 Эфлопс в режиме BF16/CFP8 и может загружать непосредственно в SRAM модели объёмом до 1,3 Тбайт, а ещё 13 Тбайт данных можно хранить в HBM-сборках DIP. Полномасштабная версия Dojo будет иметь производительность до 20 Эфлопс.

Tesla представила чип Dojo D1 в августе 2021 года. Он предназначен для обучения моделей искусственного интеллекта внутри центров обработки данных. Чипы Tesla помогут обучать модели распознавать различные предметы из видеопотоков, собранных камерами внутри автомобилей.

На данный момент компания использует в своих целях седьмой по величине GPU-суперкомпьютер в мире. Он работает на базе ускорителей Nvidia A100 с 80 ГБ памяти. Всего суперкомпьютер включает в себя 7360 видеокарт.

© Habrahabr.ru