SWDEV-454316 - Fix for Atomic Min Max Testcases
Change-Id: Ieca965e6e17f4b17769938228340791b9bbe45ab
[ROCm/hip-tests commit: 0c230d3cf0]
This commit is contained in:
committad av
Rahul Manocha
förälder
66a1b8d8e4
incheckning
572eb13c5c
@@ -222,12 +222,6 @@
|
||||
"Unit_hipExtModuleLaunchKernel_Negative_Parameters",
|
||||
"Unit_hipLaunchKernel_Negative_Parameters",
|
||||
"Unit_Device_modf_modff_Negative_RTC",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - double",
|
||||
"SWDEV-446588 - Disable graph multi gpu testcases until graph has support for it",
|
||||
"Unit_hipGraphExecUpdate_Negative_MultiDevice_Context_Changed",
|
||||
"Unit_hipGraphMem_Alloc_Free_NodeGetParams_Functional_MultiDevice",
|
||||
@@ -247,206 +241,8 @@
|
||||
"Unit_atomicAnd_Negative_Parameters_RTC",
|
||||
"Unit_atomicOr_Negative_Parameters_RTC",
|
||||
"Unit_atomicXor_Negative_Parameters_RTC",
|
||||
"Unit_atomicMin_Positive_SameAddress - int",
|
||||
"Unit_atomicMin_Positive_SameAddress - unsigned int",
|
||||
"Unit_atomicMin_Positive_SameAddress - unsigned long",
|
||||
"Unit_atomicMin_Positive_SameAddress - unsigned long long",
|
||||
"Unit_atomicMin_Positive_SameAddress - float",
|
||||
"Unit_atomicMin_Positive_SameAddress - double",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - double",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - double",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - unsigned int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - unsigned long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_atomicMin_Negative_Parameters_RTC",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Same_Address - float",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Same_Address - double",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Adjacent_Addresses - int",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Adjacent_Addresses - float",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Adjacent_Addresses - double",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Scattered_Addresses - int",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Scattered_Addresses - float",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Scattered_Addresses - double",
|
||||
"Unit_atomicMax_Positive_SameAddress - int",
|
||||
"Unit_atomicMax_Positive_SameAddress - unsigned int",
|
||||
"Unit_atomicMax_Positive_SameAddress - unsigned long",
|
||||
"Unit_atomicMax_Positive_SameAddress - unsigned long long",
|
||||
"Unit_atomicMax_Positive_SameAddress - double",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - double",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - double",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - unsigned int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - unsigned long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_atomicMax_Negative_Parameters_RTC",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Same_Address - float",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Same_Address - double",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Adjacent_Addresses - int",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Adjacent_Addresses - float",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Adjacent_Addresses - double",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Scattered_Addresses - int",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Scattered_Addresses - float",
|
||||
"Unit_atomicMax_system_Positive_Peer_GPUs_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_SameAddress - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_SameAddress - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - double",
|
||||
"Unit_Kernel_Launch_bounds_Negative_OutOfBounds",
|
||||
"Unit_Kernel_Launch_bounds_Negative_Parameters_RTC",
|
||||
"Unit___threadfence_block_Positive_Basic_Peer",
|
||||
@@ -1059,6 +855,10 @@
|
||||
"Unit_safeAtomicMin_Positive_SameAddress - float",
|
||||
"=== SWDEV-454220 : Below test hanged in stress test on 22/03/24 ===",
|
||||
"Unit_hipExtLaunchKernel_Positive_Basic",
|
||||
"=== SWDEV-454316 : Below tests fail in stress test ===",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Same_Address - float",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Same_Address - double",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Same_Address - float",
|
||||
#endif
|
||||
#if defined gfx1030
|
||||
"=== SWDEV-445961: These tests hang in PSDB stress test on 09/02/2024 ===",
|
||||
|
||||
@@ -736,171 +736,8 @@
|
||||
"Unit_atomicAnd_Negative_Parameters_RTC",
|
||||
"Unit_atomicOr_Negative_Parameters_RTC",
|
||||
"Unit_atomicXor_Negative_Parameters_RTC",
|
||||
"Unit_atomicMin_Positive_SameAddress - int",
|
||||
"Unit_atomicMin_Positive_SameAddress - unsigned int",
|
||||
"Unit_atomicMin_Positive_SameAddress - unsigned long",
|
||||
"Unit_atomicMin_Positive_SameAddress - unsigned long long",
|
||||
"Unit_atomicMin_Positive_SameAddress - float",
|
||||
"Unit_atomicMin_Positive_SameAddress - double",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Adjacent_Addresses - double",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Scattered_Addresses - double",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - unsigned int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - unsigned long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - float",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Same_Address - double",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_atomicMin_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_atomicMin_Negative_Parameters_RTC",
|
||||
"Unit_atomicMax_Positive_SameAddress - int",
|
||||
"Unit_atomicMax_Positive_SameAddress - unsigned int",
|
||||
"Unit_atomicMax_Positive_SameAddress - unsigned long",
|
||||
"Unit_atomicMax_Positive_SameAddress - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Adjacent_Addresses - double",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Scattered_Addresses - double",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - unsigned int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - unsigned long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Same_Address - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - unsigned int",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - unsigned long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - unsigned long long",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_atomicMax_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_atomicMax_Negative_Parameters_RTC",
|
||||
"Unit_safeAtomicMin_Positive_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMin_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Scattered_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Scattered_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Adjacent_Addresses - double",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - float",
|
||||
"Unit_unsafeAtomicMax_Positive_Multi_Kernel_Scattered_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Wavefront_Scattered_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_min_Positive_Workgroup_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Wavefront_Scattered_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_SameAddress - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Adjacent_Addresses - double",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - unsigned int",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - unsigned long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - unsigned long long",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - float",
|
||||
"Unit___hip_atomic_fetch_max_Positive_Workgroup_Scattered_Addresses - double",
|
||||
"=== Below tests cause timeout in stress test of 09/02/24 ===",
|
||||
"Unit_Device___half2half2_Accuracy_Positive",
|
||||
"Unit_Device_make_half2_Accuracy_Positive",
|
||||
@@ -1127,6 +964,10 @@
|
||||
"Unit_Coalesced_Group_Tiled_Partition_Shfl_Down_Positive_Basic - unsigned long long",
|
||||
"Unit_Coalesced_Group_Tiled_Partition_Shfl_Down_Positive_Basic - float",
|
||||
"Unit_Coalesced_Group_Tiled_Partition_Shfl_Down_Positive_Basic - double",
|
||||
"=== SWDEV-454316 : Below tests fail in stress test ===",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Same_Address - float",
|
||||
"Unit_atomicMin_system_Positive_Peer_GPUs_Same_Address - double",
|
||||
"Unit_safeAtomicMax_Positive_Multi_Kernel_Same_Address - float",
|
||||
"=== SWDEV-475482 - Disable tests to merge clr change",
|
||||
"Unit_hipCreateTextureObject_LinearResource",
|
||||
"Unit_hipCreateTextureObject_Pitch2DResource",
|
||||
|
||||
@@ -142,7 +142,7 @@ __global__ void TestKernel(TestType* const global_mem, TestType* const old_vals,
|
||||
__syncthreads();
|
||||
}
|
||||
|
||||
const auto n = cooperative_groups::this_grid().size() - width;
|
||||
const auto n = cooperative_groups::this_grid().size();
|
||||
|
||||
TestType* atomic_addr = PitchedOffset(mem, pitch, tid % width);
|
||||
|
||||
@@ -182,31 +182,34 @@ struct TestParams {
|
||||
template <typename TestType, AtomicOperation operation>
|
||||
std::tuple<std::vector<TestType>, std::vector<TestType>> TestKernelHostRef(const TestParams& p) {
|
||||
const auto val = GetTestValue<TestType, operation>();
|
||||
|
||||
const auto thread_count_per_kernel = p.ThreadCount();
|
||||
const auto thread_count = p.num_devices * p.kernel_count * p.ThreadCount();
|
||||
|
||||
TestType test_value =
|
||||
std::is_floating_point_v<TestType> ? kFloatingPointTestValue : kIntegerTestValue;
|
||||
|
||||
std::vector<TestType> res_vals(p.width, test_value);
|
||||
std::vector<TestType> res_vals(p.num_devices * p.width, test_value);
|
||||
std::vector<TestType> old_vals;
|
||||
old_vals.reserve(thread_count);
|
||||
for (auto i = 0u; i < p.num_devices; ++i) {
|
||||
for (auto j = 0u; j < p.kernel_count; ++j) {
|
||||
for (auto tid = 0u; tid < thread_count_per_kernel; ++tid) {
|
||||
auto& res = res_vals[tid % p.width + (i * p.width)];
|
||||
old_vals.push_back(res);
|
||||
|
||||
for (auto tid = 0u; tid < thread_count; ++tid) {
|
||||
auto& res = res_vals[tid % p.width];
|
||||
old_vals.push_back(res);
|
||||
|
||||
if constexpr (operation == AtomicOperation::kMin || operation == AtomicOperation::kMinSystem ||
|
||||
if constexpr (operation == AtomicOperation::kMin || operation == AtomicOperation::kMinSystem ||
|
||||
operation == AtomicOperation::kUnsafeMin ||
|
||||
operation == AtomicOperation::kSafeMin ||
|
||||
operation == AtomicOperation::kBuiltinMin) {
|
||||
res = std::min(res, val);
|
||||
} else if constexpr (operation == AtomicOperation::kMax ||
|
||||
res = std::min(res, val);
|
||||
} else if constexpr (operation == AtomicOperation::kMax ||
|
||||
operation == AtomicOperation::kMaxSystem ||
|
||||
operation == AtomicOperation::kUnsafeMax ||
|
||||
operation == AtomicOperation::kSafeMax ||
|
||||
operation == AtomicOperation::kBuiltinMax) {
|
||||
res = std::max(res, val);
|
||||
res = std::max(res, val);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -246,8 +249,12 @@ void LaunchKernel(const TestParams& p, hipStream_t stream, TestType* const mem_p
|
||||
template <typename TestType, AtomicOperation operation, bool use_shared_mem,
|
||||
int memory_scope = __HIP_MEMORY_SCOPE_AGENT>
|
||||
void TestCore(const TestParams& p) {
|
||||
|
||||
// Device Memory Allocation
|
||||
const auto old_vals_alloc_size = p.kernel_count * p.ThreadCount() * sizeof(TestType);
|
||||
const auto mem_alloc_size = p.width * p.pitch;
|
||||
std::vector<LinearAllocGuard<TestType>> old_vals_devs;
|
||||
std::vector<LinearAllocGuard<TestType>> mem_devs;
|
||||
std::vector<StreamGuard> streams;
|
||||
for (auto i = 0; i < p.num_devices; ++i) {
|
||||
HIP_CHECK(hipSetDevice(i));
|
||||
@@ -255,40 +262,43 @@ void TestCore(const TestParams& p) {
|
||||
for (auto j = 0; j < p.kernel_count; ++j) {
|
||||
streams.emplace_back(Streams::created);
|
||||
}
|
||||
mem_devs.emplace_back(p.alloc_type, mem_alloc_size);
|
||||
}
|
||||
|
||||
const auto mem_alloc_size = p.width * p.pitch;
|
||||
LinearAllocGuard<TestType> mem_dev(p.alloc_type, mem_alloc_size);
|
||||
|
||||
// Host Memory
|
||||
std::vector<TestType> old_vals(p.num_devices * p.kernel_count * p.ThreadCount());
|
||||
std::vector<TestType> res_vals(p.width);
|
||||
|
||||
TestType* const mem_ptr =
|
||||
p.alloc_type == LinearAllocs::hipMalloc ? mem_dev.ptr() : mem_dev.host_ptr();
|
||||
std::vector<TestType> res_vals(p.num_devices * p.width);
|
||||
|
||||
// Initialize Device Memory
|
||||
TestType test_value =
|
||||
std::is_floating_point_v<TestType> ? kFloatingPointTestValue : kIntegerTestValue;
|
||||
HIP_CHECK(hipMemset(mem_ptr, 0, mem_alloc_size));
|
||||
for (int i = 0; i < p.width * p.pitch / sizeof(TestType); ++i) {
|
||||
HIP_CHECK(hipMemcpy(&mem_ptr[i], &test_value, sizeof(TestType), hipMemcpyHostToDevice));
|
||||
for (auto i = 0u; i < p.num_devices; ++i) {
|
||||
TestType* const mem_ptr =
|
||||
p.alloc_type == LinearAllocs::hipMalloc ? mem_devs[i].ptr() : mem_devs[i].host_ptr();
|
||||
HIP_CHECK(hipMemset(mem_ptr, 0, mem_alloc_size));
|
||||
for (int i = 0; i < p.width * p.pitch / sizeof(TestType); ++i) {
|
||||
HIP_CHECK(hipMemcpy(&mem_ptr[i], &test_value, sizeof(TestType), hipMemcpyHostToDevice));
|
||||
}
|
||||
}
|
||||
|
||||
// Launch kernel
|
||||
for (auto i = 0u; i < p.num_devices; ++i) {
|
||||
for (auto j = 0u; j < p.kernel_count; ++j) {
|
||||
const auto& stream = streams[i * p.kernel_count + j].stream();
|
||||
const auto old_vals = old_vals_devs[i].ptr() + j * p.ThreadCount();
|
||||
LaunchKernel<TestType, operation, use_shared_mem, memory_scope>(p, stream, mem_dev.ptr(),
|
||||
LaunchKernel<TestType, operation, use_shared_mem, memory_scope>(p, stream, mem_devs[i].ptr(),
|
||||
old_vals);
|
||||
}
|
||||
}
|
||||
|
||||
// Copy Results back to Host
|
||||
for (auto i = 0u; i < p.num_devices; ++i) {
|
||||
const auto device_offset = i * p.kernel_count * p.ThreadCount();
|
||||
HIP_CHECK(hipMemcpy(old_vals.data() + device_offset, old_vals_devs[i].ptr(),
|
||||
old_vals_alloc_size, hipMemcpyDeviceToHost));
|
||||
HIP_CHECK(hipMemcpy2D(res_vals.data() + i*p.width, sizeof(TestType), mem_devs[i].ptr(),
|
||||
p.pitch, sizeof(TestType), p.width, hipMemcpyDeviceToHost));
|
||||
}
|
||||
HIP_CHECK(hipMemcpy2D(res_vals.data(), sizeof(TestType), mem_ptr, p.pitch, sizeof(TestType),
|
||||
p.width, hipMemcpyDeviceToHost));
|
||||
|
||||
Verify<TestType, operation>(p, res_vals, old_vals);
|
||||
}
|
||||
@@ -298,7 +308,7 @@ inline dim3 GenerateThreadDimensions() { return GENERATE(dim3(16), dim3(1024));
|
||||
inline dim3 GenerateBlockDimensions() {
|
||||
int sm_count = 0;
|
||||
HIP_CHECK(hipDeviceGetAttribute(&sm_count, hipDeviceAttributeMultiprocessorCount, 0));
|
||||
return GENERATE_COPY(dim3(sm_count), dim3(sm_count + sm_count / 2));
|
||||
return dim3(sm_count);
|
||||
}
|
||||
|
||||
template <typename TestType, AtomicOperation operation, int memory_scope = __HIP_MEMORY_SCOPE_AGENT>
|
||||
@@ -334,19 +344,20 @@ void SingleDeviceSingleKernelTest(const unsigned int width, const unsigned int p
|
||||
}
|
||||
using LA = LinearAllocs;
|
||||
for (const auto alloc_type :
|
||||
{LA::hipMalloc, LA::hipHostMalloc, LA::hipMallocManaged, LA::mallocAndRegister}) {
|
||||
{LA::hipMalloc}) {
|
||||
params.alloc_type = alloc_type;
|
||||
DYNAMIC_SECTION("Allocation type: " << to_string(alloc_type)) {
|
||||
TestCore<TestType, operation, false>(params);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef __linux__
|
||||
SECTION("Shared memory") {
|
||||
params.blocks = dim3(1);
|
||||
params.alloc_type = LinearAllocs::hipMalloc;
|
||||
TestCore<TestType, operation, true>(params);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
template <typename TestType, AtomicOperation operation>
|
||||
@@ -369,7 +380,7 @@ void SingleDeviceMultipleKernelTest(const unsigned int kernel_count, const unsig
|
||||
|
||||
using LA = LinearAllocs;
|
||||
for (const auto alloc_type :
|
||||
{LA::hipMalloc, LA::hipHostMalloc, LA::hipMallocManaged, LA::mallocAndRegister}) {
|
||||
{LA::hipMalloc}) {
|
||||
params.alloc_type = alloc_type;
|
||||
DYNAMIC_SECTION("Allocation type: " << to_string(alloc_type)) {
|
||||
TestCore<TestType, operation, false>(params);
|
||||
@@ -409,12 +420,11 @@ void MultipleDeviceMultipleKernelTest(const unsigned int num_devices,
|
||||
params.pitch = pitch;
|
||||
|
||||
using LA = LinearAllocs;
|
||||
for (const auto alloc_type : {LA::hipHostMalloc, LA::hipMallocManaged, LA::mallocAndRegister}) {
|
||||
for (const auto alloc_type : {LA::hipHostMalloc}) {
|
||||
params.alloc_type = alloc_type;
|
||||
DYNAMIC_SECTION("Allocation type: " << to_string(alloc_type)) {
|
||||
TestCore<TestType, operation, false, __HIP_MEMORY_SCOPE_SYSTEM>(params);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace MinMax
|
||||
|
||||
Referens i nytt ärende
Block a user