Анонс ComputeEval, открытой платформы для оценки LLM на CUDA
16 апреля 2025 года
Автор Даниэль Родригес и Навйа Садан
Большие языковые модели (LLMs) меняют подход к программированию и обучению разработчиков. Современные передовые модели могут генерировать Python-скрипты, веб-сайты на основе React и многое другое. В будущем мощные модели ИИ будут помогать разработчикам в написании высокопроизводительного кода для GPU. Это поднимает важный вопрос: как можно определить, способен ли LLM справляться со сложностями программирования на CUDA?
ComputeEval — это открытая платформа и набор данных, предназначенные для оценки LLM в генерировании кода CUDA. Набор данных создан для оценки способности LLM генерировать корректный код CUDA в различных областях параллельного программирования, таких как управление памятью и синхронизация потоков. Платформа разработана для упрощения оценки сгенерированного кода.
В этом посте мы взглянем на то, как работает ComputeEval как оценочная платформа, результаты нашей оценки современных моделей и что это означает для будущего разработки GPU с помощью ИИ.
Новая эталонная оценка для высокопроизводительного генерации кода для GPU
ComputeEval нацелен на создание надежной эталонной оценки, ориентированной на сообщество, специально для CUDA и высокопроизводительного кода для GPU. Его вдохновили эталонные оценки на других языках, таких как HumanEval. В отношении CUDA важны точность, параллелизм и производительность.
ComputeEval состоит из следующего:
- Ручные реальные задачи CUDA: Наша команда собрала набор задач, которые охватывают все, от запуска ядер и управления потоками до структуры памяти и использования общей памяти. Наше первое издание включает в себя 128 задач CUDA, которые служат основой для оценки того, как хорошо LLM справляются с задачами программирования для GPU.
- Тесты функциональной корректности: Код предоставляется для выполнения тестов функциональной корректности в песочнице. Это означает, что вы можете безопасно выполнять сгенерированный код и убедиться, что он работает должным образом.
Чтобы увидеть код, посетите репозиторий nvidia/compute-eval. Найдите набор данных на Hugging Face.
Производительность модели
Наша команда оценила несколько передовых LLM на ComputeEval, чтобы установить базовые показатели производительности и понять текущее состояние программирования CUDA с помощью ИИ (Таблица 1).
Модель | pass@1 | pass@3 |
OpenAI o3-mini | 0.61 | 0.74 |
Anthropic Claude Sonnet 3.7 | 0.54 | 0.60 |
Llama 3.1 405b | 0.4 | 0.55 |
Google Gemini 2.0 Flash Thinking | 0.37 | 0.52 |
Эти результаты подчеркивают, что хотя LLM способны генерировать корректный код CUDA в некоторых простых случаях, даже лучшие модели все еще не могут генерировать правильный код CUDA для сложных задач, и в некоторых случаях они не следуют базовым инструкциям, с которыми могут справляться другие языки, что указывает на возможность улучшения в этой сложной области.
Как начать
ComputeEval — это не только измерение того, как хорошо работают современные модели, это еще и установка стандарта, который будет способствовать непрерывному улучшению программирования CUDA с помощью ИИ. Наша команда хочет расширять границы того, что могут сделать LLM в области высокопроизводительных вычислений. Как открытая платформа, ComputeEval — это ресурс, которому доверяет сообщество и на основе которого можно строить свои идеи. Предоставляя задачи, охватывающие экспертные темы из библиотек CUDA-X и архитектур GPU, ComputeEval также способствует модернизации, используя лучшие практики по умолчанию.
В этом первом выпуске вы найдете 128 тщательно разработанных задач CUDA. Но мы на этом не останавливаемся. Мы уже работаем над сбором новых задач с нашими внутренними командами и партнерами. Эти задачи также будут опубликованы как открытые. Будущие обновления будут содержать доработанные тесты и более детализированные метрики, которые будут учитывать не только корректность, но и измерения производительности.
Опытные профессионалы HPC, студенты и увлеченные люди приглашаются к участию, выполняя эталоны на дополнительных моделях, отправляя новые задачи CUDA и задачи из библиотек CUDA через запросы на пул и предоставляя общую обратную связь в GitHub Issues. Ваши отзывы и вклад помогут формировать будущее этой эталонной оценки и улучшить ускоренные вычисления для всех. Чтобы увидеть код, посетите репозиторий nvidia/compute-eval. Найдите набор данных на Hugging Face.
Теги
Разработка и оптимизация | Генеративный ИИ | Модели / Библиотеки / Фреймворки | HPC / Научные вычисления | CUDA | Технический уровень: Средний | Новости | LLMs | с открытым исходным кодом | Дополненное генерирование на основе извлечения (RAG)
Об авторах
О Даниэле Родригесе
Даниэль Родригес является техническим менеджером продукта в командах CUDA Python и DevTools в NVIDIA. Его усилия сосредоточены на построении инструментов для специалистов по данным и инженеров высокопроизводительных вычислений. У Даниэля есть образование в области электротехники и аналитики данных. До того как работать в NVIDIA, он трудился в Google и в нескольких компаниях по прогнозированию данных, где создавал продукты, связанные с данными, и вносил свой вклад во многие проекты с открытым исходным кодом.Просмотреть все посты Даниэля Родригеса
О Навйе Садан
Навйа Садан является инженером-программистом в команде инструментов для разработчиков ИИ в NVIDIA. Она работает над созданием технологий и инструментов, чтобы снизить барьер для входа в программирование на CUDA. Она тесно сотрудничает с кросс-функциональными командами для оценки моделей ИИ, развития возможностей CUDA для генеративного ИИ и интеграции этих возможностей в нашу существующую платформу. Ранее она училась в Университете Иллинойс, Урбана-Шампейн, где изучала компьютерные науки и статистику с акцентом на ИИ и машинное обучение.Просмотреть все посты Навйи Садан