Коротко
Переменная длина последовательностей обычно заставляет выбирать между простой настройкой и эффективным использованием GPU. Подход Data-Centric Parallel переносит это решение на сами данные и обещает ускорение без серьёзной переработки модели.
Переменная длина последовательностей — это не только проблема памяти. Один батч может быстро закончиться, пока другие GPU продолжают обрабатывать длинные примеры, и статическая конфигурация начинает простаивать. Data-Centric Parallel (DCP) предлагает настраивать обучение под каждый батч, а не заставлять все данные работать по одному шаблону.
Идея довольно практичная: система динамически меняет параметры выполнения в зависимости от длины последовательностей. В их числе размер параллелизма, накопление градиентов и recomputation — пересчёт промежуточных результатов вместо хранения их в памяти.
Главный интерес здесь не в ещё одном сложном distributed-фреймворке. Авторы пытаются убрать неприятный выбор между простотой и эффективностью: заявленная интеграция с моделью требует около 10 строк кода, а решение при этом само подстраивает runtime под текущие данные.
В экспериментах авторы получили ускорение до 2,88 раза на 32 GPU H200. Но это именно верхний результат, а не универсальный коэффициент: абстракт не показывает, как метод ведёт себя на других моделях, железе и распределениях длины последовательностей. Поэтому DCP выглядит скорее сильной базовой инженерной идеей, чем доказанным способом ускорить любое обучение в 2,88 раза.
Если ваши данные заметно различаются по длине, что сейчас сильнее ограничивает обучение: нехватка памяти или простои GPU из-за статической конфигурации? Источник: cs.AI updates on arXiv.org