На конференции Hot Chips южнокорейский стартап Furiosa представил свой чип второго поколения для искусственного интеллекта под названием RNGD (произносится как «Ренигейд»).
Инженеры Furiosa пока еще работают над оптимизацией производительности своего программного обеспечения, но первоначальное тестирование RNGD показало, что одна карта PCIe (однокристальный ускоритель) может обеспечить общую производительность 2-3000 токенов в секунду – в зависимости от длины контекста – для больших языковых моделей с 10 млрд. параметров. Их огибающая мощность составляет 150-200 Вт.
Генеральный директор Furiosa Джун Пайк рассказал об истории и становлении компании, микроархитектуре чипа и своих планах на будущее.
«Когда мы основали компанию, мы в первую очередь твердо верили в искусственный интеллект. Независимо от полупроводниковой промышленности, мы не сомневались, что искусственный интеллект будет иметь большое значение», - отметил Пайк в интервью. «Я не сразу решил создать компанию по производству чипов, потому что я понимал, что данное занятие требует очень крупных капиталовложений, я знал, насколько это тяжело и насколько это сложный бизнес для стартапа».
Джун Пайк и два его соучредителя основали компанию Furiosa в 2017 году. Пайк работал в подразделении Samsung в Корее, занимающемся устройствами памяти. А до этого, получив специальность по архитектуре вычислительных систем в Технологическом институте Джорджии, он трудился над программным обеспечением для графических процессоров AMD. По его словам, примерно в то время, когда он покинул Samsung, компания пыталась усилить значимость своих обычных изделий для хранения информации, добавив логику, что, естественно, привело к появлению нескольких концепций ускорителей.
«Это заложило хорошую основу для того, чтобы мы вместе с членами моей команды подумали о разработке ускорителя, более ориентированного на конкретные приложения», - отметил он.
Пайк покинул Samsung в 2016 году. По счастливой случайности заседание Международной ассоциации компьютерной безопасности в том году проходило в Сеуле. Пайк присутствовал на многих презентациях, посвященных исследованиям чипов для искусственного интеллекта, и разговаривал со многими бывшими коллегами из Samsung, включая соучредителя Furiosa и технического директора Ханджуна Кима.
«Это только начало – разработка чипов для искусственного интеллекта только начинается», - сказал он. «Были проведены некоторые исследования, но еще многое предстоит изучить. Просто пришло понимание, что мы можем попробовать».
Компания Furiosa получила свое название в честь персонажа Шарлиз Терон из фильма 2015 года «Безумный Макс: дорога ярости», и в переводе на русский язык означает «заполнитель».
«Честно говоря, название было временным», - заявил Пайк. «Мы не рассматривали его, как серьезное. Но я считаю, что стартап должен быть энергичным и смелым, ведь вам нужно остаться на плаву, несмотря на все, что с вами происходит. У нас не было большого капитала, в отличие от крупных игроков, и нам приходилось выживать, несмотря на все трудности, поэтому название Furiosa нашло отклик в нашем представлении о нашем бизнесе».
Первый инвестор Furiosa, корейская поисковая компания Naver, вложила в стартап 1 миллион долларов. Чип первого поколения от Furiosa, выпущенный в 2021 году, был ориентирован на модели клеточных нейронных сетей, хотя команда осознавала, что не стоит чрезмерно специализироваться на чем-то одном. При ограниченном финансировании (на тот момент около 6 миллионов долларов) команда разработала свой дизайн на базе 14-нм процессора от Samsung, чтобы доказать эффективность своей концепции тензорного процессора. Образцы вышли в мае 2021 года, а три недели спустя компания представила результаты оценки MLPerf. Этот чип сейчас в небольших объемах используется в центрах хранения и обработки данных, принадлежащих южнокорейской интернет-компании Kakao.
Дизайн RNGD от Furiosa был «настолько амбициозным, насколько это возможно».
Для чипа RNGD компания смогла привлечь 60 миллионов долларов, используя свои изделия первого поколения в качестве наглядного примера.
«При таком бюджете мы старались продвигать наш чип как можно более активно», - сказал Пайк.
Нейросеть GPT-3 появилась в исследовательских работах в 2020 году, поэтому команда была осведомлена о масштабах моделей трансформаторов. Разработка RNGD началась в 2022 году, и она отражает самый большой размер (640 мм2), самый продвинутый узел (TSMC 5 нм) и самую передовую память (48 ГБ HBM3), которые компания могла себе позволить. Для вывода большой языковой модели была добавлена поддержка кодирования и обмена числами с плавающей запятой, а объем встроенной памяти увеличился до 256 МБ. Полученный результат – мощность 150-200 Вт по сравнению с 60 Вт в первом поколении.
Чип RNGD обеспечивает производительность 512 TFLOPS FP8 и поддерживает форматы BF 16, FP8, INT8 и INT4. Он производится на карте PCIe, подходящей примерно для 8-10 миллиардов моделей параметров, или можно подключить 8 карт для вывода моделей примерно до 100 миллиардов параметров.
Чип второго поколения RNGD от Furiosa использует технологию HBM3. В предыдущем поколении использовалась память LPDDR
Тензорный процессор
Концепция тензорного процессора от Furiosa основана на архитектуре, отличающейся от MatMul, которая, по словам Пайка, обеспечивает лучший баланс производительности, экономичности и программируемости.
«Одна из архитектурных задач, на которой мы сосредоточились, - это то, как мы можем создать правильную абстракцию между железом и программным обеспечением для достижения высокой эффективности и экономичности затрат», - отметил он. «В то же время чип должен быть достаточно программируемым, чтобы инженер-программист компиляторов мог сопоставить модели искусственного интеллекта с нашим оборудованием и максимально быстро использовать все его вычислительные возможности».
Многие современные ускорители ИИ используют в качестве базисного элемента умножение двухмерных матриц. Данные ИИ обычно поступают в виде тензоров – многомерных матриц, которые разбиваются на двумерные матрицы для обработки. Концепция Furiosa использует тензор в качестве базисного элемента.
«Мы повысили этот слой абстрагирования [уровень], поэтому то, как чип работает более естественно, отражает многомерное умножение матриц, называемое тензорным сжатием», - заявил Пайк. «Нам проще оптимизировать вычисления для нейронных сетей, потому что это более естественный слой абстрагирования, и мы также считаем, что сможем добиться более высокой эффективности повторного использования данных по сравнению с другими чипами, использующими 2D-матричное умножение».
Использование тензора в качестве базисного элемента, над которым выполняются операции, позволяет сохранить взаимосвязи между данными в нескольких измерениях тензора. Вычислительные требования снижаются за счет объединения элементов в нескольких измерениях в рамках одной операции. В примере с Furiosa входные данные больших языковых моделей могут быть тензором с измерениями для размера пакета, длины последовательности и характеристик; разбиение его на двумерные матрицы может привести к потере различия между последовательностями. В аппаратном обеспечении тензоры извлекаются из динамической оперативной памяти (DRAM) в полупроводниковую оперативную память (SRAM) только один раз, а одномерные срезы могут передаваться многоадресно из SRAM, чтобы обеспечить повторное использование данных. Активации слоев сохраняются в SRAM и готовы к использованию для следующего уровня, без дополнительных обращений к DRAM.
Структурная схема чипа RNGD и схема расположения матрицы, показывающая 8 процессорных элементов
Программный стек
В то время как более ранние версии программного стека Furiosa поддерживали только библиотеки ONNX, последняя версия поддерживает Pytorch.
«Это огромная разница с точки зрения пользовательского опыта», - отметил Пайк. «Для поддержки Pytorch наш программный стек должен быть более универсальным и принципиально более развитым».
Код Pytorch преобразуется в промежуточный формат (вычислительные блоки FP16/FP32) и преобразуется в форматы с более низкой точностью. Графы разбиваются на подграфы, которые компилируются отдельно для оптимального исполнения, а затем отображаются на аппаратном обеспечении. Для продвинутых клиентов доступны интерфейсы более низкого уровня.
«С самого начала мы понимали важность архитектурных основ и программного стека», - заявил он. «Чипы для ИИ зависят от конкретной предметной области, поэтому иногда бытует мнение, что они созданы для выполнения очень специализированных функций, поэтому, на мой взгляд, программный стек иногда недооценивался [в прошлом]. Вам необходимо тщательно продумать, как вы можете создать свой программный стек в дополнение к своему чипу».
Команда разработчиков программного обеспечения Furiosa на сегодняшний день составляет 70% от ее инженерного персонала, насчитывающего 120 человек, а остальные 30% - это специалисты по аппаратному обеспечению (компания сотрудничала с GUC в разработке однокристальной системы для чипа RNGD).
«Каждая компания стремится к совместному проектированию аппаратного и программного обеспечения, но это легче сказать, чем сделать», - добавил Пайк. «Общение между командами, занимающимися разработкой аппаратного и программного обеспечения, иногда бывает непростым, потому что у них разный опыт и взгляды, но мы действительно пытаемся создать команду, которая будет иметь единый взгляд на эти вещи».
Чип RNGD от Furiosa во время презентации в лаборатории стартапа
Следующие поколения
Заглядывая вперед, команда Furiosa планирует разработать архитектуру третьего поколения.
«В развитии моделей существует два очень важных направления», - сказал он. «Одно из них – масштабирование моделей. Сейчас люди говорят о моделях с триллионами параметров. Мы всегда серьезно задумываемся о том, как быстро мы можем увеличить производительность наших чипов. RNGD – это на порядок большее усовершенствование по сравнению с нашим чипом первого поколения, но для нашего третьего поколения нам также потребуется на порядок увеличить масштаб».
Джун Пайк предположил, что такие технологии, как микрочипы и HBM4, могли бы значительно увеличить плотность вычислений.
Что касается микроархитектуры, основатель Furiosa считает, что, хотя индустрия пришла к единому мнению относительно трансформаторов, программируемость и гибкость по-прежнему будут необходимы для адаптации к меняющимся моделям.
«Невозможно предсказать будущее, но можно создать архитектуру, достаточно гибкую, чтобы приспособиться к изменениям, хотя это значительно усложняет проектирование», - добавил он.
Чипы RNGD будут доступны в начале 2025 года.