Инференс и оптимизация 62 просмотра

Prefill и Decode

Prefill and Decode Phases

Prefill и Decode — две фазы авторегрессивного инференса LLM. Prefill обрабатывает весь входной промпт параллельно, Decode генерирует токены по одному. У каждой фазы свой bottleneck.

Две фазы инференса LLM

Prefill: модель обрабатывает весь входной промпт за один проход, создавая KV-Cache.

Decode: модель генерирует выходные токены по одному, используя KV-Cache.

Промпт: "Какой GPU лучше для обучения LLM?"

[Prefill]   8 токенов параллельно  KV-Cache
  Время: 100 мс  (compute-bound)

[Decode]    генерация по 1 токену
  Токен 1: "Для"  15 мс
  Токен 2: "обучения"  15 мс
  ...
  (memory-bandwidth-bound)

Bottleneck каждой фазы

Характеристика Prefill Decode
Bottleneck Compute (TFLOPS) Memory bandwidth
Утилизация GPU 60-80% 5-15%
Метрика TTFT TPOT / ITL

Оптимизации

Для Prefill: Flash Attention, Tensor Parallelism, Chunked Prefill.

Для Decode: KV-Cache, Speculative Decoding, Continuous Batching, PagedAttention.

Disaggregated Inference

Продвинутый подход: Prefill и Decode на разных GPU — Prefill нужны TFLOPS (H100), Decode нужен bandwidth (H200 141GB HBM3e).

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

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

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

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

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