TheRock: открытая система сборки ROCm и HIP от AMD
Обзор TheRock — лёгкой open-source системы сборки HIP и ROCm от AMD. Для кого, ключевые функции, плюсы/минусы, сравнение с CUDA и классическим ROCm.
TheRock: открытая система сборки ROCm и HIP от AMD
«TheRock — это не просто инструмент сборки, а новая архитектурная основа, на которой AMD строит всё будущее AI-стека ROCm»
Что такое TheRock и для кого он предназначен
TheRock (The HIP Environment and ROCm Kit) — это лёгкая платформа сборки с открытым исходным кодом для HIP и ROCm, созданная для контрибьюторов ROCm, разработчиков, исследователей и опытных пользователей, которым нужен доступ к последним возможностям ROCm.
Проект устраняет сложность традиционных установок на основе пакетов, предоставляя более гибкий и контролируемый путь к ROCm.
В основе последнего крупного релиза — дебют TheRock в production: AMD модернизирует весь процесс сборки, упаковки, валидации и доставки ROCm, одновременно расширяя поддержку железа и AI-фреймворков.
Целевая аудитория:
- Разработчики и исследователи, работающие с AMD GPU (Instinct, Radeon, Ryzen AI)
- ML-инженеры, которым нужна сборка PyTorch/JAX с ROCm из исходников
- Контрибьюторы экосистемы ROCm
- DevOps-инженеры, выстраивающие CI/CD пайплайны для AMD-инфраструктуры
- Команды, которым критична открытость и отсутствие vendor lock-in
Ключевые возможности
1. Модульная система сборки на чистом CMake
TheRock вводит ROCm Core — базовую установку с ключевыми компонентами, нужными большинству пользователей, плюс опциональные SDK для специализированных областей (HPC, компьютерное зрение ROCm-CV, датасаенс ROCm-DS, лайфсайенс ROCm-LS). Всё это построено на единой, чисто CMake-системе сборки со стабильными ночными сборками для Linux и Windows.
2. Гибкие флаги компонентов
Вы можете собирать только то, что нужно. Доступны следующие группы флагов:
# Отключить все опциональные компоненты
cmake -B build -GNinja . \
-DTHEROCK_AMDGPU_FAMILIES=gfx110X-all \
-DTHEROCK_ENABLE_ALL=OFF \
-DTHEROCK_ENABLE_HIP_RUNTIME=ON
cmake --build build
Доступны флаги: -DTHEROCK_ENABLE_ALL=OFF (отключить все опции), -DTHEROCK_ENABLE_CORE=OFF (отключить core-компоненты), -DTHEROCK_ENABLE_COMM_LIBS=OFF (коммуникационные библиотеки), -DTHEROCK_ENABLE_MATH_LIBS=OFF (математические библиотеки).
3. Управление зависимостями и CI/CD
TheRock управляет зависимостями между пакетами, так что изменения, затрагивающие сразу несколько компонентов ROCm, координируются автоматически.
TheRock отвечает за запуск нескольких GitHub Workflow, тестирующих каждый pull request и его влияние на проекты ROCm и release-сборки. ROCm использует эти пайплайны в ускоренном CI/CD-цикле.
4. Быстрый старт через Python-окружения
Python-релизы, собранные с помощью TheRock, легко устанавливаются в виртуальные окружения, позволяя разработчикам быстро опробовать новые версии ROCm без изменений системных настроек.
Пример установки зависимостей и клонирования:
# Ubuntu
sudo apt install gfortran git ninja-build cmake g++ \
pkg-config xxd automake libtool python3-venv \
python3-dev libegl1-mesa-dev texinfo bison flex
git clone https://github.com/ROCm/TheRock.git
cd TheRock
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python3 ./build_tools/fetch_sources.py
5. Docker-контейнеры и артефакты сборки
Для сборки, тестирования и дистрибуции ROCm через TheRock предусмотрены специализированные Dockerfile. Страница релизов описывает установку и использование артефактов для ROCm и внешних сборок PyTorch/JAX. Артефакты CI/CD создаются в рамках ночных CD-релизов.
6. Поддержка матлибов и ML-библиотек
В состав входят математические и ML-библиотеки: hipBLAS, rocRAND, ComposableKernel, MIOpen и другие.
Профилировщики включают ROCm Compute Profiler, ROCm Systems Profiler и ROCprofiler-SDK.
7. Multi-arch релизы
Новые multi-arch релизы собирают ROCm для всех GPU-архитектур одновременно, разделяя GPU-специфичный код (kernel packs) от архитектурно-нейтрального хост-кода на этапе упаковки.
Поддерживаемое железо
ROCm поддерживает архитектуры AMD GPU для датацентров, рабочих станций и APU. TheRock обеспечивает единый пользовательский ROCm-опыт на всех этих устройствах.
AMD Instinct GPU ориентированы на крупномасштабные вычисления, AI-обучение и HPC. AMD Radeon GPU и AMD Ryzen AI APU предназначены для рабочих станций, десктопов и edge AI.
SUPPORTED_GPUS.md в репозитории. Не все комбинации GPU-архитектур и ОС поддерживаются одновременно.Архитектура TheRock
graph TD
A[TheRock CMake Build System] --> B[ROCm Core SDK]
A --> C[Expansion SDKs]
B --> D[HIP Runtime]
B --> E[Compiler / LLVM]
B --> F[Math Libs: hipBLAS, rocBLAS, MIOpen]
B --> G[Profilers: rocprofiler]
C --> H[ROCm-DS: Data Science]
C --> I[ROCm-LS: Life Sciences]
C --> J[ROCm-CV: Computer Vision]
A --> K[CI/CD GitHub Workflows]
K --> L[Nightly Builds & Releases]
L --> M[PyTorch / JAX Wheels]
L --> N[Docker Containers]
Тарифы и лицензия
TheRock полностью открытый: разработка ведётся публично через PR, прозрачные CI-пайплайны и код непосредственно в публичных GitHub-репозиториях.
| Параметр | Значение |
|---|---|
| Лицензия | Open Source (MIT / Apache 2.0 по компонентам) |
| Стоимость | Бесплатно |
| Хостинг | GitHub (github.com/ROCm/TheRock) |
| Ночные сборки | Бесплатно, публичный доступ |
| Коммерческая поддержка | Через AMD официальные каналы |
pip install прямо в виртуальное окружение, без системных изменений.Плюсы и минусы
| ✅ Плюсы | ❌ Минусы |
|---|---|
| Полностью открытый исходный код | Ранняя стадия (preview до ROCm 7.14) |
| Модульность: собирай только нужное | Требует серьёзной Linux-экспертизы |
| Автоматическое управление зависимостями | Поддержка Windows всё ещё ограничена |
| Единый CMake-пайплайн для всего стека | Большое время первичной сборки |
| Nightly-релизы с PyTorch/JAX | Не все GPU-комбинации поддерживаются |
| Поддержка Instinct и Radeon/Ryzen AI | Меньше документации, чем у CUDA |
| Прозрачный CI/CD через GitHub | bitsandbytes и ряд HF-инструментов работают нестабильно |
| Контейнеры Docker из коробки | FlashAttention 3 недоступен на ROCm |
Сравнение с альтернативами
| Параметр | TheRock / ROCm | NVIDIA CUDA Toolkit | Классическая установка ROCm (пакеты) |
|---|---|---|---|
| Цена | Бесплатно, open source | Бесплатно, проприетарный | Бесплатно, open source |
| Поддерживаемые GPU | AMD (Instinct, Radeon, Ryzen AI) | NVIDIA (все поколения) | AMD (официальный список) |
| Модульность сборки | ✅ Высокая (флаги CMake) | ❌ Монолитная | ❌ Пакетная, менее гибкая |
| Экосистема фреймворков | PyTorch, JAX, vLLM, SGLang | PyTorch, TF, JAX, TRT-LLM и др. | PyTorch, JAX |
| Сложность установки | Высокая (сборка из исходников) | Средняя (пакетный менеджер) | Средняя (apt/deb) |
| Прозрачность CI/CD | ✅ Публичный GitHub HUD | ❌ Закрытый | Частично открытый |
| Windows-поддержка | 🟡 В разработке | ✅ Полная | ❌ Отсутствует |
| Производительность vs CUDA | ~75–85% (инференс) | 100% (эталон) | ~75–85% (инференс) |
| Vendor lock-in | ❌ Отсутствует | ✅ Полный (NVIDIA) | ❌ Отсутствует |
AMD GPU класса RX 7900 XTX даёт 24 ГБ VRAM примерно вдвое дешевле RTX 4090. Catch: для полноценной работы нужен Linux, настройка требует усилий, а производительность отстаёт от CUDA примерно на 15–25%.
ROCm достиг production-ready статуса для PyTorch и vLLM в 2026 году. Если ваш стек не зависит от TensorRT-LLM или FlashAttention 3 — AMD GPU стоит рассмотреть всерьёз с учётом разницы в цене.
Сборка только HIP Runtime для AMD Instinct MI300X (gfx942) с тестами:
cmake -B hipbuild -GNinja . \
-DTHEROCK_AMDGPU_TARGETS=gfx942 \
-DTHEROCK_ENABLE_ALL=OFF \
-DTHEROCK_ENABLE_HIP_RUNTIME=ON
cmake --build hipbuild
ctest --test-dir hipbuild
При успешной сборке консоль покажет 100% tests passed, 0 tests failed.
Вердикт
TheRock — это ставка AMD на открытость и модульность всего GPU-стека. ROCm Core SDK — это тщательно структурированный набор фундаментальных библиотек, а TheRock — централизованная система сборки, которая систематически собирает, тестирует и доставляет эти компоненты.
ROCm 7.14 — не просто очередной feature-релиз, а новая основа для будущего AI-платформы AMD. TheRock теперь является production build-инфраструктурой ROCm — модульной платформой, способной доставлять инновации быстрее при лучшем качестве и упрощённом деплойменте.
Кому подойдёт:
- ✅ Исследователям и ML-инженерам на AMD Instinct/Radeon без vendor lock-in
- ✅ Командам, которым нужна полная прозрачность стека и возможность контрибьюции
- ✅ Проектам, где важна экономия: AMD GPU значительно дешевле NVIDIA при сопоставимой VRAM
- ✅ DevOps-командам, выстраивающим открытые CI/CD-пайплайны для GPU-кластеров
- ❌ Не подойдёт тем, кто зависит от TensorRT-LLM, FlashAttention 3 или CUDA-специфичных ядер
- ❌ Не подойдёт Windows-разработчикам, которым нужна стабильная среда прямо сейчас
Рейтинг: 8/10
TheRock — зрелый шаг AMD к тому, чтобы сделать GPU-вычисления по-настоящему открытыми. С выходом ROCm 7.14 в production этот инструмент перестал быть «только для энтузиастов» и стал реальной альтернативой проприетарному CUDA-стеку для большинства AI и HPC задач.
Итог: стоит ли переходить?
TheRock меняет правила игры для тех, кто строит AI-инфраструктуру на AMD. Модульность, единый CMake-пайплайн, публичный CI/CD и поддержка Instinct/Radeon/Ryzen AI в одной системе — это то, чего давно не хватало экосистеме ROCm. Да, порог входа остаётся высоким, а часть инструментов (bitsandbytes, FlashAttention 3) пока работает нестабильно. Но тренд однозначен: с каждым релизом разрыв с CUDA сокращается, а открытость и экономия на железе делают AMD-путь всё более привлекательным для команд, готовых инвестировать в настройку. Если ваш проект — долгосрочный и вам важна независимость от вендора, TheRock заслуживает вашего внимания уже сегодня.