По сообщению IBM Research, большинство инженеров, занимающихся разработкой моделей искусственного интеллекта, сегодня работают с графическими процессорами (GPU). Они пишут модели на PyTorch, запускают их и измеряют задержку и использование ресурсов. Однако то, что происходит между фреймворком и кремнием, зачастую остается скрытым. Это было управляемо, когда доминировала одна архитектура. Теперь, когда аппаратное обеспечение для ИИ разнообразилось, это стало значительно сложнее — на рынке появились GPU, TPU от Google, Wafer-Scale Engine (WSE) от Cerebras, Language Processing Unit (LPU) от Groq и ускоритель Spyre от IBM. Новая специализация на Coursera, «Архитектуры потоков данных для ИИ: от принципов к практике», предназначена для инженеров, которым необходимо работать с этим разнообразием. Курс ведет Каутар Эль Маграуи, ведущий научный сотрудник IBM Research и адъюнкт-профессор компьютерных наук в Колумбийском университете. Программа состоит из шести курсов, охватывающих модели выполнения, компиляцию, системы памяти, отладку и моделирование производительности через практические лабораторные работы. «Иногда сама модель не является сложной частью», — говорит Эль Маграуи. «Сложность заключается в понимании того, как эта модель соотносится с конкретной архитектурой и почему что-то, что работает очень хорошо на одной системе, может вести себя совершенно иначе на другой.» Специализация начинается с одной модели на PyTorch. На уровне фреймворка это один и тот же nn.Module для каждой цели. Как только компилятор сопоставляет ее с аппаратным обеспечением, выполнение выглядит совершенно иначе, и каждый стек поддерживает свой набор операторов, компоновок и преобразований графа. GPU выполняет модель как ядра через множество параллельных потоков с управляемыми аппаратурой кэшами и специализированными матричными блоками. TPU распределяет работу по системным массивам, а компилятор XLA управляет разбиением и перемещением данных. Cerebras распределяет вычисления и более 40 ГБ встроенной SRAM по всей пластине. Groq полагается на свой компилятор для планирования, когда выполняется каждая операция и когда перемещаются данные. Spyre компилирует модель в граф потоков данных, а его компилятор решает размещение и размещение временных данных, в то время как время выполнения управляет передачами и запусками. Эти детали варьируются в зависимости от поколения продукта. Выборы влияют на то, какие оптимизации имеют значение. Слияние удаляет промежуточный трафик памяти, но насколько это экономит, зависит от того, сохраняет ли компилятор уже промежуточные данные на чипе, как тензоры разбиты на блоки и добавляет ли объединенное ядро нагрузку на память. Размерность тензора, которая чисто сопоставляется с одной целью, может потребовать дополнения или перераспределения данных на другой. Специализация рассматривает выполнение потоков данных как архитектурный класс с общими принципами. Каждая концепция вводится в общих терминах, прежде чем обсуждается какая-либо конкретная система. Spyre является основным примером, поскольку команда Эль Маграуи работает с ним напрямую, но это одна из пяти систем, которые сравниваются на протяжении курса. Две реализации одной и той же операции также могут работать с очень разными скоростями по причинам, которые имеют мало общего с арифметикой. Для матричного умножения и внимания разбиение, компоновка данных, синхронизация и перемещение между встроенной и внешней памятью часто определяют достигаемую производительность. «Нет единой архитектуры, которая выигрывает в каждой строке», — говорит Эль Маграуи. «GPU придают приоритет гибкости и широкой программируемости. Другие системы жертвуют частью этой гибкости, чтобы получить эффективность, детерминизм, масштаб или более строгий контроль над выполнением.» Компилятор получает особое внимание. На специализированных ускорителях он отвечает за разбиение, слияние, планирование, размещение и управление памятью. Именно здесь достигается большая часть производительности во время активации модели. «Вы можете иметь ускоритель, который чрезвычайно эффективен для поддерживаемых операций», — говорит она, — «но затем один неподдерживаемый оператор, одна форма тензора, которая плохо сопоставляется, или одна проблема размещения памяти могут оказать значительное влияние на всю модель.» Специализация представляет собой последовательность из шести курсов. Каждый курс охватывает один уровень стека и заканчивается лабораторной работой. Вместе они поэтапно создают карту ландшафта ускорителей. Завершение всех шести курсов дает профессиональный сертификат в области проектирования производительности систем ИИ. Курс 1 — Ландшафт ускорителей: Архитектуры, специфичные для домена, управление потоками и выполнение потоков данных, иерархии памяти и модели программирования для всех пяти систем. Курс 2 — Модели выполнения потоков данных: Узлы, ребра, правила срабатывания и статическое и динамическое планирование. Блок внимания трансформера, прослеживаемый через Spyre и TPU. Курс 3 — Компиляция для потоков данных: TorchDynamo, AOTAutograd и генерация кода для бэкенда. Слияние, разбиение и планирование в XLA и компиляторе Spyre. Курс 4 — Системы памяти: Кэши, временные хранилища и дизайны только со SRAM. Как каждая иерархия памяти изменяет управление кэшами KV для вывода LLM. Курс 5 — Отладка в стеке потоков данных: Восьмиуровневая таксономия ошибок, включая ошибки захвата графа и блокировки планирования, таймауты DMA и числовые проблемы. Курс 6 — Моделирование производительности и оптимизация: Анализ Roofline, адаптированный для памяти с управлением программным обеспечением, с планированием, измеряемым как третья узкая точка наряду с вычислениями и памятью. На ускорителе потоков данных неправильный результат или замедление часто проявляются далеко от своей причины. NaN на выходе модели может возникать из-за разложения оператора, прохода слияния, несовпадения компоновки тензора или ошибки DMA. Курс 5 организует эти ошибки в восьмиуровневую таксономию, от ошибок захвата графа на фронтенде до конфликтов планирования, блокировок, таймаутов DMA и числовых проблем на бэкенде. Для проверки правильности студенты уменьшают ошибку до небольшого воспроизводителя, сравнивают выходы каждого уровня с ссылкой на CPU или GPU и находят первую точку, где результаты расходятся. Для производительности Курс 6 ограничивает измеряемую область, отделяет время ядра от времени передачи, сравнивает результат с идеалом компилятора и атрибутирует остаток к байтам, перемещенным на каждом уровне памяти. Каждая операция затем отображается на диаграмме Roofline. В одном из ошибок, сообщенных в проекте с открытым исходным кодом torch-spyre, клонирование тензора fp16 из 65 элементов вернуло неправильное последнее значение. Журнал передачи был правильным, но скомпилированная копия покрыла только первые 64 элемента, а сравнение выходов каждого уровня с эталоном обнаружило ошибку на этом этапе. Каждый курс завершается основной лабораторной работой, которая выполняется на Google Colab с использованием стандартного PyTorch. Каждая лабораторная работа также имеет необязательную практическую часть Spyre, которая выполняется на оборудовании Spyre. Лаборатории разрабатываются Рашедом Бхатти, доктором философии, старшим техническим сотрудником IBM Research и преподавателем лабораторий для специализации. Каждая лаборатория занимает от 90 минут до двух часов, и студенты пишут и запускают свой собственный код. В первой лаборатории они создают тестовый стенд с нуля с использованием torch.utils.benchmark и объясняют разрыв производительности между CPU и GPU с точки зрения параллелизма SIMT и пропускной способности HBM. Позже лаборатории прослеживают блок трансформера с помощью torch.fx, сравнивают жадный режим с torch.compile, читают временную шкалу памяти профайлера PyTorch во время вывода LLM, диагностируют три запланированных ошибки и строят диаграмму Roofline для нагрузки LLM. Для основных лабораторий не требуются никаких проприетарных инструментов. В необязательной практической части Spyre, называемой «Глубокое погружение в потоки данных», студенты из партнерских программ выполняют те же лаборатории на оборудовании Spyre. Там они работают непосредственно с концепциями потоков данных из каждого курса: они читают граф потоков данных, который производит компилятор Spyre, и каталогизируют слияния и ребра перемещения данных, следят за тем, как тензоры разбиваются на блоки и размещаются в временной памяти, измеряют трафик между HBM и временными хранилищами с помощью аппаратных счетчиков и строят диаграмму Roofline на основе этих счетчиков для иерархии памяти с управлением программным обеспечением. Глубокое погружение не требуется для завершения специализации или получения сертификата. Специализация предназначена для учащихся среднего и продвинутого уровня, включая аспирантов в области компьютерных наук или электротехники, инженеров компиляторов, архитекторов аппаратного обеспечения и практиков машинного обучения, которые оптимизируют рабочие нагрузки на различных аппаратных платформах. Участники должны быть уверены в своих знаниях промежуточного уровня Python и C/C++, знакомы с архитектурами CNN и трансформеров, а также иметь базовые знания компьютерной архитектуры. Учащиеся, завершившие программу, получают профессиональный сертификат в области проектирования производительности систем ИИ. «К концу курса, когда вы увидите новый ускоритель ИИ, я хочу, чтобы вы знали, какие вопросы задавать о нем», — говорит Эль Маграуи. «Какова модель выполнения? Где находится память? Кто планирует операции? Что контролирует компилятор?» Специализация открыта для регистрации на Coursera. Материал подготовлен нейросетью на основе оригинальной публикации. ИИ может ошибаться в деталях (цифры, имена, даты, цитаты) — для важной информации сверяйтесь с первоисточником.
From the original source:
SMNTCN (Semanticon) — глобальные новости ИИ
Read full article at SMNTCN (Semanticon) — глобальные новости ИИTitle in RussianIBM Research запускает специализацию по архитектуре ИИ на ускорителях
IBM Research запускает новую специализацию по архитектуре ИИ на ускорителях.
AI Summary & Key Takeaways
- IBM Research запускает новую специализацию по архитектуре ИИ на ускорителях.
IBM Research запускает специализацию по архитектуре ИИ на ускорителях
Related stories
Every fourth skill for AI agents turned out to be unsafe - NVIDIA introduced a tool to check them.
Every fourth skill for AI agents turned out to be unsafe - NVIDIA introduced a tool to check them. NVIDIA has released a free SkillSpector scanner that analyzes skills that enhance the capabilities of AI agents. Such skills allow neural networks...
AI delivers ‘zero financial payoff’ to most companies, Apollo economist says
"Despite massive investments and widespread hype around artificial intelligence, the technology has delivered zero financial payoff to corporate America outside of tech."
Nvidia open-sources Flora to make robot video labeling 125x cheaper than GPT-6 Astra
Nvidia's new data engine Flora labels one hour of robot video for 72 cents instead of $88 with GPT-6 Astra, while scoring slightly higher on quality. The open system, built on three fine-tuned Qwen3.5 models, catches errors in robot actions far more reliably than any competitor…
What the US Movement Against Data Centers Can Learn From Abroad
Paris Marx, author of Hyperscale, has been tracking global data center development for years. The US has a lot to learn from what’s happened everywhere from Ireland to New Zealand.

