Д
Давай деплой ML!
@deploy_ml528 подп.
715просмотров
3 августа 2025 г.
question📷 ФотоScore: 787
Как понять, что «тормозит» DataLoader? Недавно был задан классный вопрос: "Может ли малая утилизация CPU означать проблемы с DataLoader?" Утверждать нельзя, потому что в DataLoader: 1. Утилизируют CPU только аугментации и декодинг файла. Это, пожалуй, единственная вычислительная нагрузка в нем, и ее может не хватать для создания существенной утилизации. Декодинг файла - актуально для медиа-данных, хранящихся в сжатом виде. 2. Загрузка файлов - I/O-bound, т.к. представляет из себя ожидание получения очередного блока с сети/диска. Поэтому и около нулевая утилизация CPU. Смотреть надо на метрики диска (если чтение локально) или сети (если чтение с общего хранилища). А для того, чтобы проверить, тормозит ли DataLoader, cравните скорость обучения в трёх вариантах: 1. Бейзлайн: ваш исходный код. 2. Минус аугментации: отключите/упростите тяжёлые трансформации. 3. Синтетика чтения: как в п.2, но данные не читаются с диска/сети — генерируйте случайные тензоры той же формы 4. Синтетика декодирования для image/video/voice: как в п.3, только генерируйте содержимое файла до декодирования. Интерпретация: 1. Ускорение 1→2 — «тяжёлые» аугментации, оптимизируем их. 2. Ускорение 2→3 — бутылочное горлышко в доступе к данным. 3. Ускорение 4→3 — тормозит декодирование файлов. 4. Ускорения нигде нет — DataLoader вас не тормозит; ищите проблемы в самом тренировочном цикле. Накидайте реакций/конфигов и сделаю замеры по разным сетапам даталоадеров. @deploy_ml
715
просмотров
1471
символов
Нет
эмодзи
Да
медиа

Другие посты @deploy_ml

Все посты канала →
Как понять, что «тормозит» DataLoader? Недавно был задан кла — @deploy_ml | PostSniper