Игорь Градов
Игорь Градов
5 мин
ai

NVIDIA выпустила CUDA Rust: GPU-ядра впервые можно писать целиком на Rust

NVIDIA объявила о запуске CUDA Rust, двух открытых проектов, которые впервые позволяют писать GPU-ядра (код, исполняемый на видеокарте) целиком на языке Rust, без переключения на C++ или Python для самой вычислительной части.

NVIDIA выпустила CUDA Rust: GPU-ядра впервые можно писать целиком на Rust
Почему это важно

До сих пор Rust мог запускать ядра на видеокартах NVIDIA, но тело ядра приходилось писать на другом языке. Теперь разработчик держит весь код в одном файле и на одном языке, а компилятор Rust ловит типичные ошибки работы с памятью ещё до запуска на GPU.

Инфраструктурный слой ИИ всё активнее переходит на Rust: драйвер NVIDIA Nova для Linux написан на Rust, ядро NVIDIA Dynamo тоже, библиотека NVTX получила Rust-обвязки. Единственным пробелом оставались GPU-ядра. По данным Marktechpost, NVIDIA закрывает этот пробел двумя проектами из лаборатории NVlabs: cuda-oxide (модель SIMT) и cutile-rs (модель Tile). Оба компилируют Rust-ядра нативно и используют систему владения Rust, чтобы отсеивать ошибки наложения буферов (aliasing) на этапе компиляции.

Что Когда Кто выпустил Цена
CUDA Rust: cuda-oxide + cutile-rs Дата точного релиза не названа, cutile-rs уже на crates.io NVIDIA NVlabs, опенсорс Бесплатно

Две модели программирования GPU в одном языке

CUDA Rust предлагает два трека, повторяющих две модели, которые CUDA уже поддерживает в C++ и Python:

  • SIMT (cuda-oxide) описывает, что делает один поток, и запускает тысячи таких потоков. Это классическая модель, знакомая по CUDA C++ и numba-cuda.
  • Tile (cutile-rs) описывает, что происходит с одним блоком данных (тайлом), а компилятор сам решает, сколько реальных потоков GPU за ним стоит.

NVIDIA рекомендует начинать с Tile, а SIMT использовать там, где нужен явный контроль над потоками и памятью. Запланированная совместимость между языками означает, что выбор Rust не отрезает разработчика от C++ или Python.

Что нового

  • cutile-rs опубликован на crates.io и работает на стабильном Rust 1.89+ с CUDA 13.3, без ночных сборок и без кастомного LLVM.
  • cuda-oxide использует собственный бэкенд компилятора rustc: код проходит через Rust MIR (промежуточное представление компилятора Rust), фреймворк Pliron IR и LLVM IR, превращаясь в PTX-инструкции для GPU. Требует закреплённой ночной сборки (nightly-2026-04-03).
  • Оба проекта отлавливают наложение буферов на этапе компиляции: попытка передать выходной буфер одновременно как вход завершается ошибкой компилятора, а не молчаливым сбоем на GPU.
  • cutile-rs уже используется в инференс-движке Grout от Hugging Face и в проекте mistral.rs.
  • В cuda-oxide тип DisjointSlice даёт каждому потоку эксклюзивный доступ к своему элементу, а выход за границы массива становится обрабатываемой веткой, а не аварийным завершением.
  • cutile-rs не открывает разделяемую память и индексы потоков напрямую, что убирает целый класс ошибок. В cuda-oxide работа с разделяемой памятью пока требует блока unsafe.

Как попробовать?

  1. cutile-rs (проще). Убедитесь, что у вас Linux, GPU с compute capability 8.0+, CUDA 13.3 и Rust 1.89+. Создайте проект: cargo new, затем cargo add cutile.
  2. cuda-oxide (для продвинутых). Понадобятся Linux, GPU compute capability 8.0+, CUDA 12.x+, clang с libclang и закреплённый nightly-2026-04-03. Команда cargo oxide doctor проверит окружение, а cargo oxide new создаст шаблон с хост-кодом и кодом устройства в одном файле.
  3. Первый запуск. В обоих случаях шаблонный проект содержит пример сложения векторов. Запустите его, чтобы убедиться, что цепочка компиляции работает от Rust до GPU.

