Skip to content

Commit e57ccf8

Browse files
Use target aliases and clean up HIP configuration
1 parent 54f44cd commit e57ccf8

File tree

4 files changed

+18
-31
lines changed

4 files changed

+18
-31
lines changed

CMakeLists.txt

Lines changed: 12 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,12 @@ option(DPNP_USE_ONEMKL_INTERFACES
7878
set(HIP_TARGETS "" CACHE STRING "HIP architecture for target")
7979

8080
set(_dpnp_sycl_targets)
81-
set(_dpnp_amd_targets)
8281
set(_use_onemkl_interfaces OFF)
8382
set(_use_onemkl_interfaces_cuda OFF)
8483
set(_use_onemkl_interfaces_hip OFF)
8584

8685
set(_dpnp_sycl_target_compile_options)
8786
set(_dpnp_sycl_target_link_options)
88-
set(_dpnp_sycl_mkl_target_compile_options)
89-
set(_dpnp_sycl_mkl_target_link_options)
9087

9188
if ("x${DPNP_SYCL_TARGETS}" STREQUAL "x")
9289
if(DPNP_TARGET_CUDA)
@@ -95,53 +92,43 @@ if ("x${DPNP_SYCL_TARGETS}" STREQUAL "x")
9592
endif()
9693

9794
if (NOT "x${HIP_TARGETS}" STREQUAL "x")
98-
set(_dpnp_amd_targets ${HIP_TARGETS})
9995
set(_use_onemkl_interfaces_hip ON)
10096

10197
if ("x${_dpnp_sycl_targets}" STREQUAL "x")
102-
set(_dpnp_sycl_targets "amdgcn-amd-amdhsa,spir64-unknown-unknown")
98+
set(_dpnp_sycl_targets "amd_gpu_${HIP_TARGETS},spir64-unknown-unknown")
10399
else()
104-
set(_dpnp_sycl_targets "amdgcn-amd-amdhsa,${_dpnp_sycl_targets}")
100+
set(_dpnp_sycl_targets "amd_gpu_${HIP_TARGETS},${_dpnp_sycl_targets}")
105101
endif()
106102
endif()
107103
else()
108104
set(_dpnp_sycl_targets ${DPNP_SYCL_TARGETS})
109105

110-
if (${DPNP_SYCL_TARGETS} MATCHES "nvptx64-nvidia-cuda")
106+
if ("${DPNP_SYCL_TARGETS}" MATCHES "nvptx64-nvidia-cuda")
111107
set(_use_onemkl_interfaces ON)
112108
set(_use_onemkl_interfaces_cuda ON)
113109
endif()
114110

115-
if (${DPNP_SYCL_TARGETS} MATCHES "amdgcn-amd-amdhsa")
111+
if ("${DPNP_SYCL_TARGETS}" MATCHES "amd_gpu_")
116112
set(_use_onemkl_interfaces ON)
117113
set(_use_onemkl_interfaces_hip ON)
118114

119-
if (NOT "x${HIP_TARGETS}" STREQUAL "x")
120-
set(_dpnp_amd_targets ${HIP_TARGETS})
121-
else()
115+
if ("x${HIP_TARGETS}" STREQUAL "x")
122116
message(FATAL_ERROR "HIP_TARGETS must be specified when using HIP backend")
123117
endif()
124118
endif()
119+
120+
if ("${DPNP_SYCL_TARGETS}" MATCHES "amdgcn-amd-amdhsa")
121+
message(FATAL_ERROR
122+
"Legacy target 'amdgcn-amd-amdhsa' is not supported. "
123+
"Use alias form 'amd_gpu_<arch>' instead"
124+
)
125+
endif()
125126
endif()
126127

127128
if (_dpnp_sycl_targets)
128129
message(STATUS "Compiling for -fsycl-targets=${_dpnp_sycl_targets}")
129130
list(APPEND _dpnp_sycl_target_compile_options -fsycl-targets=${_dpnp_sycl_targets})
130131
list(APPEND _dpnp_sycl_target_link_options -fsycl-targets=${_dpnp_sycl_targets})
131-
list(APPEND _dpnp_sycl_mkl_target_compile_options -fsycl-targets=${_dpnp_sycl_targets})
132-
list(APPEND _dpnp_sycl_mkl_target_link_options -fsycl-targets=${_dpnp_sycl_targets})
133-
if(_dpnp_amd_targets)
134-
set(_dpnp_hip_compile_options -Xsycl-target-backend=amdgcn-amd-amdhsa --offload-arch=${_dpnp_amd_targets})
135-
set(_dpnp_hip_mkl_compile_options -Xsycl-target-backend --offload-arch=${_dpnp_amd_targets})
136-
137-
# Append HIP-specific flags for general SYCL modules
138-
list(APPEND _dpnp_sycl_target_compile_options ${_dpnp_hip_compile_options})
139-
list(APPEND _dpnp_sycl_target_link_options ${_dpnp_hip_compile_options})
140-
141-
# Append HIP-specific flags for MKL modules
142-
list(APPEND _dpnp_sycl_mkl_target_compile_options -fsycl-unnamed-lambda ${_dpnp_hip_mkl_compile_options})
143-
list(APPEND _dpnp_sycl_mkl_target_link_options ${_dpnp_hip_mkl_compile_options})
144-
endif()
145132
endif()
146133

147134
if(DPNP_USE_ONEMKL_INTERFACES)

dpnp/backend/extensions/blas/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ if(_dpnp_sycl_targets)
4040
target_compile_options(
4141
${python_module_name}
4242
PRIVATE
43-
${_dpnp_sycl_mkl_target_compile_options}
43+
${_dpnp_sycl_target_compile_options}
4444
)
4545
target_link_options(
4646
${python_module_name}
4747
PRIVATE
48-
${_dpnp_sycl_mkl_target_link_options}
48+
${_dpnp_sycl_target_link_options}
4949
)
5050
endif()
5151

dpnp/backend/extensions/fft/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,12 @@ if(_dpnp_sycl_targets)
3737
target_compile_options(
3838
${python_module_name}
3939
PRIVATE
40-
${_dpnp_sycl_mkl_target_compile_options}
40+
${_dpnp_sycl_target_compile_options}
4141
)
4242
target_link_options(
4343
${python_module_name}
4444
PRIVATE
45-
${_dpnp_sycl_mkl_target_link_options}
45+
${_dpnp_sycl_target_link_options}
4646
)
4747
endif()
4848

dpnp/backend/extensions/lapack/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,12 @@ if(_dpnp_sycl_targets)
5757
target_compile_options(
5858
${python_module_name}
5959
PRIVATE
60-
${_dpnp_sycl_mkl_target_compile_options}
60+
${_dpnp_sycl_target_compile_options}
6161
)
6262
target_link_options(
6363
${python_module_name}
6464
PRIVATE
65-
${_dpnp_sycl_mkl_target_link_options}
65+
${_dpnp_sycl_target_link_options}
6666
)
6767
endif()
6868

0 commit comments

Comments
 (0)