Commit fd4b3a6
Unify ROCM_INSTALL_DIR and ROCM_ROOT to ROCM_PATH (#440)
* Unify ROCM_INSTALL_DIR and ROCM_ROOT to ROCM_PATH
Standardize all ROCm installation path variables to use ROCM_PATH,
aligning with TheRock infrastructure conventions.
Changes:
- Rename ROCM_ROOT to ROCM_PATH in all CMakeLists.txt files
- Rename ROCM_INSTALL_DIR to ROCM_PATH in all Makefiles
- Update build_packages.sh (variable, CLI flag --rocm-path)
- Update CI workflow to pass -DROCM_PATH instead of -DROCM_ROOT
- Update documentation references in README files
- Rename ROCM_ROOT_PATH C++ macro to ROCM_DEFAULT_PATH in
rocWMMA hiprtc_gemm example (both CMake definition and usage)
Note: CMAKE_HIP_COMPILER_ROCM_ROOT in CMakePresets.json is a CMake
built-in variable and is intentionally left unchanged.
Addresses: #429
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Extract ROCM_PATH resolution into shared Common/ROCmPath.cmake
Replace the duplicated ~12-line ROCM_PATH setting block in 427
CMakeLists.txt files with a single include of a new shared module.
The new module resolves ROCM_PATH with proper priority:
1. Existing cache value (-DROCM_PATH=...)
2. $ENV{ROCM_PATH} (TheRock CI / standard ROCm)
3. $ENV{HIP_PATH} (Windows HIP SDK)
4. /opt/rocm (hardcoded fallback)
This eliminates duplication and lets CI pick up ROCM_PATH from the
environment automatically, removing the need for -DROCM_PATH on the
cmake command line.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Fix ROCmPath.cmake scope issue breaking standalone subdirectory builds
Change include_guard(GLOBAL) to include_guard(DIRECTORY) so that each
directory scope gets its own CMAKE_PREFIX_PATH update. With GLOBAL guard,
only the first add_subdirectory() child to include ROCmPath.cmake would
get ROCM_PATH appended to CMAKE_PREFIX_PATH — siblings would silently
skip the include and their find_package() calls would fail.
Also add ROCmPath.cmake include to all parent-level CMakeLists.txt files
used as CI entry points (HIP-Doc, Applications, Libraries,
Programming-Guide, Tutorials) so they set ROCM_PATH in parent scope
before processing children.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>1 parent 543939b commit fd4b3a6
821 files changed
Lines changed: 2114 additions & 6733 deletions
File tree
- .github/workflows
- Applications
- bitonic_sort
- convolution
- fdtd
- floyd_warshall
- histogram
- monte_carlo_pi
- prefix_sum
- sobel_filter
- Common
- HIP-Basic
- assembly_to_executable
- bandwidth
- bit_extract
- cooperative_groups
- device_globals
- device_query
- events
- gpu_arch
- hello_world_cuda
- hello_world
- hipify
- inline_assembly
- llvm_ir_to_executable
- matrix_multiplication
- module_api
- moving_average
- multi_gpu_data_transfer
- occupancy
- opengl_interop
- runtime_compilation
- saxpy
- static_device_library
- static_host_library
- streams
- texture_management
- vulkan_interop_mipmap
- vulkan_interop
- warp_shuffle
- HIP-Doc
- Programming-Guide
- HIP-C++-Language-Extensions
- calling_global_functions
- launch_bounds
- set_constant_memory
- template_warp_size_reduction
- timer
- warp_size_reduction
- Introduction-to-the-HIP-Programming-Model/add_kernel
- Porting-CUDA-code-to-HIP
- address_retrieval
- device_code_feature_identification
- host_code_feature_identification
- identifying_compilation_target_platform
- identifying_host_device_compilation_pass
- load_module_ex_cuda
- load_module_ex
- load_module
- per_thread_default_stream
- pointer_memory_type
- Programming-for-HIP-Runtime-Compiler
- compilation_apis
- linker_apis_file
- linker_apis_options
- linker_apis
- lowered_names
- rtc_error_handling
- Using-HIP-Runtime-API
- Asynchronous-Concurrent-Execution
- async_kernel_execution
- event_based_synchronization
- sequential_kernel_execution
- Call-Stack
- call_stack_management
- device_recursion
- Error-Handling/error_handling
- HIP-Graphs
- graph_capture
- graph_creation
- Initialization/simple_device_query
- Memory-Management
- Device-Memory
- constant_memory
- explicit_copy
- kernel_memory_allocation
- Host-Memory
- pageable_host_memory
- pinned_host_memory
- SOMA
- memory_pool_resource_usage_statistics
- memory_pool_threshold
- memory_pool_trim
- memory_pool
- ordinary_memory_allocation
- stream_ordered_memory_allocation
- Unified-Memory-Management
- data_prefetching
- dynamic_unified_memory
- explicit_memory
- memory_range_attributes
- standard_unified_memory
- static_unified_memory
- unified_memory_advice
- Virtual-Memory-Management/virtual_memory
- Multi-Device-Management
- device_enumeration
- device_selection
- multi_device_synchronization
- p2p_memory_access_host_staging
- p2p_memory_access
- Reference
- CUDA-to-HIP-API-Function-Comparison/block_reduction
- HIP-Complex-Math-API/complex_math
- HIP-Math-API/math
- Low-Precision-Floating-Point-Types
- low_precision_float_fp16
- low_precision_float_fp8
- Tutorials
- Programming-Patterns
- bfs
- histogram_atomics
- image_convolution
- kmeans
- matrix_multiplication
- graph_api
- src
- Libraries
- ComposableKernel
- attention
- fmha_fwd_v3
- fmha
- topk_softmax
- basic
- batched_transpose
- copy
- elementwise
- img2col
- permute
- reduce
- contraction/batched_contraction
- convolution/grouped_convolution
- gemm
- batched_gemm
- block_scale_gemm
- flatmm
- gemm_multi_abd
- gemm_multi_d
- gemm
- grouped_gemm
- streamk_gemm
- moe
- fused_moe
- moe_smoothquant
- moe_sorting
- normalization
- add_rmsnorm2d_rdquant
- layernorm2d
- rmsnorm2d
- pooling/pool3d
- quantization/smoothquant
- MIGraphX
- migraphx
- cpp_dynamic_batch
- cpp_parse_load_save
- custom_op_hip_kernel
- custom_op_miopen_kernel
- custom_op_rocblas_kernel
- vision/cpp_mnist
- MIVisionX
- canny
- mv_objdetect
- opencv_orb
- RCCL
- allgather
- allreduce
- broadcast
- buffer_registration
- device_api
- gradient_allreduce
- reducescatter
- reduce
- send_recv
- RPP
- box_filter
- brightness
- contrast
- flip
- gamma_correction
- resize
- hipBLASLt
- ext_op_amax
- ext_op_layernorm
- gemm_alphavec_ext
- gemm_amax_ext
- gemm_amax_with_scale_ext
- gemm_amax_with_scale
- gemm_amax
- gemm_attr_tciA_tciB
- gemm_batched_ext
- gemm_batched
- gemm_bgradb
- gemm_bias_ext
- gemm_bias_swizzle_a_ext
- gemm_bias
- gemm_clamp_bias
- gemm_dgelu_bgradb_ext
- gemm_dgelu_bgradb
- gemm_ext_bgradb
- gemm_ext
- gemm_gelu_aux_bias_ext
- gemm_gelu_aux_bias
- gemm_get_algo_by_index_ext
- gemm_get_all_algos_ext
- gemm_get_all_algos
- gemm_is_tuned_ext
- gemm_mix_precision_ext
- gemm_mix_precision_with_amax_ext
- gemm_mix_precision
- gemm_swish_bias
- gemm_swizzle_a
- gemm_swizzle_b
- gemm_tuning_splitk_ext
- gemm_tuning_wgm_ext
- gemm_with_TF32
- gemm_with_scale_a_b_ext
- gemm_with_scale_a_b_vector
- gemm_with_scale_a_b
- gemm
- groupedgemm_ext
- groupedgemm_fixed_mk_ext
- groupedgemm_get_all_algos_ext
- weight_swizzle_padding
- hipBLAS
- gemm_strided_batched
- her
- scal
- hipCUB
- device_radix_sort
- device_sum
- hipFFT
- callback
- multi_gpu
- plan_d2z
- plan_many_2d_r2c
- plan_many_2d_z2z
- plan_z2z
- setworkarea
- hipRAND
- c_cpp_api/simple_distributions_cpp
- device_api
- pseudorandom_generations
- quasirandom_generations
- hipSOLVER
- gels
- geqrf
- gesvd
- getrf
- potrf
- syevdx
- syevd
- syevj_batched
- syevj
- sygvd
- sygvj
- hipSPARSELt
- spmm_advanced
- spmm
- hipSPARSE
- axpyi
- csrmv
- handle
- hybmv
- hipTensor
- contraction
- bilinear
- bf16_f32
- cf32_cf32
- f16_f32
- f32_bf16
- f32_f16
- f32_f32
- f64_f32
- f64_f64
- scale
- bf16_f32
- cf32_cf32
- f16_f32
- f32_bf16
- f32_f16
- f32_f32
- f64_f32
- f64_f64
- elementwise
- binary
- permute
- trinary
- reduction
- rocALUTION
- amg
- as_precond
- async
- benchmark
- bicgstab
- block_precond
- cg_amg
- cg_rsamg
- cg_saamg
- cg
- cmk
- complex
- direct
- fcg
- fgmres
- fixed_point
- gmres
- idr
- itsolve
- key
- me_preconditioner
- mixed_precision
- power_method
- sa_amg
- simple_spmv
- stencil
- tns
- ua_amg
- var_precond
- rocAL
- basic
- dataloader
- image_augmentation
- video
- rocBLAS
- level_1
- axpy
- dot
- nrm2
- scal
- swap
- level_2
- gemv
- her
- level_3
- gemm_strided_batched
- gemm
- rocCV
- bilateral_filter
- bnd_box
- center_crop
- composite
- copy_make_border
- cropandresize
- custom_crop
- gamma_contrast
- normalize
- warp_perspective
- rocDecode
- rocdec_decode
- video_decode_batch
- video_decode_mem
- video_decode_multi_files
- video_decode_perf
- video_decode_pic_files
- video_decode_raw
- video_decode_rgb
- video_decode
- video_to_sequence
- rocFFT
- callback
- complex_complex
- complex_real
- multi_gpu
- real_complex
- rocJPEG
- rocjpeg_decode_batched
- rocjpeg_decode_perf
- rocjpeg_decode
- rocPRIM
- block_sum
- device_sum
- rocProfiler-SDK
- api_buffered_tracing
- api_callback_tracing
- code_object_isa_decode
- code_object_tracing
- counter_collection
- buffer_device_serialization
- buffer
- callback
- device_profiling_sync
- device_profiling
- print_functional_counters
- external_correlation_id_request
- intercept_table
- openmp_target
- pc_sampling
- thread_trace
- rocRAND
- c_cpp_api/simple_distributions_cpp
- device_api
- pseudorandom_generations
- quasirandom_generations
- rocSOLVER
- getf2
- getri
- syev_batched
- syev_strided_batched
- syev
- rocSPARSE
- level_1
- axpyi
- doti
- gthr
- roti
- sctr
- level_2
- bsrmv
- bsrsv
- bsrxmv
- coomv
- csritsv
- csrmv
- csrsv
- ellmv
- gebsrmv
- gemvi
- spitsv
- spmv
- spsv
- level_3
- bsrmm
- bsrsm
- csrmm
- csrsm
- gebsrmm
- gemmi
- sddmm
- spmm
- spsm
- preconditioner
- bsric0
- bsrilu0
- csric0
- csrilu0
- csritilu0
- gpsv
- gtsv
- rocThrust
- device_ptr
- norm
- reduce_sum
- remove_points
- saxpy
- vectors
- rocWMMA
- hiprtc_gemm
- perf_dgemm
- perf_hgemm
- perf_i8gemm
- perf_sgemm
- simple_dgemm
- simple_dgemv
- simple_dlrm
- simple_hgemm
- simple_sgemm
- simple_sgemv
- Programming-Guide
- Tutorials
- Performance-Optimization
- basic_image_gamma_correction
- grid_stride_image_gamma_correction
- tiling_matrix_multiply
- tiling_matrix_transpose
- Scripts/Packaging
- Tools
- ROCgdb
- rocprof-compute
- rocprof-systems
- rocprofv3
- Tutorials
- reduction
- benchmark
- example
- test
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
107 | 107 | | |
108 | 108 | | |
109 | 109 | | |
110 | | - | |
| 110 | + | |
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| 32 | + | |
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
| 37 | + | |
52 | 38 | | |
53 | 39 | | |
54 | 40 | | |
| |||
57 | 43 | | |
58 | 44 | | |
59 | 45 | | |
60 | | - | |
| 46 | + | |
61 | 47 | | |
62 | 48 | | |
63 | 49 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
| 29 | + | |
| 30 | + | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
| 37 | + | |
52 | 38 | | |
53 | 39 | | |
54 | 40 | | |
| |||
57 | 43 | | |
58 | 44 | | |
59 | 45 | | |
60 | | - | |
| 46 | + | |
61 | 47 | | |
62 | 48 | | |
63 | 49 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
| 29 | + | |
| 30 | + | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
| 38 | + | |
53 | 39 | | |
54 | 40 | | |
55 | 41 | | |
| |||
58 | 44 | | |
59 | 45 | | |
60 | 46 | | |
61 | | - | |
| 47 | + | |
62 | 48 | | |
63 | 49 | | |
64 | 50 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
| 29 | + | |
| 30 | + | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
| 37 | + | |
52 | 38 | | |
53 | 39 | | |
54 | 40 | | |
| |||
57 | 43 | | |
58 | 44 | | |
59 | 45 | | |
60 | | - | |
| 46 | + | |
61 | 47 | | |
62 | 48 | | |
63 | 49 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
| 29 | + | |
| 30 | + | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
0 commit comments