PyTorch представил усовершенствованные методы Activation Checkpointing (AC), цель которых - снижение потребления памяти при обучении.
Традиционный подход в
eager mode
сохраняет промежуточные активации для обратного прохода, что зачастую приводит к значительному расходу ресурсов. AC позволяет не сохранять эти тензоры, а вычислять их заново при необходимости, тем самым жертвуя вычислительным временем ради экономии памяти.Новая техника – Selective Activation Checkpoint (SAC). В отличие от обычного AC, который затрагивает всю выбранную область, SAC дает гранулярный контроль над тем, какие операции следует пересчитывать, а какие – сохранять. Это достигается за счет использования
policy_fn
, определяющей, нужно ли сохранять результаты конкретной операции. SAC будет полезен для избегания перевычисления ресурсоемких операций, например, матричных умножений.Для
torch.compile
стала доступна Memory Budget API. Эта функция автоматически применяет SAC с оптимальной политикой, исходя из заданного пользователем бюджета памяти (от 0 до 1). Бюджет 0 соответствует обычному AC, а 1 – поведению torch.compile
по умолчанию. @ai_machinelearning_big_data
#AI #ML #Pytorch
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥37👍22❤9
Machinelearning
🌟Начался новый сезон PROD – первой в России олимпиады по промышленной разработке для школьников. О начале второго сезона олимпиады объявил Т-Банк совместно с Центральным университетом и факультетом компьютерных наук НИУ ВШЭ. В рамках PROD школьники смогут…
🌟В Москве завершилась уникальная международная олимпиада по промышленной разработке PROD от Центрального университета, Т-Банка и НИУ ВШЭ
Участниками PROD стали более 4 000 школьников со всего мира, в том числе из Великобритании, Германии и Китая. Это единственная в мире олимпиада такого масштаба, где задания —- это реальные задачи бизнеса по автоматизации процессов и разработке приложений, которые помогают компаниям повышать эффективность и сокращать затраты.
В финале 235 школьников соревновались в разработке полноценных ИТ-продуктов таких, как платформа для проведения соревнований по анализу данных, сервис для обмена книгами, а также проект по созданию программ лояльности для партнеров Т-Банка.
Победителями стали 17 школьников из России и Беларуси. Они получили грант в размере 100% на обучение в Центральном университет, скидку до 90% на совместный бакалавриат Факультета компьютерных наук НИУ ВШЭ и Центрального университета и возможность пройти упрощенный отбор на стажировку в Т-Банк.
🟡Страница проекта
@ai_machinelearning_big_data
#AI #ML #Pytorch
Участниками PROD стали более 4 000 школьников со всего мира, в том числе из Великобритании, Германии и Китая. Это единственная в мире олимпиада такого масштаба, где задания —- это реальные задачи бизнеса по автоматизации процессов и разработке приложений, которые помогают компаниям повышать эффективность и сокращать затраты.
В финале 235 школьников соревновались в разработке полноценных ИТ-продуктов таких, как платформа для проведения соревнований по анализу данных, сервис для обмена книгами, а также проект по созданию программ лояльности для партнеров Т-Банка.
Победителями стали 17 школьников из России и Беларуси. Они получили грант в размере 100% на обучение в Центральном университет, скидку до 90% на совместный бакалавриат Факультета компьютерных наук НИУ ВШЭ и Центрального университета и возможность пройти упрощенный отбор на стажировку в Т-Банк.
🟡Страница проекта
@ai_machinelearning_big_data
#AI #ML #Pytorch
👍48🤣34❤12🗿4🥰2😁2👌1
PyTorch представил MetaShuffling — решение для ускорения вывода в Llama 4 MoE, которое решает проблемы динамизма и разреженности моделей, связанных с маршрутизацией токенов. Вместо традиционных методов
padding
или slicing
, MetaShuffling использует переупорядочивание токенов по экспертам, избавляясь от ненужных операций и синхронизации между CPU и GPU. Это снижает использование памяти и устраняет задержки, связанные с обработкой «пустышек» или множественными запусками ядер.В основе решения - идея группировки токенов, назначенных одному эксперту, в непрерывные блоки. Такой подход позволяет использовать dense tensors вместо разреженных структур, сохраняя статичные формы данных.
Благодаря этому MetaShuffling совместим с механизмами графов (
CUDAGraph
, torch.compile
), которые ускоряют исполнение, избегая повторных синхронизаций. Решение особенно эффективно для Llama 4, где каждый MoE-слой активирует лишь часть экспертов, что на практике создает динамические нагрузки.GroupedGEMM
, написанный на Triton, обрабатывает несколько матриц в одном вызове, используя статические и динамические разбиения размеров, позволяя пропускать неактивных экспертов и «лишние» токены без дополнительных затрат.IndexShuffling
, в свою очередь, выполняет сортировку токенов и подсчет их количества на каждом эксперте за один проход, что по тестам оказалось в 5–13 раз быстрее, чем стандартные реализации PyTorch.Результаты экспериментов на H100 80GB выглядят многообещающими.
Prefill Llama 4 Maverick с FP8 GroupedGEMM достигает 1,197 TFlops при 286 мкс, что близко к теоретическому пределу GPU.
В задачах декодирования метрики также демонстрируют высокую эффективность: 44,88 TFlops за 59 мкс. Даже при малом количестве токенов (128) MetaShuffling показывает 80% использования пропускной способности памяти.
Для multi-host сценариев MetaShuffling предлагает гибкость между «динамическими» и «статичными» формами данных. В режиме
eager
(без графов) используется минимальное заполнение без синхронизации CPU-GPU.В
graph mode
— статичные формы с минимальным паддингом, что сокращает сетевой трафик и память. Также реализована дедупликация коммуникаций, которая распределяет нагрузку между узлами, снижая задержки в распределенных вычислениях.MetaShuffling поддерживает интеграцию с FBGEMM Generative AI Kernel Library, позволяя применять оптимизации для vLLM и SGLang.
@ai_machinelearning_big_data
#AI #ML #MetaShuffling #Pytorch
Please open Telegram to view this post
VIEW IN TELEGRAM
❤46👍33🥰10🤔5🕊2🔥1