Repolode
RightNow-AI

RightNow-AI/autokernel

Автономный агентный конвейер профилирует модель PyTorch и оптимизирует узкие места в GPU-ядрах на Triton или CUDA C++.

Звёзды
1,619
Форки
164
Открытые issues
16
Последний коммит
3 дня назад

Что это?

AutoKernel принимает произвольную модель PyTorch, профилирует её с помощью torch.profiler, ранжирует ядра по времени работы на GPU и извлекает самые медленные в отдельные ядра Triton или CUDA C++. Затем агент-программист поочерёдно редактирует файлы ядер, запускает фиксированный бенчмарк с пятью этапами проверки корректности и анализом roofline, а каждое изменение сохраняет или отменяет. Оркестратор применяет закон Амдала, чтобы определить, когда переходить к следующему ядру.

Проект рассчитан на GPU NVIDIA и включает стартовые ядра для matmul, softmax, layernorm, rmsnorm, flash attention, fused MLP, cross entropy, rotary embeddings и reduce. В комплект также входят самодостаточные определения моделей GPT-2, LLaMA и BERT, а ещё интеграция с бенчмарком KernelBench для итеративной оптимизации его задач. Результаты записываются в TSV-файл, а оптимизированные ядра можно экспортировать в HuggingFace Hub.

Ключевые возможности

  • 01Профилирует любую модель PyTorch, ранжирует ядра по времени работы на GPU и определяет, ограничены ли они вычислениями или пропускной способностью памяти.
  • 02Извлекает узкие места в файлы Triton или CUDA C++ с помощью флага --backend.
  • 03Запускает фиксированный бенчмарк с многоэтапной проверкой корректности перед измерением производительности.
  • 04Планирует оптимизацию ядер по предполагаемому влиянию на производительность всей модели, используя закон Амдала.
  • 05Проверяет оптимизированные ядра в полной модели и показывает общее ускорение.
  • 06Интегрируется с KernelBench и экспортирует ядра в HuggingFace Hub.

Сценарии использования

  • Ускорение инференса или обучения собственной модели PyTorch за счёт оптимизации самых медленных операций на GPU в фоновом режиме.
  • Эксперименты с автономными агентами-программистами на чётко сформулированной задаче повышения производительности GPU.
  • Сравнение ядер, сгенерированных ИИ, с эталонными реализациями PyTorch на задачах KernelBench.
  • Создание и публикация вручную оптимизированных ядер Triton или CUDA в виде пакетов для HuggingFace.

Быстрый старт

  1. 1

    Установите uv (или следуйте официальным инструкциям по установке uv из README)

  2. 2

    Клонируйте репозиторий

    git clone https://github.com/RightNow-AI/autokernel.git
  3. 3

    Установите зависимости из клонированной папки

    uv sync
  4. 4

    Один раз настройте тестовые данные и базовые показатели, затем проверьте бенчмарк

    uv run prepare.py

Что важно знать

  • Требуется GPU NVIDIA; согласно README, тестирование проводилось только на H100, A100 и RTX 4090.
  • Требуются Python 3.10 или новее и uv.
  • Для запуска агента оптимизации нужен отдельный агент для написания кода, например Claude или Codex.

В подборках

Темы

Частые вопросы

Что такое autokernel?
Автономный агентный конвейер профилирует модель PyTorch и оптимизирует узкие места в GPU-ядрах на Triton или CUDA C++. AutoKernel принимает произвольную модель PyTorch, профилирует её с помощью torch.profiler, ранжирует ядра по времени работы на GPU и извлекает самые медленные в отдельные ядра Triton или CUDA C++. Затем агент-программист поочерёдно редактирует файлы ядер, запускает фиксированный бенчмарк с пятью этапами проверки корректности и анализом roofline, а каждое изменение сохраняет или отменяет. Оркестратор применяет закон Амдала, чтобы определить, когда переходить к следующему ядру.
autokernel можно использовать бесплатно? Какая у него лицензия?
autokernel распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
autokernel всё ещё поддерживается?
Активно поддерживается. Последний коммит в autokernel — 5 нояб. 2026 г..
Для чего можно использовать autokernel?
Ускорение инференса или обучения собственной модели PyTorch за счёт оптимизации самых медленных операций на GPU в фоновом режиме. Эксперименты с автономными агентами-программистами на чётко сформулированной задаче повышения производительности GPU. Сравнение ядер, сгенерированных ИИ, с эталонными реализациями PyTorch на задачах KernelBench. Создание и публикация вручную оптимизированных ядер Triton или CUDA в виде пакетов для HuggingFace.
Как установить autokernel?
Установите uv (или следуйте официальным инструкциям по установке uv из README) Клонируйте репозиторий: git clone https://github.com/RightNow-AI/autokernel.git Установите зависимости из клонированной папки: uv sync Один раз настройте тестовые данные и базовые показатели, затем проверьте бенчмарк: uv run prepare.py
Где скачать autokernel?
Исходный код и инструкции по установке — на GitHub: https://github.com/RightNow-AI/autokernel

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Навык для Claude Code, OpenCode и Codex, который выполняет циклы «изменить — проверить — оставить или отменить» с заданной целью, вдохновлённый autoresearch Карпати.

6,8 тыс.+31 за неделю491ShellMITАктивно поддерживаетсяОбновлён 7 дней назад