Repository navigation
rocmPackages: 7.2.4 -> 10.1 - #31
Closed
randomizedcoder wants to merge 11 commits into
Closed
randomizedcoder wants to merge 11 commits into
randomizedcoder wants to merge 11 commits into
Conversation
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 15, 2026 23:02
6660e00 to
bd1c22e
Compare
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
from
October 15, 2026 23:02
23b2969 to
75716b7
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 17, 2026 02:50
bd1c22e to
4abbbf6
Compare
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
2 times, most recently
from
October 17, 2026 16:20
12e340e to
cbed6b8
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 17, 2026 16:20
4abbbf6 to
bec19f2
Compare
This was referenced Oct 17, 2026
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
from
October 19, 2026 15:18
cbed6b8 to
f349a45
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
2 times, most recently
from
October 20, 2026 06:44
c9766be to
d7ce9df
Compare
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
from
October 20, 2026 06:44
f349a45 to
cc50ea0
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 20, 2026 19:20
d7ce9df to
4dcbcd0
Compare
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
from
October 21, 2026 07:15
cc50ea0 to
f219d86
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 21, 2026 07:15
4dcbcd0 to
8ce4dcd
Compare
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
from
October 22, 2026 14:51
f219d86 to
c49b916
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 22, 2026 14:51
8ce4dcd to
2fec4d6
Compare
Upstream retired rocm_bandwidth_test during the TheRock 7.x series and it has received no updates in nixpkgs since 6.3.3. No package depends on it. https://rocm.docs.amd.com/projects/rocm_bandwidth_test/en/latest/index.html Assisted-by: Claude Code (claude-opus-5-5)
opensplat does find_package(Torch), which includes Caffe2's LoadHIP.cmake and find_package(rocm_smi). On ROCm 10 rocm_smi-config.cmake does find_dependency(PkgConfig) followed by pkg_check_modules(libdrm), so pkg-config must be present as a host tool. libdrm itself comes from torch.cxxdev, which propagates it once rocmPackages is ROCm 10. Also drop a duplicated rocsolver input. Assisted-by: Claude Code (claude-opus-5-5)
Like opensplat, torchcodec's find_package(Torch) pulls in ROCm 10's rocm_smi-config.cmake, which runs pkg_check_modules(libdrm). pkg-config was already a nativeBuildInput; add libdrm so libdrm.pc is found on PKG_CONFIG_PATH. Assisted-by: Claude Code (claude-opus-5-5)
It took the top-level rocmPackages and used rocmPackages.rocm-comgr and rocmPackages.rocm-runtime, so the per-arch scopes (rocmPackages.gfx906, ...) and any other instance of the scope built it against the default set's libraries. Take them as scope arguments like every other package. The default rocmPackages.rocprof-trace-decoder derivation is unchanged. Assisted-by: Claude Code (claude-opus-5-5)
Make the ROCm 10.1 scope the default: rocmPackages is now rocmPackages_10, which stays a concrete attribute (rocm-modules/10/, like rocm-modules/6 before it) so it also exists with allowAliases = false. Every rocmPackages derivation is identical to the corresponding rocmPackages_10 derivation before this commit, including the per-architecture scopes. Assisted-by: Claude Code (claude-opus-5-5)
After the switch nothing refers to rocm-modules/default.nix (the 7.2.4 scope) or to the 50 package directories that rocm-modules/10/ replaced. The directories rocmPackages_10 still shares (aotriton, hipcc, hiprt, mivisionx, mscclpp, rocm-docs-core, rocm-tests, rocprof-compute-viewer) and update.nix stay. The rocm-bandwidth-test throw alias lives on in rocm-modules/10/default.nix. Assisted-by: Claude Code (claude-opus-5-5)
find_package(Torch) runs Caffe2's LoadHIP, which loads ROCm 10's rocm_smi-config.cmake; that calls pkg_check_modules(libdrm). Add libdrm to the ROCm build inputs and propagate its dev output to C++ consumers through cxxdev, so builds against torch (OpenSplat) find libdrm.pc as well. cxxdev's propagated-build-inputs is written from plain store paths, so the default output would not carry the .pc file. Assisted-by: Claude Code (claude-opus-5-5)
torch 2.14's cmake/public/LoadHIP.cmake runs find_package(hipfile
REQUIRED) when ROCM_VERSION_DEV is 7.14 or later ("hipFile is Linux-only
and ships with ROCm 7.14 and later, where it is required"), so
configuring against ROCm 10.1 failed. Add rocmPackages.hipfile to
rocmtoolkit_joined, which torch's CMake searches and cxxdev propagates
to C++ consumers (OpenSplat, torchcodec), whose find_package(Torch) runs
the same LoadHIP. With hipfile found, USE_CUFILE stays on
(Dependencies.cmake turns it off only when hipfile is missing).
Assisted-by: Claude Code (claude-opus-5-5)
vLLM's CMakeLists.txt runs find_package(Torch), and torch 2.14's LoadHIP.cmake requires hipfile from ROCm 7.14 on, so configuring against ROCm 10.1 failed with "Could not find a package configuration file provided by hipfile". vLLM lists its ROCm libraries itself rather than taking them from torch's cxxdev, so add hipfile there. Assisted-by: Claude Code (claude-opus-5-5)
cmake/local.cmake only knows the rocm_v7_1 and rocm_v7_2 backend labels, so deriving the label from the ROCm version fails with "Unknown ROCm backend" on ROCm 10. The label only selects ollama's build preset; the runner links the ROCm in buildInputs. Assisted-by: Claude Code (claude-opus-5-5)
Describe the ROCm 7.2.4 -> 10.1 update: ABI/API breaks, LLVM 24, rocmlir replaced by rocmlir-triton, the new hipfile package that torch 2.14 requires, dropped gfx900/gfx906 support in composable_kernel and MIOpen's CK solvers, and the disabled hipconv backend. Assisted-by: Claude Code (claude-opus-5-5)
randomizedcoder
force-pushed
the
rocm10/13-rest
branch
from
October 27, 2026 04:12
c49b916 to
fdad863
Compare
randomizedcoder
force-pushed
the
rocm10/14-switch
branch
from
October 27, 2026 04:12
2fec4d6 to
41c5e06
Compare
This was referenced Oct 27, 2026
Closed
Owner
Author
|
Opened upstream as NixOS#579527. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 14/14. Part of splitting upstream PR 573885 (
rocmPackages: 7.2.4 -> 10.1) into smaller PRs, as asked in its review.rocmPackagesto ROCm 10.1staging(mass rebuild)Changes
rocmPackages = recurseIntoAttrs rocmPackages_10rocmPackages_10stays a real attribute, so it works withallowAliases = falserocm-modules/10/replacesupdate.nixrocm_smi-config.cmakeneeds it)rocmPackages.hipfile: torch 2.14 requires it with ROCm 7.14 and later; it reaches OpenSplat and torchcodec throughcxxdevOMP_TOOLworkaround from upstream PR 573885 (fixed in rocprofiler-sdk, rocmPackages_10: add profiling and debugging tools, RCCL #21)hipfile, because it lists its ROCm inputs itself instead of using torch'scxxdevrocm_v7_2backend label (there is no ROCm 10 label yet), with a TODOrocmPackages.hipfileTesting
rocmPackagesderivation (default, llvm, gfx906, gfx1102 scopes) is identical torocmPackages_10's before itrocmPackagesderivations plus consumers, 204 derivations in totaltorchWithRocmfor Python 3.13 and 3.14; one failure, opensplat (below)Hardware smoke tests:
import torch;torch.cuda.device_count()= 1torch.profilerGPU kernelsrocprofv3 --kernel-traceimport vllm¹ Run with
ROCR_VISIBLE_DEVICES=0: that machine also holds a gfx803 card that HIP skips but amdsmi counts.Known failure, not from this PR
opensplathas been broken on master in every variant since torch 2.14.1 (2026-10-22)Series
Preparatory PRs, each against
master: #10, #11, #15, #16, #17.master🤖 Generated with Claude Code