Агентные кейсы
Разработка и DevOps

Оптимизация 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 ·

Похожие кейсы

Больше тысячи смёрженных PR в неделю от внутренних агентов Stripe Minions

Stripe рассказывает о Minions, своих внутренних агентах для программирования, которые доводят задачу до готового изменения кода. По словам компании, на них приходится больше тысячи смёрженных pull request в неделю.

Свой агент

Перенос старых Java-апплетов Теренса Тао на JavaScript и новые приложения с агентом

Математик Теренс Тао с помощью агента для программирования перенёс около двух десятков своих Java-апплетов 1999 года на JavaScript и сделал два новых наглядных приложения. Перенос занял часы, и все апплеты снова работают.

Свой агент

Пайплайны данных и анализ для научной статьи с Claude Code, который написал больше 98% кода

Исследователь Кевин Ян сделал Claude Code главным помощником в работе над статьёй, и за несколько недель тот написал, по его оценке, больше 98% кода. Ошибки агент всё равно допускал, поэтому каждый шаг Кевин проверял сам.

Компилятор C командой из 16 параллельных агентов Claude

Николас Карлини из Anthropic запустил 16 параллельных агентов Claude, и примерно за 2000 сессий они написали на Rust компилятор C на 100 000 строк, который собирает Linux 6.9. Обошлось это чуть меньше чем в $20 000, а баги в компиляторе остались.