CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
# rocisa
|
|
|
|
A Python/C++ code generator for ROCm ISA, built with nanobind.
|
|
|
|
## Developer Setup
|
|
|
|
Install rocisa as an editable package using the invoke task from the tensilelite root:
|
|
|
|
```bash
|
|
cd rocm-libraries/projects/hipblaslt/tensilelite
|
|
invoke rocisa
|
|
```
|
|
|
|
This compiles the C++ extension and installs it into your active venv so that
|
|
`import rocisa` works from anywhere — no `PYTHONPATH` required.
|
|
|
|
> **Linux only.** The `invoke` dev workflow (`invoke rocisa`, `invoke build-client`)
|
|
> is supported on Linux (a ROCm dev container) only: it uses `amdclang`, defaults to
|
|
> `/opt/rocm`, and resolves dependencies via RPATH — none of which apply on Windows.
|
|
> On Windows, rocisa is built by the integrated CMake build (TheRock / CI), which is
|
|
> where its Windows dependent-DLL handling lives.
|
|
|
|
## Rebuilding after C++ changes
|
|
|
|
See [tensilelite/README.md — "Rebuilding rocisa after C++ changes"](../README.md#rebuilding-rocisa-after-c-changes)
|
|
for the full rebuild instructions, including which cmake build directory to use
|
|
depending on how rocisa was installed.
|
|
|
|
Importing rocisa with stale bindings raises an `ImportError` with a clear rebuild
|
|
hint, so you will not silently use an out-of-date extension.
|
|
|
|
## Building independently (without tensilelite)
|
|
|
|
```bash
|
|
cd rocisa
|
|
pip install -e .
|
|
```
|
|
|
|
scikit-build-core handles the cmake configuration and compilation automatically.
|
|
Requires the ROCm SDK (`amdclang++`) and `/opt/rocm` on the default search path,
|
|
or set `ROCM_PATH`.
|
|
|
|
For more information, see `docs/`.
|