Обучение моделей 20 просмотров

MFU

Model FLOPs Utilization

MFU (Model FLOPs Utilization) — метрика эффективности использования GPU при обучении, показывающая отношение теоретических FLOPS модели к пиковым FLOPS ускорителя. MFU 50%+ считается хорошим результатом.

Что такое MFU

MFU (Model FLOPs Utilization) — ключевая метрика производительности при обучении LLM. Показывает, какую долю от теоретической пиковой производительности GPU вы реально используете.

MFU = Model_FLOPS / Theoretical_Peak_FLOPS

MFU vs HFU

Метрика Что считает Точность
MFU Только теоретические FLOPS модели (forward + backward) Приблизительная
HFU Реальные FLOPS (включая activation recomputation) Точная

Если вы используете gradient checkpointing (пересчёт активаций), HFU > MFU, потому что фактически FLOPS больше.

Пример расчёта

# H100 BF16 peak: 989 TFLOPS
# Измеренная скорость обучения: 450 TFLOPS

MFU = 450 / 989 = 0.455  # 45.5%

# Автоматический подсчёт FLOPS (PyTorch)
from torch.utils.flop_counter import FlopCounterMode

flop_counter = FlopCounterMode(mods=model, display=False)
with flop_counter:
    model(**input).sum().backward()
total_flops = flop_counter.get_total_flops()

# TFLOPS = total_flops / time_seconds / 1e12

Ориентиры

MFU Оценка Типичная ситуация
> 55% Отличный Хорошо оптимизированный кластер
40-55% Хороший Большинство production-обучений
25-40% Средний Есть узкие места
< 25% Плохой Проблемы с сетью, IO или конфигурацией

Что снижает MFU

  1. Сеть — медленный All-Reduce (InfiniBand < NDR, плохие кабели)
  2. Pipeline bubble — простой GPU при Pipeline Parallelism
  3. DataLoader — GPU ждёт данных от CPU/диска
  4. Gradient checkpointing — пересчёт активаций (но экономит VRAM)
  5. Чекпоинты — синхронное сохранение на медленное хранилище
  6. Communication overhead — TP требует All-Reduce на каждом слое

Как измерить

Большинство фреймворков логируют TFLOPS:
- Megatron-LM: throughput_per_gpu_tflops в логах
- DeepSpeed: FLOPS_per_gpu в логах
- Ручной замер: FLOPS / iteration_time / 1e12

Связанные термины

Измеряется
Улучшает
Измеряет

Попробуйте на практике

Арендуйте GPU и запустите ML-модели в Intelion Cloud

Начать работу