Когда 12-кратное ускорение — это не маркетинг, а реальные цифры
Команда Unsloth в начале 2026 года выпустила обновление, которое заставило пересмотреть все представления о возможностях потребительского железа для обучения MoE-моделей. Речь о Triton kernels — низкоуровневых оптимизациях, которые превращают тормознутые операции PyTorch в молниеносные вычисления. Цифры звучат как шутка: ускорение в 12 раз, экономия 30% VRAM, поддержка моделей до 14B параметров на картах с 24 ГБ памяти.
Но это не шутка. Это результат двух месяцев работы над torch._grouped_mm — операцией, которая раньше была главным узким местом в MoE-архитектурах.
На 10.02.2026 Unsloth поддерживает последние версии Qwen3-MoE, DeepSeek-MoE и Mixtral 2.0 с полной совместимостью с PyTorch 2.4 и CUDA 12.4. Все оптимизации работают из коробки без ручной настройки.
Что ломали Triton kernels и почему это важно
MoE-модели (Mixture of Experts) — это архитектура, где вместо одного большого слоя используются несколько «экспертов», и для каждого токена активируется только часть из них. Звучит эффективно? На бумаге — да. На практике — кошмар для GPU.
Проблема в grouped matrix multiplication. Когда у вас 8 экспертов и каждый обрабатывает свою часть данных, PyTorch делает это последовательно: эксперт 1, ждём, эксперт 2, ждём... И так 8 раз. Каждый вызов — накладные расходы на запуск ядра, синхронизацию, передачу данных.
Unsloth переписал эту логику на Triton. Теперь все 8 экспертов обрабатываются параллельно в одном ядре. Нет 8 отдельных запусков — есть один, но в 8 раз более эффективный. Это как заменить 8 поездок в магазин за разными продуктами на одну поездку с 8 пакетами.
Цифры, которые заставят вас проверить дату
На тестах с Qwen3-MoE-A2.5 14B (последняя версия на февраль 2026) результаты такие:
| Метрика | Без Unsloth | С Triton kernels | Ускорение |
|---|---|---|---|
| Время на шаг (ms) | 420 | 35 | 12x |
| Пиковое использование VRAM | 21.3 ГБ | 14.8 ГБ | 30% экономии |
| Пропускная способность | 1.2 samples/sec | 14.7 samples/sec | 12.25x |
Самое безумное — это работает на RTX 4090. Да, на той самой карте, которая раньше с трудом тянула inference 7B моделей, теперь можно обучать 14B MoE. Если вы раньше сталкивались с проблемами оптимизации VRAM для MoE, теперь они решены на системном уровне.
Как это меняет правила игры для инференса
Оптимизации не только для обучения. Triton kernels ускоряют и инференс — в 3-4 раза для пакетной обработки. Это значит, что сервисы на основе MoE-моделей теперь могут обрабатывать в 4 раза больше запросов на том же железе.
Особенно важно для кодерных моделей вроде Qwen3-Coder-Next, где задержка критична. Раньше оптимизации llama.cpp были единственным спасением. Теперь есть альтернатива на уровне фреймворка.
Внимание: Triton kernels требуют GPU с поддержкой Tensor Cores (Volta и новее). На старых картах вроде GTX 1080 Ti ускорение будет минимальным или вообще не заработает.
Сравнение с альтернативами: почему Unsloth выигрывает
Есть другие способы ускорить MoE:
- PyTorch с torch.compile — даёт 1.5-2x ускорение, но требует тонкой настройки и не экономит память
- NVIDIA Triton Inference Server — только для инференса, сложная настройка
- Ручная оптимизация на CUDA — 5-7x ускорение, но нужны месяцы работы и экспертиза
- Специализированные фреймворки вроде cuda-nn — требуют переписывания всей модели
Unsloth выигрывает потому что:
- Работает поверх существующего кода PyTorch — не нужно переписывать модель
- Автоматически определяет MoE-слои и применяет оптимизации
- Совместим со всеми популярными библиотеками: Hugging Face Transformers, PEFT, TRL
- Поддерживает QLoRA для MoE — можно дообучать 14B модель на 16 ГБ VRAM
Кому это нужно прямо сейчас
Если вы:
- Дообучаете MoE-модели для специфичных задач (медицина, код, наука)
- Запускаете инференс-сервис на MoE и хотите снизить затраты на GPU
- Исследователь, который тестирует разные MoE-архитектуры и устал ждать по 3 дня на эксперимент
- Разрабатываете собственные MoE-модели и хотите прототипировать быстрее
- Используете Unsloth-MLX на Mac и хотите перенести модель на NVIDIA GPU без потери скорости
...то обновление Unsloth с Triton kernels сэкономит вам кучу времени, денег и нервов.
Под капотом: как работает grouped-GEMM в Triton
Техническая магия происходит в трёх местах:
1 Динамическая батчинг
Вместо фиксированных размеров батча Triton ядра анализируют распределение токенов по экспертам и группируют операции так, чтобы минимизировать простаивание Tensor Cores. Если один эксперт получает 80% токенов, а остальные семь — по 2-3%, ядро перераспределяет вычисления, чтобы загрузить все SM GPU равномерно.
2 Совместное использование памяти
Веса всех экспертов загружаются в shared memory один раз. При последовательном выполнении каждый эксперт загружал свои веса отдельно — 8 раз больше операций чтения из глобальной памяти. Теперь веса читаются один раз и используются всеми warp'ами.
3 Асинхронные копии данных
Пока один эксперт вычисляет, следующие уже загружают свои данные. В классической реализации всё синхронно: загрузили → вычислили → выгрузили → повторили. Triton делает это конвейерно, как на суперскалярных CPU.
Если вам интересны подобные низкоуровневые оптимизации, посмотрите как OLMo 3.5 Hybrid экономит память за счёт архитектурных хитростей.
Что будет дальше: прогноз на 2026 год
Unsloth с Triton kernels — это не конечная точка, а начало. Уже анонсированы:
- Поддержка sparse MoE, где эксперты активируются не для всех слоёв
- Интеграция с DroPE для эффективной работы с длинным контекстом
- Автоматическое определение оптимальных hyperparameters для MoE-обучения
- Поддержка multi-GPU обучения MoE на гетерогенных кластерах
Мой прогноз: к середине 2026 года обучение 30B MoE-моделей на потребительских GPU станет нормой. А к концу года — и 70B. Барьеры падают быстрее, чем мы успеваем к ним привыкнуть.
Если вы всё ещё думаете, что MoE — это удел облачных кластеров с тысячами H100, попробуйте Unsloth на своей RTX 4090. Результаты заставят пересмотреть все планы по аренде GPU.