Cerebras WSE: станет ли гигантский процессор трендом в полупроводниковой индустрии?
Одним из самых ярких анонсов проходящего в эти дни симпозиума Hot Chips стал процессор Wafer Scale Engine (WSE), предназначенный для машинного обучения и представленный молодым американским стартапом Cerebras. Размер его кристалла составил …462 см2 — он целиком вырезан из полупроводниковой пластины стандартного диаметра 30 см, образуя квадрат 22×22 см. Для сравнения, площадь самого большого до сих пор кристалла, 12-нм ГПУ GV100 (используется в графическом ускорителе Tesla V100 и видеокарте Titan V), составляет «всего» 8.15 см2 — в 57 раз меньше. При 16-нм техпроцессе от TSMC такой размер позволил разместить на пластине сразу 84 процессора, которые в совокупности содержат 400 тыс вычислительных ядер и 18 Гб памяти. Общее количество транзисторов на кристалле составляет при этом невообразимые 1.2 трлн транзисторов (в GV100 — 21.1 млрд).
Если бы новость об этом анонсе вышла 1 апреля, то сомнений в розыгрыше не было — зачем понадобилось создание такого огромного процессора, и каким образом это стало возможным?
Ответ на первый вопрос довольно простой — относительно небольшая пропускная способность обмена данными между чиплетами, которые за последнее время стали главным способом наращивания производительности. Например, в процессоре Ryzen 9 3900X она составляет 100 Гб/с. Это даже трое меньше пропускной способности у шины NVLink (в коммутатор NVSwitch от Nvidia), которая составляет 300 Гб/с.
А благодаря размещению всех процессоров на одном кристалле, пропускная способность между ними составила в WSE 100 петабит/с, т.е. 12.5 петабайт/с (Пб/с). По сравнению с 300 Гб/с это означает рост пропускной способности в 43.7 тыс раз, хотя Cerebras, сравнивая свой процессор с самым большим в мире ГПУ, приводит несколько более скромную цифру — 33 тыс. Что касается пропускной способности с памятью 18 Гб, размещенной на кристалле WSE, то она составляет 9 Пб/с — в 10.8 тыс раз больше по сравнению с ГПУ GV100 (870 Гб/с). Cerebras и здесь приводит более низкое значение этой разницы — в 3 тыс раз.
Зачем же нужна такая огромная пропускная способность? Все дело в назначении процессора Cerebras WSE — машинное обучение. Тренировка нейросети требует регулярного потока данных: 1) из памяти они загружаются в процессор, 2) там делаются определенные расчеты, 3) результат возвращается в память, где в зависимости от ответа «подкручиваются» веса нейронов, и 4) этот цикл повторяется до тех пор, пока нейросеть не будет натренирована надлежащим образом.
Таким образом, преимущества от размещения процессора на одном огромном кристалле с точки зрения производительности очевидны — но проблема в том, что реализовать такую схему очень сложно и дорого. Стартапу Cerebras пришлось преодолеть целый ряд проблем.
1. Первая и самая главная проблема — это конечно же выпуск годной продукции. Чем больше кристалл процессора, тем больше вероятность брака на каком-то его участке. Это снижает выпуск годной продукции и таким образом повышает её стоимость (в неё закладывается стоимость брака). Cerebras заявляет, что решила эту проблему, добавив «запасные» ядра (1-1.5% от общего количества), которые заменяют отбракованные. Это слишком очевидное решение, чтобы ответить на вопрос как ей это удалось — при том, что такое оказалось не под силу гигантам вроде Intel, AMD, Nvidia, IBM, Google и др. Но более подробной информацией мы, к сожалению, не располагаем.
2. Производители процессоров, такие как TSMC, традиционно «нарезают» кристаллы небольших размеров, поэтому их оборудование «печатает» процессоры соответствующим образом. Граница между процессорами имеет толщину около 100µ — Cerebras создали технологию, которая позволяет процессорам на кристалле взаимодействовать между собой через эти линии.
3. Процессор такого огромного размера и нагревается соответственно — энергопотребление WSE достигает 15 кВт. В Cerebras изобрели материал, который способен справится с отводом тепла от огромного куска кристалла.
4. Охлаждение — для своего чипа в компании разработали специальную вертикальную систему, охлаждающую не только сам процессор, но и 15-киловаттную систему энергопитания.
5. Упаковка кристалла в корпус — еще одна нетривиальная, с учетом его размеров, задача, с которой до сих пор никому не приходилось иметь дело.
К этому можно добавить программное обеспечение, способное эффективно работать сразу с 400 тыс ядер. Они гибкие, программируемые и оптимизированы для вычислений на т.н. разреженных (с преимущественно нулевыми элементами) матрицах. Разреженные матрицы избавляют от необходимости умножать на нули — из которых, согласно Cerebras, на 50-98% часто состоят данные в нейросетях. Тем самым снижается избыточная нагрузка и за счет высвободившихся ресурсов повышается производительности.
К сожалению, при всех этих впечатляющих характеристиках, Cerebras не приводит никаких конкретных бенчмарков с результатами, которые позволили бы сравнить WSE с какой-нибудь рабочей станцией — например, Nvidia DGX-2. Компания вскользь упоминает, что WSE сокращает время, которое уходит на решение задач искусственного интеллекта, с месяцев на минуты. Если допустить, что сравнение делается с графическим ускорителем, это весьма внушительная разница в производительности (в одном месяце содержится 43.2 тыс минут).
И теперь возникает главный вопрос: станет ли проектирование таких огромных процессоров трендом в индустрии рабочих станций, серверов, дата-центров, суперкомпьютеров и т.д.? Пожалуй это будет зависеть от стоимости и производительности WSE. Даже если небольшому стартапу с капиталом $112 млн и 173 инженерами и удалось за несколько лет создать подобный продукт, это еще не значит, что он будет пользоваться достаточно большим спросом, чтобы Cerebras окупила свои вложения. Неплохим результатом для компании станет её продажа какому-нибудь полупроводниковому гиганту — но и это будет зависеть от того насколько перспективным ему покажется подобный подход. А пока Cerebras начала поставлять прототипы WSE своим клиентам.