Commit Graph

61 Commits

Author SHA1 Message Date
mkumarmi 6491836990 [dtest] Disable few tests on NVCC platform
Few of the tests are being validated in nvcc platform.  Till then
these tests are disabled.

SWDEV-238517 for enhancing hip unit tests

Change-Id: I1acbfe90c6ea39f3de676e98f0e3c33cbac97888
2020-09-18 04:34:00 -04:00
Aryan Salmanpour cc0f0bae74 [dtest] disable hipStreamCreateWithPriority test temporarily as it fails randomly on Jenkins
Change-Id: I4edcd555653ef8e7562245da3a6f310d60884fe0
2020-07-30 16:18:04 -04:00
Jatin Chaudhary d251c2db57 Fixing/Disabling tests on nvcc path
Change-Id: I7ed4a1246943867482ff595d5f98bb25bd79074b
2020-07-30 00:39:07 -04:00
sushantkumar14 2dc42154c4 [dtest] Added hipStreamGetPriority API test
SWDEV-238517 for enhancing hip unit tests

Change-Id: Icff175360815ba6e25a6954a67947b65caff3711
2020-07-09 01:59:44 -04:00
Lakhan singh Thakur 18f8b15523 [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
2020-07-07 00:43:32 -04:00
Christophe Paquot 20ae4d709f Do not deferred stream creation now that we multiplex HW queues
SWDEV-239856

Change-Id: I156650faf832f86891f00ee167269509edd844ec
2020-06-09 19:16:25 -04:00
Payam f3ee29cdb2 Observed softhang while running hipStreamAddCallbackCatch SWDEV-236746
Workaround hipStream deadlock issue as the same lock was used twice SWDEV-236746

Change-Id: Icc60104ce6edf4cfd2a3a889bab78a6caadd50b7
2020-06-04 14:11:22 -04:00
Aryan Salmanpour 200ab30084 [dtest] add a multi stream test for (SWDEV-237846)
Change-Id: I4a1d764df75af7019d0f38313e5e0a6a224818f8
2020-05-28 23:36:10 -04:00
Aryan Salmanpour c9b8a19ce0 [dtest] add a test for hipExtStreamCreateWithCUMask API
Change-Id: Ib567e559c5ab7d04ac5c300fd7e15eedfc4fb6e6
2020-05-26 18:15:09 -04:00
Payam dba0e72de2 name change vdi to rocclr
Change-Id: I06d198bbb4a499e153b290b73a92afed3553b252
2020-05-06 09:14:30 -04:00
Maneesh Gupta 0ea6697192 Merge branch 'amd-master' into amd-master-next
Change-Id: I3094c15008093f2072bcd38aca4ea90aeae2d97b
2020-04-09 06:31:00 -04:00
Evgeny Mankov 4aaa2336a8 [HIP] Clean-up deprecated HIP error codes
hipErrorMemoryAllocation -> hipErrorOutOfMemory
hipErrorInitializationError -> hipErrorNotInitialized
hipErrorMapBufferObjectFailed -> hipErrorMapFailed
hipErrorInvalidResourceHandle -> hipErrorInvalidHandle
2019-12-23 17:01:35 +03:00
Sarbojit2019 8a3c36a424 Revert [HIP] Fixed hipStreamAddCallback (#1674)
This reverts commit 97fca3439d.
Addresses SWDEV#212675.
2019-11-20 11:55:46 +05:30
Sarbojit2019 97fca3439d [HIP] Fixed hipStreamAddCallback [SWDEV#165185] (#1425)
Fixed hipStreamAddCallback() as requested in SWDEV#165185
Added unit test to test the behavior
2019-11-07 13:18:12 +05:30
Maneesh Gupta d206d66dfe [dtests] Fix typo in hipAPIStreamDisable.cpp (#1227)
Change-Id: Ib88a6be49ba192578129bb88ad09817839981398
2019-07-17 07:28:38 +00:00
Konstantin Pyzhov adf3b8774e Disable hipStreamSync2 test for hip-clang. 2019-05-20 02:13:30 -04:00
Maneesh Gupta 53dd1df3fa [hit] Rename RUN -> TEST & RUN_NAMED -> TEST_NAMED
Change-Id: I75e24f15129973cee15fc9dac65d678bd2172074
2019-05-09 09:59:18 +05:30
Alex Voicu 602280eb8b Re-sync with upstream. 2018-10-18 12:27:03 +01:00
Maneesh Gupta e1fe095471 Replace hipLaunchKernel -> hipLaunchKernelGGL
Change-Id: I4d99009e1199811d417becf1e1b934ec4d4e30be
2018-10-17 14:32:25 +05:30
Maneesh Gupta 07ee1f07d8 Implementation for stream priority
- Requires ROCm 1.9.x or higher
- Requires HCC with PR#886 merged

Change-Id: Id7c95ea091ee610e80c9ad815f1cb989cba570ca
2018-10-05 16:27:46 +05:30
Alex Voicu 26c26f63cb Align with HC Next. 2018-09-17 11:50:29 +03:00
Maneesh Gupta 9e47fccc89 Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
2018-03-12 11:29:03 +05:30
Maneesh Gupta 3aab52d7cc hipStreamAddCallback.cpp: Replace unistd sleep with sleep_for
Change-Id: I7a5d40a1acd8be76a0f175bcfa731ad89fb88d81
2018-01-31 10:48:17 +05:30
Maneesh Gupta 6a37c60eaa Fix hipStreamAddCallback testcase for nvcc
Change-Id: Ieec4b8d7933d8d68394d21d27132da206111efc8
2018-01-30 12:32:46 +05:30
Maneesh Gupta cd9ba0d1e1 Implement hipStreamAddCallback
Change-Id: Ib851e4d86ba9c8406ca37b88162ea483ccbc9d36
2017-12-19 16:06:14 +05:30
Phaneendr-kumar Lanka 0ac125e3db [nvccWarnings] Fix warnings seen with dtests on nvcc path 2017-12-14 14:10:37 +05:30
Ben Sander 721d862089 Temporarily disable a couple tests pending some HCC work 2017-12-01 21:46:28 +00:00
Alex Voicu 4966518846 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 4792475
2017-11-29 21:49:10 +00:00
Alex Voicu 2557000b56 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
2017-11-29 21:36:29 +00:00
Alex Voicu 30d90dab38 Re-sync with upstream. 2017-11-20 15:34:50 +00:00
Alex Voicu 0cc921f103 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. 2017-11-19 01:54:12 +00:00
Alex Voicu f7919a8321 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	tests/src/runtimeApi/stream/hipStreamSync2.cpp
2017-11-08 10:26:30 +00:00
Alex Voicu 0ad1308efd Clean up trailing whitespace so as to reduce noise in #246. 2017-11-08 00:08:55 +00:00
Phaneendr-kumar Lanka 7427abba04 More tests for memory,stream & error APIs 2017-11-06 11:31:52 +05:30
Alex Voicu 28f87f7d2e 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. 2017-11-01 15:09:59 +00:00
Ben Sander ed8c3ba7e7 Refactor hipStreamWaitEvent
- Null streams use same flow as non-null.
- Add HIP_SYNC_STREAM_WAIT
- Resolve null stream.
2017-08-31 03:00:14 +00:00
Rahul Garg 3e4df05632 Enable hipStreamSync2 and record_event dtests 2017-08-24 15:51:58 +05:30
Maneesh Gupta 814eddcd96 [dt] temporarily disable broken tests
Change-Id: I3ce23e410dc36e06d460263d768412f8368a6699
2017-07-18 11:17:02 +05:30
Ben Sander 823281dcba 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
2017-06-05 08:50:22 -05:00
Ben Sander 863b7c3f56 Update tests.
Fix some NVCC issues.
Add hipStreamSync2, record_event tests.
2017-06-04 20:18:37 -05:00
Ben Sander 8dc968f036 Updates so hip compiles on CUDA. 2017-05-27 15:55:07 -05:00
Ben Sander 92bd54d7b3 Expand test to cover copy followed by event sync 2017-05-23 23:15:45 -05:00
Ben Sander 8bc6ee5932 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.
2017-05-16 19:04:25 -05:00
Ben Sander 61c8633113 split debugging into separate .md file 2017-05-16 19:04:25 -05:00
Ben Sander ff9bed6535 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.
2017-05-10 17:34:36 -05:00
Ben Sander ae9fdf9bc1 Fix hipStreamWaitEvent for single GPU. 2017-05-10 13:23:49 -05:00
Ben Sander 444e4a20ba 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.
2017-05-05 17:29:04 -05:00
wsttiger a10d37e5e6 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.
2017-05-05 17:29:04 -05:00
Aditya Atluri d23b6b8694 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
2017-01-17 14:57:51 -06:00
pensun 4a93beb3b0 Modify hipStreamAddCallback test case to consider both NULL stream and stream
Change-Id: I8468c988f0f01c7d3f3176a01469d69bf7a68237
2016-10-23 12:36:02 -05:00