SWDEV-244798
If {src/dst} ptr is marked as hipMemoryTypeHost, check if the memory was
prepinned. If it was, upgrade the copy type to hipMemoryTypeDevice to
avoid extra pinning.
Change-Id: Id287ef5b14ae67dfbcf80c4caa1b08a311191948
[ROCm/hip commit: ed26013ec1]
When HIP_ENABLE_DEFERRED_LOADING=0, many global variables will be
referenced but they are not initialized in that early time. The patch
will use constexpr to initialze global constant varables in compile
time.
Change-Id: I9837c42e6bab38a894ece4e0f34b64f81b38fef0
[ROCm/hip commit: 78f9a70578]
hipSetDevice is not used correctly to allocate on multiple devices in mGPU setup.
Due to which hipMalloc was called on the same device on multiple threads leading to out of memory issues on some devices with lesser memory.
Change-Id: I0e5b1bc028b9ecb11bd40c3a5edf715f8bd721ff
[ROCm/hip commit: 8fc4d64d2a]
Hip applications assume that hipEventRecord called from multiple
threads will contain exactly the last queued command to the stream.
Change-Id: I1da3259f143d7670d0870d9a47c08e32336b2222
[ROCm/hip commit: d491dbd796]
Since the introduction of BUILD_SHARED_LIBS there is only one target created : libamdhip64
Which is static ( libamdhip64.a ) or Dynamic ( libamdhip64.so ) depending on whichever it is
being compiled for. After this change we do not have any target libamdhip64_static which is
mentioned in the hipcc for linking. Hence cleaning the same.
Change-Id: Ia45c145e17b111b3f6a32299a11962b10f1cc539
[ROCm/hip commit: 9f3cf75713]
JIRA : SWDEV-234471
With this change compilation of the ibamdhip64 to be decied by arguments to build_hip_on_rocclr.sh file
build_hip_on_rocclr.sh -r (current) shall conitnue to create libamdhip64.so;
build_hip_on_rocclr.sh -r a (new) shall create libamdhip64.a
other options remain the same
Changed the targets according to requirement of stage2 dependencies.
Changed find_lib with find_package
Adpated the review comments
Change-Id: I719918f73ab33cd8031a32db6fe9b8adaa1b4b87
[ROCm/hip commit: ab88cbbb8a]
Tests heq2, hne2, hle2, hge2, hlt2, hgt2 APIs for functionality
and NaN tests
SWDEV-238517 for enhancing hip unit tests
Change-Id: I88a9a8ead0d00a1261f3d650361d655f2f397e48
[ROCm/hip commit: e590f20cbd]
Host memory allocations use shared device context, which allows
to have access from any device. That breaks default queue detection.
Change-Id: I27ad1234d49ab0ea8f5edd6f2e3ffa93c47d4b1f
[ROCm/hip commit: b9b982247e]
-Scenario-1:: This test case is used to verify if the callback function
called through hipStreamAddCallback() api completes the
execution in order as hipStreamAddCallback() api queued
in their respective streams: hipStreamACb_AltEnqueue.cpp
-Scenario-2:: This test case tests if Host thread continues with next
command after hipStreamAddCallback() api or wait for
callback() call to finish. Ideally Host thread should not
wait for callback to
finish: hipStreamACb_ThrdBehaviour.cpp
-Scenario-3:: Streams are launched in individual GPUs with different
kernel Verify that all the kernels queued are executed
before the callback is hit: hipStreamACb_MStrm_Mgpu.cpp
-Scenario-4:: Checks the callback execution in the same order it was
added. Also, it checks if the number of callbacks
executed are same as the number of callbacks added:
hipStreamACb_order.cpp
-Scenario-5:: This test case checks whether hipStreamSynchronize() is
taking less time than the time taken by Callback()
function launched by hipStreamAddCallback() api :
hipStreamACb_StrmSyncTiming.cpp
-Scenario-6:: This test case is used to check if the runtime is ok when
hipStreamAddCallback() is called back to back multiple
calls: hipStreamACb_MultiCalls.cpp
-Scenario-7:: This test case is used to check the behaviour of HIP when
multiple hipStreaAddCallback() are called over multiple
Threads:hipStreamACb_MultiThread.cpp
(Currently disabled)
SWDEV-238517 for enhancing hip unit tests
Change-Id: I9c7b7df6766c728b2b201df18726b9fbdd434c06
[ROCm/hip commit: d613d1d58b]
This makes hipLaunchKernelGGL take a variable argument list, that will be
expanded before being fed to hipLaunchKernelGGLInternal.
This is different from b2edee4693.
We try to accomodate the case when a kernel template has multiple
type parameters.
Change-Id: I87577d402c92b0f3b51e298f8293f4065e1f6de8
[ROCm/hip commit: affe9ab9b5]
1.hipMemcpyWithStream with one stream
2.hipMemcpyWithStream with two streams
3.hipMemcpyWithStream multiGPU with one stream
4.hipMemcpyWithStream with kind DtoH
5.hipMemcpyWithStream with HtoH
6.hipMemcpyWithStream with DtoD
7.hipMemcpyWithStream with Default kind
8.hipMemcpyWithStream with Default kind on same device
9.hipMemcpyWithStream with DtoD on same device
SWDEV-238517 for enhancing hip unit tests
Change-Id: I5f55a12bdd7c8d28fcb06db94a491c2ad5ee3004
[ROCm/hip commit: 32a6e854b7]