sushantkumar14
985e113fdb
[dtest] Added hipStreamGetPriority API test
...
SWDEV-238517 for enhancing hip unit tests
Change-Id: Icff175360815ba6e25a6954a67947b65caff3711
[ROCm/clr commit: 2dc42154c4 ]
2020-07-09 01:59:44 -04:00
Lakhan singh Thakur
4bf371401d
[dtest] Enhancing hipStreamAddCallback() api test
...
-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/clr commit: 18f8b15523 ]
2020-07-07 00:43:32 -04:00
Christophe Paquot
4206cfddc5
Do not deferred stream creation now that we multiplex HW queues
...
SWDEV-239856
Change-Id: I156650faf832f86891f00ee167269509edd844ec
[ROCm/clr commit: 20ae4d709f ]
2020-06-09 19:16:25 -04:00
Payam
8bdf07bb9c
Observed softhang while running hipStreamAddCallbackCatch SWDEV-236746
...
Workaround hipStream deadlock issue as the same lock was used twice SWDEV-236746
Change-Id: Icc60104ce6edf4cfd2a3a889bab78a6caadd50b7
[ROCm/clr commit: f3ee29cdb2 ]
2020-06-04 14:11:22 -04:00
Aryan Salmanpour
5aec64346f
[dtest] add a multi stream test for (SWDEV-237846)
...
Change-Id: I4a1d764df75af7019d0f38313e5e0a6a224818f8
[ROCm/clr commit: 200ab30084 ]
2020-05-28 23:36:10 -04:00
Aryan Salmanpour
71d0954669
[dtest] add a test for hipExtStreamCreateWithCUMask API
...
Change-Id: Ib567e559c5ab7d04ac5c300fd7e15eedfc4fb6e6
[ROCm/clr commit: c9b8a19ce0 ]
2020-05-26 18:15:09 -04:00
Payam
082b9e51ab
name change vdi to rocclr
...
Change-Id: I06d198bbb4a499e153b290b73a92afed3553b252
[ROCm/clr commit: dba0e72de2 ]
2020-05-06 09:14:30 -04:00
Maneesh Gupta
e5ee180568
Merge branch 'amd-master' into amd-master-next
...
Change-Id: I3094c15008093f2072bcd38aca4ea90aeae2d97b
[ROCm/clr commit: 0ea6697192 ]
2020-04-09 06:31:00 -04:00
Evgeny Mankov
d191980c6a
[HIP] Clean-up deprecated HIP error codes
...
hipErrorMemoryAllocation -> hipErrorOutOfMemory
hipErrorInitializationError -> hipErrorNotInitialized
hipErrorMapBufferObjectFailed -> hipErrorMapFailed
hipErrorInvalidResourceHandle -> hipErrorInvalidHandle
[ROCm/clr commit: 4aaa2336a8 ]
2019-12-23 17:01:35 +03:00
Sarbojit2019
2c00d66995
Revert [HIP] Fixed hipStreamAddCallback ( #1674 )
...
This reverts commit 4d0b7e65bb .
Addresses SWDEV#212675.
[ROCm/clr commit: 8a3c36a424 ]
2019-11-20 11:55:46 +05:30
Sarbojit2019
4d0b7e65bb
[HIP] Fixed hipStreamAddCallback [SWDEV#165185] ( #1425 )
...
Fixed hipStreamAddCallback() as requested in SWDEV#165185
Added unit test to test the behavior
[ROCm/clr commit: 97fca3439d ]
2019-11-07 13:18:12 +05:30
Maneesh Gupta
61833b948d
[dtests] Fix typo in hipAPIStreamDisable.cpp ( #1227 )
...
Change-Id: Ib88a6be49ba192578129bb88ad09817839981398
[ROCm/clr commit: d206d66dfe ]
2019-07-17 07:28:38 +00:00
Konstantin Pyzhov
05746f20e9
Disable hipStreamSync2 test for hip-clang.
...
[ROCm/clr commit: adf3b8774e ]
2019-05-20 02:13:30 -04:00
Maneesh Gupta
74110bbd43
[hit] Rename RUN -> TEST & RUN_NAMED -> TEST_NAMED
...
Change-Id: I75e24f15129973cee15fc9dac65d678bd2172074
[ROCm/clr commit: 53dd1df3fa ]
2019-05-09 09:59:18 +05:30
Alex Voicu
c505c2be38
Re-sync with upstream.
...
[ROCm/clr commit: 602280eb8b ]
2018-10-18 12:27:03 +01:00
Maneesh Gupta
50e89b0a30
Replace hipLaunchKernel -> hipLaunchKernelGGL
...
Change-Id: I4d99009e1199811d417becf1e1b934ec4d4e30be
[ROCm/clr commit: e1fe095471 ]
2018-10-17 14:32:25 +05:30
Maneesh Gupta
c4ed6b18fb
Implementation for stream priority
...
- Requires ROCm 1.9.x or higher
- Requires HCC with PR#886 merged
Change-Id: Id7c95ea091ee610e80c9ad815f1cb989cba570ca
[ROCm/clr commit: 07ee1f07d8 ]
2018-10-05 16:27:46 +05:30
Alex Voicu
f5d204450c
Align with HC Next.
...
[ROCm/clr commit: 26c26f63cb ]
2018-09-17 11:50:29 +03:00
Maneesh Gupta
46ddefedee
Apply .clangformat to all repo source files
...
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
[ROCm/clr commit: 9e47fccc89 ]
2018-03-12 11:29:03 +05:30
Maneesh Gupta
469ffecc71
hipStreamAddCallback.cpp: Replace unistd sleep with sleep_for
...
Change-Id: I7a5d40a1acd8be76a0f175bcfa731ad89fb88d81
[ROCm/clr commit: 3aab52d7cc ]
2018-01-31 10:48:17 +05:30
Maneesh Gupta
b2bb274b7e
Fix hipStreamAddCallback testcase for nvcc
...
Change-Id: Ieec4b8d7933d8d68394d21d27132da206111efc8
[ROCm/clr commit: 6a37c60eaa ]
2018-01-30 12:32:46 +05:30
Maneesh Gupta
290b5f1738
Implement hipStreamAddCallback
...
Change-Id: Ib851e4d86ba9c8406ca37b88162ea483ccbc9d36
[ROCm/clr commit: cd9ba0d1e1 ]
2017-12-19 16:06:14 +05:30
Phaneendr-kumar Lanka
033e2cde33
[nvccWarnings] Fix warnings seen with dtests on nvcc path
...
[ROCm/clr commit: 0ac125e3db ]
2017-12-14 14:10:37 +05:30
Ben Sander
c9f031bc72
Temporarily disable a couple tests pending some HCC work
...
[ROCm/clr commit: 721d862089 ]
2017-12-01 21:46:28 +00:00
Alex Voicu
a27fa25d76
Revert "Revert adoption of CUDA indexing in general - this can only work with later versions of the compiler, just like module based dispatch, and thus must be guarded against usage in earlier (e.g. 1.6) versions."
...
This reverts commit 1cd6416
[ROCm/clr commit: 4966518846 ]
2017-11-29 21:49:10 +00:00
Alex Voicu
a1d5f0ab0c
Revert "Revert adoption of CUDA indexing in general - this can only work with later versions of the compiler, just like module based dispatch, and thus must be guarded against usage in earlier (e.g. 1.6) versions."
...
This reverts commit d2fd1f5
[ROCm/clr commit: 2557000b56 ]
2017-11-29 21:36:29 +00:00
Alex Voicu
9cf73ef515
Re-sync with upstream.
...
[ROCm/clr commit: 30d90dab38 ]
2017-11-20 15:34:50 +00:00
Alex Voicu
af0ae5421c
This implements the trivial change needed to move back from the hip{Something}_{x, y, z} macros to the natural CUDA syntax of Something.{x, y, z}. This is contained in lines 384-404 in hip_runtime.h. All of the other changes have to do with changing unit tests to use this syntax. The macros are retained for backwards compatibility.
...
[ROCm/clr commit: 0cc921f103 ]
2017-11-19 01:54:12 +00:00
Alex Voicu
12f00d4881
Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
...
# Conflicts:
# tests/src/runtimeApi/stream/hipStreamSync2.cpp
[ROCm/clr commit: f7919a8321 ]
2017-11-08 10:26:30 +00:00
Alex Voicu
142213a52b
Clean up trailing whitespace so as to reduce noise in #246 .
...
[ROCm/clr commit: 0ad1308efd ]
2017-11-08 00:08:55 +00:00
Phaneendr-kumar Lanka
700890e19a
More tests for memory,stream & error APIs
...
[ROCm/clr commit: 7427abba04 ]
2017-11-06 11:31:52 +05:30
Alex Voicu
b738633bcb
This switches HIP from its currently convoluted macro + pfe based dispatch mechanism to a more natural one partially based on the existing module API. The basic idea is that HCC will always correctly emit __global__ functions: as empty-bodied stubs, on host, and as kernels, on device. It then becomes trivial to obtain the mangled name on host, at dispatch, from the function's address, and then to use the mangled name to retrieve the kernel. This should address all problems stemming from serialisation, dubious mismatches due to the manufactured functor, macro-isms et al. It also immediately enables support for generalised globals as a consequence of that being available in the module API. Finally, it will make debug much easier, since the actual names of the __global__ functions will automatically be used in traces etc. One detail is that due to how dispatch works now (hipLaunchKernel and hipLaunchKernelGGL are themselves variadic function templates which deduce the function type of the callee), in certain cases it may be necesssary to insert explicit casts to ensure that the variadic argument list selects a viable overload - this can be observed in some unit tests. Eventually we may be able to remove this limitation, but for now it does not appear terribly onerous. The code is not extremely HIPpie, nor is it fully optimised, but rather is intended as a starting point for the HIP team to make its own.
...
[ROCm/clr commit: 28f87f7d2e ]
2017-11-01 15:09:59 +00:00
Ben Sander
b45217fef0
Refactor hipStreamWaitEvent
...
- Null streams use same flow as non-null.
- Add HIP_SYNC_STREAM_WAIT
- Resolve null stream.
[ROCm/clr commit: ed8c3ba7e7 ]
2017-08-31 03:00:14 +00:00
Rahul Garg
b6e1129b22
Enable hipStreamSync2 and record_event dtests
...
[ROCm/clr commit: 3e4df05632 ]
2017-08-24 15:51:58 +05:30
Maneesh Gupta
1d986efecf
[dt] temporarily disable broken tests
...
Change-Id: I3ce23e410dc36e06d460263d768412f8368a6699
[ROCm/clr commit: 814eddcd96 ]
2017-07-18 11:17:02 +05:30
Ben Sander
7237ed04f3
Fix HIP_SYNC_NULL_STREAM=0 mode.
...
- Fix null-stream sync
- hipStreamDestroy of null stream returns hipErrorInvalidResourceHandle
- Update documentation.
- Add tests for null stream sync, hipEventElapsedTime.
- Rename internal enum hipEventStatusRecorded to hipEventStatusComplete
- refactor hipStreamWaitEvent to streamline control-flow
[ROCm/clr commit: 823281dcba ]
2017-06-05 08:50:22 -05:00
Ben Sander
be21cd1a91
Update tests.
...
Fix some NVCC issues.
Add hipStreamSync2, record_event tests.
[ROCm/clr commit: 863b7c3f56 ]
2017-06-04 20:18:37 -05:00
Ben Sander
9442c6dd2d
Updates so hip compiles on CUDA.
...
[ROCm/clr commit: 8dc968f036 ]
2017-05-27 15:55:07 -05:00
Ben Sander
59e07db865
Expand test to cover copy followed by event sync
...
[ROCm/clr commit: 92bd54d7b3 ]
2017-05-23 23:15:45 -05:00
Ben Sander
4ac6ac9d1d
Add initial HIP_SYNC_NULL_STREAM=0 mode.
...
This eliminates host-synchronization for null stream. Instead, the
null-stream uses GPU-side events to wait for other streams.
Default is OFF pending additional testing.
Add enhanced null-stream test.
Also refine HIP_TRACE_API.
[ROCm/clr commit: 8bc6ee5932 ]
2017-05-16 19:04:25 -05:00
Ben Sander
a8d917c092
split debugging into separate .md file
...
[ROCm/clr commit: 61c8633113 ]
2017-05-16 19:04:25 -05:00
Ben Sander
90e5930923
hipHostMalloc allocation are mapped to all devices by default.
...
Support hipHostMallocPortable flag.
Default flags are hipHostMallocPortable | hipHostMallocMapped.
Also:
-refactor tests to move addCount and addCountReverse into HipTest
namespace.
-test multi-GPU host memory.
[ROCm/clr commit: ff9bed6535 ]
2017-05-10 17:34:36 -05:00
Ben Sander
501d0b3161
Fix hipStreamWaitEvent for single GPU.
...
[ROCm/clr commit: ae9fdf9bc1 ]
2017-05-10 13:23:49 -05:00
Ben Sander
48fdf2fc93
Update streamEventTEst.
...
- add checks for events across devices.
- refactor test to make sure it runs long enough to sensitive sync
techniques.
- add tests for DeviceSync, streamWaitEvent.
[ROCm/clr commit: 444e4a20ba ]
2017-05-05 17:29:04 -05:00
wsttiger
618f4bf702
Improve hipStreamWaitEvent test.
...
- use addOne kernel, use local initializer rather than init_array.
- use addOneReverse test to add from back of array. Test alternate fwd and backward to stress dependency logic.
- check device-side dependencies.
[ROCm/clr commit: a10d37e5e6 ]
2017-05-05 17:29:04 -05:00
Aditya Atluri
42c627fbe8
Moved device code to mimic cuda header behavior
...
1. All fp32, fp64 math device/host functions should be in math_functions.h/.cpp
2. All fp32, fp64 fast math intrinsics for device/host functions should be in device_functions.h/.cpp
3. All the device code implementations should be in device_util.h/.cpp
4. Hence, made changes appropriately by moving code and creating new header files
5. Added math_functions.cpp/.h
6. Changed #ifndef signature to make sure no conflicts between headers with same names in hip/hip_runtime.h and hip/hcc_detail/hip_runtime.h
7. Changed tests to fit the code changes, making them to include appropriate headers
8. Added math_functions.cpp to CMakeLists.txt
9. Some of the tests are still broken, mostly host math functions will fix them in next commit
10. TODO: FIX compilation issues for host math functions
Change-Id: I7a17637d7e294a7d224ffba932c1a08668febd26
[ROCm/clr commit: d23b6b8694 ]
2017-01-17 14:57:51 -06:00
pensun
b98e815865
Modify hipStreamAddCallback test case to consider both NULL stream and stream
...
Change-Id: I8468c988f0f01c7d3f3176a01469d69bf7a68237
[ROCm/clr commit: 4a93beb3b0 ]
2016-10-23 12:36:02 -05:00
pensun
57fab304c7
Add direct test for hipStreamAddCallback workaround
...
Change-Id: I890574eb30a76922888846882986edd0dc345309
[ROCm/clr commit: ad09270d7b ]
2016-10-23 12:18:09 -05:00
Maneesh Gupta
6b41768920
Remove deprecated make and cmake files
...
Change-Id: I8cac0ec9cb997214559627425af207bbb9be0ddf
[ROCm/clr commit: c4dd17cce9 ]
2016-10-07 11:44:26 +05:30
Maneesh Gupta
43d07079e9
directed tests: Updated to use new hip include path
...
Change-Id: Iab1aee638b7158eb9674a19625dedf6471947e51
[ROCm/clr commit: 5947878247 ]
2016-10-04 22:20:50 +05:30