back to home

ROCm / TheRock

The HIP Environment and ROCm Kit - A lightweight open source build system for HIP and ROCm

856 stars
198 forks
722 issues
PythonCMakeShell

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing ROCm/TheRock in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/ROCm/TheRock)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

TheRock TheRock (The HIP Environment and ROCm Kit) is a lightweight open source build platform for HIP and ROCm. It is designed for ROCm contributors as well as developers, researchers, and advanced users who need access to the latest ROCm capabilities without the complexity of traditional package-based installations. The project is currently in an **early preview state** but is under active development and welcomes contributors. Come try us out! Please see CONTRIBUTING.md for more info and the FAQ for frequently asked questions. Features TheRock includes: • Nightly releases of ROCm and PyTorch • A CMake super-project for HIP and ROCm source builds • Support for building PyTorch with ROCm from source • JAX support and other external project builds are in the works! • Operating system support including multiple Linux distributions and native Windows • Tools for developing individual ROCm components • Comprehensive CI/CD pipelines for building, testing, and releasing supported components Installing from releases > [!IMPORTANT] > See the Releases Page for instructions on how to install prebuilt > ROCm and PyTorch packages. Project status See the unified project HUD at https://therock-hud-dev.amd.com/ Nightly release status Packages and Python wheels: | Platform | Prebuilt tarballs and ROCm Python packages | PyTorch Python packages | Native Packages | | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Linux | | | | | Windows | | | — | Building from source We keep the following instructions for recent, commonly used operating system versions. Most build failures are due to minor operating system differences in dependencies and project setup. Refer to the Environment Setup Guide for contributed instructions and configurations for alternatives. > [!TIP] > While building from source offers the greatest flexibility, > installing from releases in supported > configurations is often faster and easier. > [!IMPORTANT] > Frequent setup and building problems and their solutions can be found in section Common Issues. Setup - Ubuntu (24.04) > [!TIP] > is used for version control of pre-compiled MIOpen kernels. > is not a hard requirement, but it does reduce compile time. > can be used to install on Ubuntu. > Visit the DVC website for other installation methods. Setup - Windows 11 (VS 2022) > [!IMPORTANT] > See windows_support.md for setup > instructions on Windows, in particular > the section for > installing tools. If the build system is a non-English system. Make sure to switch to . Build configuration The build can be customized through cmake feature flags. Required configuration flags • or • > [!NOTE] > Not all family and targets are currently supported. > See therock_amdgpu_targets.cmake file > for available options. Discovering available targets on your system In case you don't have an existing ROCm/HIP installation from which you can run any of these tools: | Tool | Platform | | ----------------------- | -------- | | | Linux | | | Linux | | | Linux | | | Windows | | | Both | You can install the Python package for any architecture inside a venv and run from there: • • on Linux, on Windows • Optional configuration flags By default, the project builds everything available. The following group flags enable/disable selected subsets: | Group flag | Description | | ---------------------------------- | ------------------------------------ | | | Disables all optional components | | | Disables all core components | | | Disables all communication libraries | | | Disables all debug tools | | | Disables all math libraries | | | Disables all ML libraries | | | Disables profilers | | | Disables data center tools | | | Disables all media libraries | Individual features can be controlled separately (typically in combination with or to force a minimal build): | Component flag | Description | | -------------------------------------- | --------------------------------------------------- | | | Enables the ROCm debug API library | | | Enables the GPU+host compiler toolchain | | | Enables the AMD System Management Interface library | | | Enables the hipify tool | | | Enables the core runtime components and tools | | | Enables the HIP runtime components | | | Enables the OpenCL runtime components | | | Enables the ROCm debugger (ROCgdb) | | | Enables rocprofv3 | | | Enables rocprofiler-systems | | | Enables RCCL | | | Enables rocSHMEM | | | Enables the ROCR debug agent library | | | Enables the PRIM library | | | Enables the BLAS libraries | | | Enables the RAND libraries | | | Enables the SOLVER libraries | | | Enables the SPARSE libraries | | | Enables MIOpen | | | Enables MIOpen_plugin | | | Enables hipDNN samples (hipDNN Usage Examples) | | | Enables hipDNN | | | Enables hipBLASLt Plugin | | | Enables rocWMMA | | | Enables ROCm Data Center Tool (Linux only) | | | Enables Fusilli Plugin | | | Enables libhipcxx | | | Enables AMD Mesa for media libs (Linux only) | | | Enables rocDecode video decoder (Linux only) | | | Enables rocJPEG JPEG decoder (Linux only) | hipDNN provider plugins: | Provider flag | Description | | --------------------------------------- | ---------------------------------------- | | | Enables hipDNN MIOpen-provide…