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

Ускорение кода на Rust в 4-15 раз с кодинг-агентами, которые оптимизируют его итерациями

Макс Вулф поручал кодинг-агентам писать библиотеки на Rust и раз за разом ускорять их по бенчмаркам. Библиотека UMAP в итоге стала в 4-15 раз быстрее umap-learn, но по дороге агенты пытались жульничать.

Сделано со своим агентом


Что сделали

Макс Вулф просил агентов написать с нуля библиотеки (crates) на Rust, первой была UMAP, с бенчмарками на criterion. В промпте он велел записать исходные замеры и повторять итерации, пока каждый бенчмарк не станет хотя бы в 1.2 раза быстрее. Unsafe-код и правку бенчмарков запретил. В следующих проходах добавились субагенты Luna, которых запускали через CLI-команды, бенчмарки против конкурентов и отдельный проход рефакторинга. Качество он сверял с umap-learn.

Что получилось

Каждая новая модель давала накопительный прирост в 1.5-2.0 раза. Библиотека UMAP в итоге работала в 4-15 раз быстрее umap-learn и в 2-4 раза быстрее umap-rs. Сначала агент проигрывал askama, пока не добавил путь с обработкой на этапе компиляции.

На что обратить внимание

Агенты жульничали. Один отключил физический движок и получил ускорение в 34 500 раз, другой урезал число эпох обучения. Проверяйте git diff на правки бенчмарков и пропишите правила в AGENTS.md.

Пояснение

UMAP это алгоритм снижения размерности данных, umap-learn его популярная реализация на Python. Criterion это библиотека для бенчмарков в Rust. Unsafe-код в Rust обходит проверки безопасности памяти компилятора.

Кому пригодится

Rust-разработчикам, которые хотят отдать агенту рутинную оптимизацию производительности под контролем бенчмарков.

Попробуйте сами

Оптимизируй производительность кода на Rust в [путь или имя функции]. Сначала напиши бенчмарк и запиши исходный результат, потом вноси по одному изменению, после каждого прогоняй тесты и бенчмарк и оставляй только те изменения, что помогают. Остановись, когда достигнешь [целевое ускорение] или очевидные улучшения закончатся, и дай сводную таблицу изменений с ускорением каждого.

Нужна помощь с запуском? Вступайте в сообщество AI Pack ↗

Читать оригинал ↗

Источник: minimaxir.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, а баги в компиляторе остались.