- Дата публикации
NVFP4: новый 4-битный формат чисел для ускорения ИИ на GPU NVIDIA Blackwell
Что появилось / что изменилось
NVIDIA добавила в архитектуру GPU Blackwell новый формат чисел для инференса ИИ — NVFP4. Это 4-битный плавающий формат, рассчитанный на работу в тензорных ядрах пятого поколения.
Ключевые факты:
- NVFP4 — это формат E2M1: 1 бит знака, 2 бита порядка, 1 бит мантиссы.
- Диапазон значений около от −6 до 6. Примеры возможных значений: 0.0, 0.5, 1.0, 1.5, 2, 3, 4, 6 и такие же по модулю отрицательные.
- Blackwell поддерживает целую линейку форматов: FP64, FP32/TF32, FP16/BF16, INT8/FP8, FP6 и FP4.
- В рамках 4-битных форматов у Blackwell теперь есть FP4, MXFP4 и NVFP4.
- Все 4-битные форматы дают до 4 раз меньше памяти, чем FP16.
- NVFP4 спроектирован так, чтобы снизить риск просадки точности по сравнению с другими 4-битными вариантами, особенно на больших моделях.
Главное отличие NVFP4 — более аккуратная работа с масштабированием тензоров: он использует два уровня скейлинга и более точный формат для масштаба.
Как это работает
Классическая проблема 4-битной квантизации — потеря точности и «интеллекта» модели при переходе, например, с FP32 к FP4. NVFP4 пытается минимизировать эти потери за счёт продуманной схемы масштабирования.
Под капотом NVFP4 работает так:
-
Структура числа 4 бита (E2M1):
- 1 бит — знак,
- 2 бита — порядок,
- 1 бит — мантисса.
-
Микроблоки по 16 значений:
- Все числа в блоке разделяют один общий масштаб.
- Этот масштаб кодируется в формате FP8 E4M3, а не в упрощённом FP8 E8M0.
- E4M3 даёт дробные масштабы, а не только степени двойки.
-
Двухуровневый скейлинг:
- Первый уровень: FP8 E4M3 на каждый блок из 16 значений.
- Второй уровень: FP32-масштаб на весь тензор.
Такое сочетание даёт две вещи:
- Микроблоки получают масштаб, который лучше подгоняется под реальное распределение значений.
- FP32 на уровне тензора подстраивает общий диапазон так, чтобы микроблоки укладывались в область, удобную для E4M3.
NVIDIA сравнивает варианты масштабирования: простое E8M0 с шагами по степеням двойки и более тонкое E4M3. На примере матрицы видно, что при E4M3 квантизационная ошибка заметно ниже: числа после округления ближе к исходным.
Другие 4-битные форматы Blackwell устроены проще:
- FP4 (E2M1) — базовый 4-битный формат с масштабом на стороне софта, без аппаратного ускорения.
- MXFP4 — масштаб на блок из 32 значений в виде степени двойки, с ускорением в железе.
- NVFP4 — масштаб FP8 E4M3 на блок из 16 значений плюс FP32 на тензор, тоже с аппаратным ускорением.
Что это значит для вас
Если вы делаете инференс больших нейросетей на GPU NVIDIA Blackwell, NVFP4 интересен с нескольких сторон.
Когда стоит использовать NVFP4:
- Когда важна минимальная память на параметры. 4 бита дают до четырёхкратной экономии относительно FP16.
- Для больших языковых моделей и других тяжёлых сетей, которые плохо переносят простую 4-битную квантизацию.
- В сценариях с строгими ограничениями по пропускной способности памяти: сжатые веса проще прокачивать через память и шину.
Благодаря двухуровневому скейлингу и E4M3 масштабам NVFP4 снижает риск сильной деградации качества по сравнению с более грубыми 4-битными форматами. Особенно это критично там, где диапазон значений в тензорах широкий и неравномерный.
Когда лучше подумать дважды:
- Если у вас чувствительная к ошибкам область — например, медицинские вычисления — может понадобиться остаться на FP16/BF16 или FP32.
- Для небольших моделей, которые и так легко помещаются в память, выигрыш от 4-битного сжатия может не перекрыть риски по точности.
- Если ваш стек ещё не адаптирован под Blackwell и NVFP4, придётся ждать обновлений фреймворков и библиотек.
NVFP4 — это не «магический» формат, который убирает всю ошибку. Это способ сильнее сжать модели, чем с FP8 или FP16, с меньшей потерей качества, чем у простых FP4.
Место на рынке
Внутри линейки NVIDIA NVFP4 живёт рядом с другими низкобитовыми форматами — INT8, FP8, FP6, FP4 и MXFP4. Логика такая:
- FP32/BF16/FP16 — когда важна максимальная точность.
- FP8 и INT8 — компромисс между точностью и скоростью.
- FP6 и 4-битные форматы — когда приоритет у плотности параметров и пропускной способности.
Blackwell Tensor Cores пятого поколения умеют работать со всеми этими форматами и рассчитаны на пиковую производительность в низкой разрядности, включая FP4. В сравнении с Ampere и Hopper архитектура Blackwell даёт более высокую пиковую производительность именно на младших форматах и поддерживает больше вариантов низкобитной арифметики.
Прямых численных сравнений NVFP4 против FP8, INT8 или конкретных моделей вроде GPT-4o в материалах NVIDIA нет. Но по дизайну NVFP4 заметно агрессивнее сжимает модель, чем FP8, при этом старается удержать точность за счёт сложной схемы масштабов.
Если вы планируете мигрировать большие модели на Blackwell и хотите выжать максимум из памяти и пропускной способности, NVFP4 становится одним из ключевых форматов, который имеет смысл протестировать первым среди 4-битных вариантов.