This test does not work if block size is greater than wave size
since it relies on lock-step execution of the kernel in the block.
If there are more than waves in the block, the threads in the block
miss synchronization since one wave may finish before another wave.
Due to this bug, the test fails on GFX10 wave32 mode.
This patch fixes that so that it works for block size greater than
wave size.
Change-Id: Ie0097066081df36cb6fe025a71d0ee5a83ec00a2
[ROCm/clr commit: 4c4fff6b51]
also validate the flag argument passed to hipIpcOpenMemHandle API and return
error if it is not equal to "hipIpcMemLazyEnablePeerAccess" (defined to 0)
and it is the only supported flag currenlty for this API.
SWDEV-253462
Change-Id: Ie1c8b79c680a29dc72bf262cf53ae5e011fb1247
[ROCm/clr commit: 89964dbbd4]
APIs: hipModuleLoad, hipModuleLoadData and hipModuleLoadDataEx,
hipModuleGetGlobal(), hipModuleGetFunction
Functional and negative tests
Repeated call to ModuleLoadXX/ModuleUnloadXX
Few tests are disabled now, will be enabled when functional
SWDEV-238517 for enhancing hip unit tests
Change-Id: I65c12027e32db80213468fdee1c5cc1aa3e60bfd
[ROCm/clr commit: 4f48154f46]
Check for rocm_agent_enumerator instead of rocminfo or
.info/version.
Change-Id: I1718bd4f70b3e527ea3afe19c1a685ab7ed70808
[ROCm/clr commit: 5a46d80682]
The device side assertion calls printf to write out a message. In the
device compiler, printf is expanded into a series of hostcalls that
transmit the printf payload to the host. This expansion increases the
length of the kernel, resulting in sub-optimal compilation. The
solution is to ensure that the assert() implementation is not inlined
into the kernel.
Change-Id: Ia3a075461a755cf007218f262b0863e1926c76aa
[ROCm/clr commit: 160dfb5a1f]
hipStreamDestroy() by definition doesn't guarantee waiting for all stream operations.
Change-Id: Ibfd21c48d71741ebcbcb9898c8b5ac235bdc570b
[ROCm/clr commit: f2c2fd3d09]
Add extra API calls for managed memory: hipMemAdvise, hipMemPrefetchAsync,
hipMemRangeGetAttribute
Change-Id: Ifb09744acdf7582d278453707373c89c30e3ed03
[ROCm/clr commit: 4ee6d78763]
Positive and negative test cases for atomicAdd and
AtomicAddnoRet device functions
SWDEV-238517 for enhancing hip unit tests
Change-Id: Id20ba2550d20f224004f105cdcd087002cb80e56
[ROCm/clr commit: 00d46218b7]
Additional tests for following APIs
- hipOccupancyMaxActiveBlocksPerMultiprocessor
- hipOccupancyMaxPotentialBlockSize
SWDEV-238517 for enhancing hip unit tests
Change-Id: Ib9441c1366f46a082e10eb1a572bc7d8ebe1ee37
[ROCm/clr commit: 4eb65d58dd]
Currently all the logic checks if __HIP_ENABLE_PCH is set, so setting it
to OFF will still enable PCH.
Switching __HIP_ENABLE_PCH to be a CMake option will enable correct
build behaviour.
Change-Id: I77a663589ffb5f2595c6ad3d144eb9466adcf250
[ROCm/clr commit: 8034467ec3]
Unit testing of CG threadRank api in multi-grid environment requires
some changes as grid id of particular device is not known apriori.
Change-Id: Ie7941a09337653f3ada5eedfb7c64a93a234498b
[ROCm/clr commit: 9c86cdb89d]
- Matching the output "hipcc --version" for Installed directory
to get the llvm compiler path, wasnt done properly.
- Adding fallback for HIP_CLANG_ROOT on ROCM_PATH if defined in env
- Changed the mode of get_filename_component to DIRECTORY
Signed-off-by: Pruthvi Madugundu <pruthvi.madugundu@amd.com>
Change-Id: Ia38e234f34cabb5b419906c7094b327083292b0e
[ROCm/clr commit: 5f667bf4e8]
[background] There is currently a compilation issue when both hip/hip_runtime.h and hip/hip_cooperative_groups.h included
in a file and hipcc used to compile it on NV platform. The issue is that an abort is defined in hip/nvcc_detail/hip_runtime.h
and it is also defined in the CUDA cooperative groups header (/cuda/include/cooperative_groups/details/helpers.h).
this is problematic and leads to a compilation issue in hipcc on NV platform.
Change-Id: I2ab6982ac4103822a1a4a0ced942cd604d6c19c1
[ROCm/clr commit: 35a3304acc]
The static members __HIP_Coordinates::x, ::y and ::z must be defined
outside the class. Otherwise, linker throws `undefined reference error`
when these definitions are needed in the HIP application.
Change-Id: Iabc09744b478c22e4b13cf9824877ec9cfdd4f7a
[ROCm/clr commit: 9b6d26f8b2]