FLOPS / TFLOPS
Floating Point Operations Per Second — мера вычислительной производительности GPU.
Что такое FLOPS
FLOPS (Floating Point Operations Per Second) — стандартная единица измерения вычислительной производительности. Для ML используются более крупные единицы:
- TFLOPS (TeraFLOPS) = 10¹² операций/с
- PFLOPS (PetaFLOPS) = 10¹⁵ операций/с
Производительность GPU зависит от формата данных: FP32 < TF32 < BF16/FP16 < FP8 по числу TFLOPS. Это связано с шириной Tensor Cores и числом операций за такт.
TFLOPS основных GPU
| GPU | FP32 | BF16/FP16 | FP8 |
|---|---|---|---|
| RTX 4090 | ~83 | ~330 | ~660 |
| A100 80GB | 19.5 | 624 | — |
| H100 SXM | 60 | 1979 | 3958 |
| H200 SXM | 60 | 1979 | 3958 |
| AMD MI300X | 163 | 1307 | 2614 |
Для трансформеров и LLM стандартный рабочий формат — BF16, поэтому релевантная цифра — BF16 TFLOPS.
FLOPS vs реальная производительность
Пиковые TFLOPS — теоретический максимум, достижимый только на специфических нагрузках с идеальной эффективностью. Реальная эффективность (FLOPS utilization, MFU) обычно составляет:
- 30–50% для обучения трансформеров
- 10–30% для инференса (из-за memory-bound decode)
Поэтому нельзя прямо сравнивать два GPU только по TFLOPS — важна также пропускная способность памяти.
Формула оценки производительности обучения
Tokens per second ≈ (GPU TFLOPS × MFU) / (6 × model_params)
# Где 6 — приближение для количества FLOP на токен при forward+backward
# MFU — Model FLOPS Utilization (доля от пикового TFLOPS)
Связанные термины
- Tensor Core — аппаратные блоки, обеспечивающие TFLOPS
- BF16 — формат, дающий максимальный TFLOPS при приемлемой точности
- FP8 — новый формат для максимального TFLOPS на H100
- NVIDIA H100 — GPU с наивысшим BF16 TFLOPS
Готовы запустить GPU-задачу?
Запустить GPU-сервер