Есть ли аналоги в России?

Прямого российского аналога CUDA Rust нет. Экосистема NVIDIA CUDA привязана к GPU этого производителя, а поставки новых видеокарт NVIDIA в Россию ограничены. Российские ИИ-платформы (YandexGPT, GigaChat от Сбера) предоставляют доступ к моделям через API и не требуют от пользователя писать GPU-ядра самостоятельно.

Для тех, кто разрабатывает собственные инференс-движки или дообучение (fine-tuning, обучение модели на ваших примерах под узкую задачу) на доступном оборудовании, выбор пока остаётся между CUDA C++ и Python-обвязками. CUDA Rust актуален в первую очередь для команд, у которых есть GPU NVIDIA с compute capability 8.0 и выше.

Мнение редакции dzen.guru

Появление CUDA Rust для меня сигнал не про язык как таковой, а про то, куда движется инфраструктура ИИ. Rust забирает всё больше низкоуровневого кода: драйверы, рантаймы ИИ-агентов (программ, действующих автономно), инференс-движки (системы, которые выполняют запросы к модели). Теперь и GPU-ядра.

Для большинства авторов Дзена и маркетологов это не инструмент для завтрашнего дня. Но если вы предприниматель, который строит свой ИИ-продукт, или разработчик, пишущий на Rust, стоит посмотреть на cutile-rs уже сейчас: он на стабильном Rust, без ночных сборок, и реально используется в Hugging Face.

Оговорка: оба проекта находятся в альфа-фазе. NVIDIA прямо указывает, что ни один из них пока не подтверждён для продакшена. cutile-rs ближе к готовности, cuda-oxide заметно сырее.

Что сделать сегодня: если пишете на Rust и работаете с GPU, поставьте cutile-rs и прогоните пример из документации. Если не пишете, просто запомните связку «cuda rust»: через год-два она будет звучать в вакансиях на ИИ-инфраструктуру так же часто, как «CUDA C++» звучит сейчас.

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

Можно ли использовать CUDA Rust в продакшене?

Пока нет. Оба проекта находятся в альфа-стадии. cutile-rs уже применяется в Hugging Face Grout и mistral.rs, но NVIDIA не подтверждает готовность ни одного из проектов для боевых нагрузок. Для критичных задач пока безопаснее оставаться на CUDA C++.

Нужна ли ночная сборка Rust?

Зависит от трека. cutile-rs работает на стабильном Rust 1.89 и выше. cuda-oxide требует закреплённой ночной сборки nightly-2026-04-03, что усложняет интеграцию в существующие проекты.

Заменит ли CUDA Rust написание ядер на C++ и Python?

Не в ближайшее время. NVIDIA планирует межъязыковую совместимость: выбор Rust не закрывает доступ к C++ или Python. Скорее, появляется третий равноправный вариант для тех команд, чья кодовая база уже на Rust, и это позволяет им не переключаться между языками при работе с GPU.

Поделиться:TelegramVK
Игорь Градов
Игорь Градов

Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».

Комментарии

Читайте также

Google DeepMind предсказала эффекты всех 9 млрд мутаций в геноме человека: доступ бесплатный
ai

Google DeepMind предсказала эффекты всех 9 млрд мутаций в геноме человека: доступ бесплатный

Google DeepMind 5 июня 2025 года открыла AlphaGenome Atlas, базу данных с предсказаниями эффектов всех 9 миллиардов возможных однобуквенных мутаций в геноме…

4 мин
AI-агенты заменяют Конфигуратор: 1С-разработка без ручных операций уже работает
ai

AI-агенты заменяют Конфигуратор: 1С-разработка без ручных операций уже работает

Разработка в 1С выходит за пределы Конфигуратора: ИИ-агенты, MCP-протокол и автоматизация через Cursor позволяют собрать полный цикл работы с платформой, где…

5 мин
Meta запустила AI агента Muse: он торгуется, бронирует и работает после закрытия приложения
ai

Meta запустила AI агента Muse: он торгуется, бронирует и работает после закрытия приложения

Meta представила ИИ-агента Muse, который не просто отвечает на вопросы, а выполняет задачи самостоятельно: отправляет письма, бронирует поездки, торгуется за…

5 мин