Оптимизировать параллельный запуск ASR и диаризации после стабилизации пайплайна #22

Open
opened 2026-08-14 15:16:23 +03:00 by ddmitry · 0 comments
Owner

Follow-up к решению #21. Не входит в первую реализацию диаризации и не блокирует карту #8.

Предпосылка

Основной последовательный пайплайн ASR → диаризация → сведение → Markdown реализован и стабилизирован. До этого условия к задаче не приступать.

Цель

Измерить, оправдывает ли параллельный запуск дополнительную сложность, и включать его только для тех фактических классов устройств, где выигрыш доказан.

Порядок кандидатов

  1. CUDA + CPU-диаризация.
  2. OpenVINO GPU + CPU-диаризация — отдельно от CUDA, поскольку iGPU делит системную память и пропускную способность с CPU.
  3. ONNX/FasterWhisper/OpenVINO CPU + CPU-диаризация — только по отдельному замеру.

Политику выбирать по фактическому устройству после инициализации/fallback, а не только по запрошенному --device.

Минимальный benchmark

  • те же три записи, использованные в замерах диаризации;
  • три прогретых повтора длинной записи и подтверждающие прогоны двух остальных;
  • sequential baseline против parallel для каждого класса;
  • wall time end-to-end, peak RSS, загрузка CPU, фактическое устройство и fallback;
  • сравнение ASR-результата и разметки говорящих.

Критерий включения

Параллельность допускается отдельно для класса устройств, только если:

  • end-to-end время улучшается не менее чем на 20%;
  • результат идентичен последовательному baseline;
  • нет OOM, крашей и новых fallback;
  • peak RSS измерен и приемлем для целевой машины.

Не прошедший критерий класс остаётся последовательным.

Follow-up к решению #21. Не входит в первую реализацию диаризации и не блокирует карту #8. ## Предпосылка Основной последовательный пайплайн ASR → диаризация → сведение → Markdown реализован и стабилизирован. До этого условия к задаче не приступать. ## Цель Измерить, оправдывает ли параллельный запуск дополнительную сложность, и включать его только для тех фактических классов устройств, где выигрыш доказан. ## Порядок кандидатов 1. CUDA + CPU-диаризация. 2. OpenVINO GPU + CPU-диаризация — отдельно от CUDA, поскольку iGPU делит системную память и пропускную способность с CPU. 3. ONNX/FasterWhisper/OpenVINO CPU + CPU-диаризация — только по отдельному замеру. Политику выбирать по фактическому устройству после инициализации/fallback, а не только по запрошенному `--device`. ## Минимальный benchmark - те же три записи, использованные в замерах диаризации; - три прогретых повтора длинной записи и подтверждающие прогоны двух остальных; - sequential baseline против parallel для каждого класса; - wall time end-to-end, peak RSS, загрузка CPU, фактическое устройство и fallback; - сравнение ASR-результата и разметки говорящих. ## Критерий включения Параллельность допускается отдельно для класса устройств, только если: - end-to-end время улучшается не менее чем на 20%; - результат идентичен последовательному baseline; - нет OOM, крашей и новых fallback; - peak RSS измерен и приемлем для целевой машины. Не прошедший критерий класс остаётся последовательным.
ddmitry added the needs-triage label 2026-08-14 15:16:23 +03:00
Sign in to join this conversation.