@@ -20,6 +20,10 @@ register_flag_optional(NVHPC_OFFLOAD
20
20
ccnative - Compiles for compute capability of current device"
21
21
"" )
22
22
23
+ register_flag_optional(NVHPC_MULTICORE
24
+ "Enable multicore parallelization with the NVHPC SDK."
25
+ "" )
26
+
23
27
register_flag_optional(ACPP_OFFLOAD
24
28
"Enable offloading support (via the non-standard `-acpp-stdpar`) for AdaptiveCpp."
25
29
"OFF" )
@@ -76,7 +80,14 @@ macro(setup)
76
80
# propagate flags to linker so that it links with the gpu stuff as well
77
81
register_append_cxx_flags(ANY ${NVHPC_FLAGS} )
78
82
register_append_link_flags(${NVHPC_FLAGS} )
83
+ endif ()
84
+ if (NVHPC_MULTICORE)
85
+ set (NVHPC_FLAGS -stdpar=multicore)
86
+ # propagate flags to linker so that it links with the gpu stuff as well
87
+ register_append_cxx_flags(ANY ${NVHPC_FLAGS} )
88
+ register_append_link_flags(${NVHPC_FLAGS} )
79
89
endif ()
90
+
80
91
if (ACPP_OFFLOAD)
81
92
set (ACPP_FLAGS --acpp-stdpar)
82
93
register_append_cxx_flags(ANY ${ACPP_FLAGS} )
@@ -95,10 +106,9 @@ macro(setup)
95
106
endif ()
96
107
if (AMDGPU_TARGET_OFFLOAD)
97
108
set (AMDGPU_TARGET_OFFLOAD_FLAGS --hipstdpar --offload-arch=${AMDGPU_TARGET_OFFLOAD} )
98
- if (NOT AMDGPU_TARGET_OFFLOAD MATCHES "^gfx9" )
109
+ if (NOT AMDGPU_TARGET_OFFLOAD MATCHES "^gfx9" OR AMDGPU_INTERPOSE_ALLOC )
99
110
list (APPEND AMDGPU_TARGET_OFFLOAD_FLAGS --hipstdpar-interpose-alloc)
100
111
endif ()
101
-
102
112
register_append_cxx_flags(ANY ${AMDGPU_TARGET_OFFLOAD_FLAGS} )
103
113
register_append_link_flags(--hipstdpar)
104
114
endif ()
0 commit comments