30 lines
5.1 KiB
Markdown
30 lines
5.1 KiB
Markdown
# P30. Pollux: совместная адаптация обучения и кластерного планировщика
|
|
|
|
- **Версия и дата проверки:** 1.0, 05.09.2026.
|
|
- **Статус:** готово к назначению.
|
|
|
|
## Статья и исходные материалы
|
|
|
|
- **Основная статья:** Aurick Qiao и соавт. — [Pollux: Co-adaptive Cluster Scheduling for Goodput-Optimized Deep Learning](https://www.usenix.org/conference/osdi21/presentation/qiao). OSDI 2021, Best Paper.
|
|
- **Кратко о статье:** Скорость обучения зависит от числа выделенных ускорителей и размера пакета. Размер пакета меняет системную производительность и статистическую эффективность оптимизации. Pollux объединяет эти факторы в метрике goodput и совместно адаптирует конфигурацию задания и распределение ресурсов кластера. В проекте такая политика сравнивается с планированием только по throughput на симуляции CPU.
|
|
- **Почему результат актуален:** ветка AdaptDL в основном сохранилась как снимок статьи, но совместная оптимизация размещения и goodput получила прямое развитие в [Sia](https://shouxulin.github.io/pubs/sia.pdf), учитывающей неоднородные кластеры. Базовый проект использует Pollux как понятный исходный механизм и сравнивает его с современным продолжением постановки.
|
|
- **Артефакты и данные:** ветка [petuum/adaptdl для OSDI 2021](https://github.com/petuum/adaptdl/tree/osdi21-artifact) под Apache-2.0 содержит реализацию и дискретный симулятор кластера. Зафиксированные ревизии: `petuum/adaptdl@542e123e50e9` (Apache-2.0).
|
|
|
|
## Обязательный результат
|
|
|
|
- **Проверяемый вопрос или утверждение:** совместный учёт системной скорости и статистической эффективности обучения позволяет перераспределять ресурсы с меньшим средним временем завершения, сохраняя справедливость между задачами.
|
|
- **Технический результат:** Создать исполнитель нескольких малых CPU-задач обучения как реальных процессов и три планировщика: фиксированный, простой динамический и упрощённый Pollux с изменением параллелизма и размера пакета. Добавить единый журнал событий, проверку завершения задач и расчёт goodput, JCT и справедливости.
|
|
- **Эксперимент:** на нескольких наборах одновременно выполняющихся задач сравнить фиксированное распределение, простую динамическую политику и упрощённый Pollux, измеряя goodput, JCT и справедливость.
|
|
- **Границы выводов:** сравнение относится к малым CPU-задачам, упрощённой модели goodput и выбранным политикам; оно не подтверждает статистическую эффективность и время завершения много-GPU-обучения в производственном кластере.
|
|
- **Ресурсный профиль:** локально, CPU, 8–16 ГБ памяти; достаточно малых моделей и наборов данных, поэтому несколько реальных задач входят в обязательную часть. Синтетические профили используются для калибровки и расширения масштаба; при несовместимости артефакта планировщик реализуется независимо.
|
|
|
|
## Содержательные направления
|
|
|
|
- профили и модель прогресса.
|
|
- планировщики и симулятор.
|
|
- справедливость, чувствительность и новая целевая функция.
|
|
|
|
## Возможное продолжение
|
|
|
|
Добавить неоднородные ускорители, ошибку профиля, стоимость перераспределения, приоритеты либо новую цель, объединяющую JCT и справедливость.
|