Sakana AI и NVIDIA представили TwELL - формат данных и набор CUDA-ядер под неструктурированную разреженность в LLM.
На H100 это даёт до 30% к инференсу, до 24% к скорости обучения и более чем 24% снижения пикового VRAM при трейне.
Работа заявлена на ICML 2026.
В FFN-блоках современных LLM для каждого токена реально работает малая доля скрытых активаций - остальное болтается около нуля и впустую тратит вычисления.
Если поверх ReLU добавить вспомогательный L1-лосс на скрытые активации прямо во время обучения, долю нулей можно загнать выше 95% без видимой просадки на downstream-задачах.
Проблема в том, что, что тензорные ядра H100 заточены под плотные матричные умножения и тайлинг. Если скормить им обычный ELLPACK, то теоретическая экономия убивается накладными расходами: построчная упаковка не ложится на тайловую структуру, появляются синхронизации между CTA и лишний трафик в HBM.
🟡Вот тут и решает TwELL
Колонки активаций гейта бьются на горизонтальные тайлы. Внутри каждого тайла лежат только ненулевые значения и их индексы в локальном ELL-формате.
Размер тайла подобран так, чтобы каждая CTA паковала свой кусок прямо в разделяемой памяти без синхронизаций между блоками и без лишних обращений к глобальной памяти.
Дальше - 2 разных ядра:
🟢Инференс
Up- и down-проекции выполняются в одном ядре. Плотная матрица скрытых активаций вообще не материализуется: ядро пробегается по упакованным нулям, подтягивает только нужные строки Wu и Wd и считает скалярное произведение.
🟠Обучение
Гибридное представление: каждая строка либо ужимается в один глобально выровненный разреженный блок, либо в редких случаях переполнения падает в плотный резерв. Результат - обратный проход без единого умножения двух плотных матриц.
Интересный момент: даже без учёта разреженности кастомные TwELL-ядра вышли чуть быстрее плотных матмулов из PyTorch и CuDNN, в основном за счёт переиспользования ядер, совмещения загрузки данных с вычислениями и оптимизированных шаблонов доступа к памяти.
🟡Цифры на H100 (замер по модели 1.5B)
🟢до 30% ускорения на пакетном инференсе;
🟢до 24% ускорения на обучении;
🟢пиковый VRAM при обучении падает более чем на 24%;
🟢энергопотребление GPU - примерно на 3% ниже.
🟡Скейлинг
Считали на моделях 0.5B–2B. При фиксированном L1 у 2B доля ненулевых активаций на 38% меньше, чем у 0.5B (крупнее модель, охотнее уходит в разреженность).
На 2B инференс быстрее на 20.5%, обучение - на 21.9%, и в память влезает вдвое больший микробатч.
🟡Очевидные минусы
Кастомные CUDA-ядра привязаны к NVIDIA: альтернативное железо и PyTorch - мимо.
Эксперименты упираются в 2B, как поведёт себя более крупная модель, никто не проверял.
📌Лицензирование: MIT License
🟡Блогпост
🟡Arxiv
🖥Github
@ai_machinelearning_big_data
#AI #ML #LLM #TwELL #SakanaAI #NVIDIA


