Оптимизация CUDA-ядер через свой агент на LangGraph с бенчмарками и профилированием
Автор репозитория agentic-cuda-optimizer собрал свой агент на LangGraph, который предлагает изменения CUDA-ядер, сам их компилирует, проверяет и замеряет. В README есть запуски на ноутбучной RTX 3060, но цифр ускорения нет.
Сделано со своим агентом
Что сделали
Пользователь описывает задачу или сам даёт сигнатуру, эталонную реализацию, ядро и входные данные. Агент на LangGraph предлагает изменения ядра и параметров запуска. Обвязка на C++ компилирует их через NVRTC и запускает через CUDA Driver API. Python сверяет результат с NumPy и замеряет время каждого варианта. Если вариант падает, агент чинит его, пока не кончится бюджет итераций. По флагам можно включить профилирование в Nsight Compute и поиск по документации NVIDIA.
Что получилось
В README показаны запуски умножения матриц GEMM во float32 на RTX 3060 Laptop GPU. Второй запуск продолжает с лучшего ядра первого. Цифр ускорения нет, сравнения с cuBLAS тоже.
На что обратить внимание
Сгенерированные скрипты входных данных запускаются на вашей машине без песочницы, а запросы к API (по умолчанию gpt-5-mini) оплачиваете вы. Если эталон тоже сгенерирован, он не служит независимой проверкой правильности.
Пояснение
CUDA-ядро это функция, которая выполняется на видеокарте NVIDIA параллельно в тысячах потоков. cuBLAS это библиотека NVIDIA с уже оптимизированными операциями над матрицами, с ней обычно сравнивают скорость. LangGraph это фреймворк для сборки агентов в виде графа шагов.
Кому пригодится
Разработчикам, которые пишут CUDA-ядра и хотят, чтобы агент перебирал варианты оптимизации с автоматической проверкой.
Попробуйте сами
Оптимизируй CUDA-ядро в [путь к файлу] для [операция, например умножение матриц]. Собери тестовую обвязку, которая проверяет правильность, замерь исходную скорость, профилируй в Nsight и пробуй улучшения по одному, оставляя только те, что проходят проверку правильности. Остановись, когда получишь более быструю версию, и дай таблицу с каждым изменением и его ускорением.
Нужна помощь с запуском? Вступайте в сообщество AI Pack ↗
Источник: github.com ·