Together AI Blog→ original

FlashAttention-4: как Together AI ускорила внимание на GPU Blackwell

FlashAttention-4 переделала ядро внимания специально под Blackwell. Ускорение дают новая tensor memory (TMEM) и режим 2-CTA MMA, которые решают узкое место — не

AI-processed from Together AI Blog; edited by Hamidun News
FlashAttention-4: как Together AI ускорила внимание на GPU Blackwell
Source: Together AI Blog. Collage: Hamidun News.

FlashAttention-4 — это переделка алгоритма внимания специально для современных GPU, где тензорные ядра растут в производительности значительно быстрее, чем память и другие ресурсы.

Почему стандартный подход больше не работает

На первый взгляд, производительность внимания (attention) контролируется скоростью двух матричных умножений: S = Q × K^T и O = P × V. Но анализ Blackwell B200 показывает неожиданное: узкое место находится не в тензорных ядрах, а в специальных функциональных блоках (SFU) для вычисления экспоненты в софтмаксе (forward pass) и в трафике shared memory (backward pass). От Hopper (H100) к Blackwell (B200) производительность BF16 тензорных ядер выросла с 1 до 2.25 петафлопс, а количество SFU и пропускная способность shared memory остались прежними. Эта асимметрия ломает стандартную оптимизацию — нельзя просто предположить, что ядра полностью определяют производительность. В действительности они мешают друг другу.

Как

Together AI решила проблему Исследовательская группа вместе с инженерами NVIDIA, Meta и Princeton предложила три ключевые идеи: Новое пайплайнирование — софтовые конвейеры, которые максимально перекрывают работу тензорных ядер, SFU и памяти без простоев. Имитация экспоненты через полиномы — вместо медленного SFU блока forward pass считает экспоненту на быстрых FMA единицах (fused multiply-add). * TMEM и 2-CTA MMA — использование новой tensor memory (256 KB per SM) плюс режим, где две thread-блокировки работают над одной матричной операцией, снижая трафик shared memory.

Возможности

Blackwell, которые это сделали Blackwell специально добавила несколько фич для таких оптимизаций: Tensor memory (TMEM) — быстрое на-чипсе хранилище (256 KB на каждый SM), проводное прямо в тензорные ядра. Промежуточные результаты могут оставаться в TMEM без похода в более медленную shared memory, что кардинально снижает задержку доступа. Асинхронные тензорные ядра 5-го поколения — каждое ядро запускается одним потоком и накапливает результаты в TMEM. Максимальный тайл для BF16 — 128×256×16 (примерно в 2 раза больше, чем у Hopper), что позволяет глубже пайплайнировать без переполнения регистров. 2-CTA MMA — новый режим, где две thread-блокировки одновременно работают над одной матричной операцией. Это сокращает нагрузку на shared memory вполовину и уменьшает количество atomic операций.

Цифры и результаты

FlashAttention-4 на Blackwell B200 с BF16 достигает 1605 TFLOPs/s (71% утилизации). Это на 1.3× быстрее, чем cuDNN 9.13, и на 2.7× быстрее, чем Triton. Для контекста: 1605 петафлопс — это почти половина от пиковой производительности Blackwell, но выжимается именно из сложного ядра внимания.

Что это значит

FlashAttention-4 показывает, как нужно работать в эпоху асимметричного масштабирования GPU — не вертеть гайки в старых алгоритмах, а переделывать их совместно с новыми возможностями железа. Результат выглядит как достижение, но это просто начало подгонки под новую реальность аппаратуры. *Meta признана экстремистской организацией и запрещена в РФ.

ZK
Hamidun News
AI news without noise. Daily editorial selection from 400+ sources. A product by Zhemal Khamidun, Head of AI at Alpina Digital.

Want to stop reading about AI and start using it?

AI News is a curated feed of AI/tech news. Hamidun Academy teaches you to use AI systematically in your work.

What do you think?
Loading comments…