Commit Graph

121 Commits

Author SHA1 Message Date
Phaneendr-kumar Lanka 0026b0a3d9 [newTests]Modified the test as per review comments
[ROCm/hip commit: a764a0980d]
2017-11-03 10:39:47 +05:30
Alex Voicu 70a41e7dac 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/hip commit: c2482d1255]
2017-11-01 15:09:59 +00:00
Phaneendr-kumar Lanka a36c3c6d8b [newTests]Adding tests for device APIs
[ROCm/hip commit: 511de63bcb]
2017-10-30 14:34:24 +05:30
Ben Sander 68e571aa82 Clean up test to address review feedback.
[ROCm/hip commit: ca1230300a]
2017-10-25 16:08:16 -05:00
Ben Sander 05d5dd2d46 Test cleanup.
[ROCm/hip commit: 8e04b33c95]
2017-10-07 07:54:10 -07:00
Ben Sander 50ef165727 Add copy_coherency test
Test cache managemenent and synchronization between kernel and copy commands
in separate queues.


[ROCm/hip commit: 54d5b52d05]
2017-10-07 07:54:10 -07:00
Ben Sander 2a23d6dbe7 Refactor hipStreamWaitEvent
- Null streams use same flow as non-null.
- Add HIP_SYNC_STREAM_WAIT
- Resolve null stream.


[ROCm/hip commit: 882dab4536]
2017-08-31 03:00:14 +00:00
Rahul Garg 1d4213af20 Enable hipStreamSync2 and record_event dtests
[ROCm/hip commit: 4b98572f47]
2017-08-24 15:51:58 +05:30
Rahul Garg 82970c4dc1 PCI Bus ID related dtests
[ROCm/hip commit: 9441f3a50e]
2017-08-22 15:41:16 +05:30
Rahul Garg 63456bfea0 Disable failing test p2p_copy_coherency
[ROCm/hip commit: 2f617bac6d]
2017-08-02 14:47:13 +05:30
Maneesh Gupta 3e230cfcc6 [dt] temporarily disable broken tests
Change-Id: I3ce23e410dc36e06d460263d768412f8368a6699


[ROCm/hip commit: b3a9e202b1]
2017-07-18 11:17:02 +05:30
Ben Sander ed1f242c60 Clean up old USE_* and RELEASE.md notes.
[ROCm/hip commit: 7912e61502]
2017-06-23 18:05:30 -05:00
Rahul Garg aaa09cbf1c Update P2P test for using memcpy and kernel tests
Change-Id: Ib0f8fc9425e6e85fd11d7d02395c52bc713dcb37


[ROCm/hip commit: a9449533a1]
2017-06-12 11:53:25 +05:30
Maneesh Gupta 59a792d892 hipMemcpy-size test: reduce max size to make it work correctly on nvcc path
Change-Id: I9ce9f5a9e141ffd8ddf961269010b33358e02771


[ROCm/hip commit: 1c93d8592e]
2017-06-07 15:25:54 +05:30
Maneesh Gupta 7213c7a1ad p2p_copy_coherency test: gracefully handle single gpu case
Change-Id: I216663f67ef58c673136332635dab8b57079b909


[ROCm/hip commit: 1efb6ce994]
2017-06-07 15:23:37 +05:30
Ben Sander 445042f916 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/hip commit: 39c18e5e5f]
2017-06-05 08:50:22 -05:00
Ben Sander f3950e0748 Update tests.
Fix some NVCC issues.
Add hipStreamSync2, record_event tests.


[ROCm/hip commit: 8ce6d17983]
2017-06-04 20:18:37 -05:00
Ben Sander a1bdd5f585 Update tests, add p2p coherency test.
[ROCm/hip commit: d5c1616324]
2017-06-03 17:11:34 -05:00
Maneesh Gupta 404c3f6751 Fix hipMemoryAllocate test for single GPU
Change-Id: If121c18ab490ba125dc689ffc08a8839fd280c38


[ROCm/hip commit: 502a74fcd6]
2017-05-31 10:16:57 +05:30
Ben Sander b3e01ed74f Add event controls for release fences.
Env var : HIP_EVENT_SYS_RELEASE
Event allocation flags : hipEventReleaseToDevice, hipEventReleaseToSystem
   (remove hipEventDisableSystemRelease)

Update test for new functionality.


[ROCm/hip commit: ec7102f461]
2017-05-27 16:02:34 -05:00
Ben Sander e24627aa80 Cleanup hipEvent. (Intermediate checkpoint)
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf


[ROCm/hip commit: 620eb30691]
2017-05-27 16:02:34 -05:00
Ben Sander c88190d698 Updates so hip compiles on CUDA.
[ROCm/hip commit: be8d0ba644]
2017-05-27 15:55:07 -05:00
Ben Sander 5b9ce41633 Add hipHostMallocCoherent, hipHostMallocNonCoherent
Provide per-allocation control over coherent/non-coherent mem.
These overrid the default HIP_COHERENT_HOST_ALLOC setting.


[ROCm/hip commit: 75f691ec2f]
2017-05-24 00:48:10 -05:00
Ben Sander 247c34195f Expand test to cover copy followed by event sync
[ROCm/hip commit: 236ce70e94]
2017-05-23 23:15:45 -05:00
Ben Sander bd7a374f20 Make hipMultiThreadStreams1 test a little harsher.
Fail faster if synchronization rules are violated.
Run vectorAddRevers to read last elements of array first - if the
vector add kernel starts before preceding copy finishes we
will read stale data and flag the error.

Increase default array sizes, so synchronization errors more easily
exposed.


[ROCm/hip commit: 2e1fec47ab]
2017-05-16 19:04:25 -05:00
Ben Sander a55ce5bee4 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/hip commit: 27877f8854]
2017-05-16 19:04:25 -05:00
Ben Sander 7d07d804d8 split debugging into separate .md file
[ROCm/hip commit: db097ab392]
2017-05-16 19:04:25 -05:00
Ben Sander ff72a701b7 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/hip commit: c3ccaa01e5]
2017-05-10 17:34:36 -05:00
Ben Sander 5d558861c2 Fix hipStreamWaitEvent for single GPU.
[ROCm/hip commit: e0c3ea15b2]
2017-05-10 13:23:49 -05:00
Ben Sander 639d152ff8 Refactor hipHostRegister test.
Run all tests in one command.
Run 128 offsets.


[ROCm/hip commit: 6437f5d2b2]
2017-05-05 17:29:04 -05:00
Ben Sander 2e2c773643 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/hip commit: 2d0f509de5]
2017-05-05 17:29:04 -05:00
wsttiger 3bf30acbd7 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/hip commit: 2a253680da]
2017-05-05 17:29:04 -05:00
Aditya Atluri a2c405c265 added hipFuncSetCacheConfig API for nvcc path
Change-Id: I87fae35bc0e10a0dca5ae1c5015fe5d9e52a1d0d


[ROCm/hip commit: fc6248ce82]
2017-04-26 18:56:57 -05:00
Ben Sander 0e14f7f58e Add host offset checking
[ROCm/hip commit: cd93a2f229]
2017-04-24 22:30:54 -05:00
Ben Sander e0bd60a22f Refactor hipHostRegister test.
- Add more testing for offsets.
- Parse cmdline options and use --tests.


[ROCm/hip commit: b7b17c3841]
2017-04-24 22:30:54 -05:00
Ben Sander 244e79d54d Refactor hipHostRegister to cover misaligned cases.
[ROCm/hip commit: 8ba993e36c]
2017-04-24 22:30:54 -05:00
Ben Sander ed7b16786a Add test for non-page-aligned mem copies.
[ROCm/hip commit: ab410add5c]
2017-04-24 22:30:54 -05:00
Ben Sander 70ed508153 Add corrected test for offsets
[ROCm/hip commit: c5d89d9e7f]
2017-04-24 22:30:54 -05:00
Ben Sander 9699bcc3da Refactor hipMemcpy test to share mem alloc for multiple copies.
[ROCm/hip commit: 2bc0a6030e]
2017-04-24 22:30:54 -05:00
Ben Sander 3ef01532b9 Add negative testing for memory full condition.
[ROCm/hip commit: dc001ef9b4]
2017-04-24 22:30:54 -05:00
Maneesh Gupta 86e2a5d11d Disable broken tests on hcc path
Change-Id: Id6234da576566faa32d5fdf42dca6d6267596823


[ROCm/hip commit: 65bb22eefc]
2017-03-15 12:03:44 +05:30
Ben Sander 3b768fb36c Update hiphostregister test.
Move check to correct place.


[ROCm/hip commit: e7d6a34327]
2017-03-12 09:51:33 -05:00
Ben Sander a735ffa947 Update hipHostRegister debug and pointerTracker debug and notes
[ROCm/hip commit: 0a554f4dc1]
2017-03-11 09:18:27 -06:00
Ben Sander 3297a65b8f Fix copying of registered memory.
Set device properly so copying can recover context.
Enhance test to catch this case.


[ROCm/hip commit: 94c85fd4fc]
2017-03-11 09:18:27 -06:00
Maneesh Gupta a1ecc551aa Disable hipMemPtrGetInfo test on nvcc path
Change-Id: I864e571314abfe5ae614e6792c86d7b457c920ee


[ROCm/hip commit: 7a59103cea]
2017-03-08 16:16:08 +05:30
Aditya Atluri fe81d08987 Added new API, hipMemPtrGetInfo
1. This API returns memory allocation size of pointer
2. Added test to check its functionality

Change-Id: I87976d817b5a6ca5530336c09e7cb0420601cb2c


[ROCm/hip commit: 1546732604]
2017-03-07 13:46:29 -06:00
Maneesh Gupta 2799863a54 Fix compilation of some broken tests on nvcc path
Change-Id: I92406af00c2de09d728e9b7f661c1f3873470560


[ROCm/hip commit: f1c3dd0dff]
2017-02-27 13:17:51 +05:30
Aditya Atluri 37e317ddb4 v2: Fixed hipModule memory management
1. Changed test to assert for same hipFunction values
2. Added better memory management for hipModule

Change-Id: I10d7aef13c215a2211e262f3c79017f26a17d9a7


[ROCm/hip commit: 378eb3fa55]
2017-02-10 13:32:13 -06:00
Aditya Atluri 76f30e96e8 fixed hipFunction memory management
Change-Id: I7ebb323419bcd220ebd6466a8eb38e7bfdb1520a


[ROCm/hip commit: 6fd3daed30]
2017-02-09 17:22:55 -06:00
Aditya Atluri 6d5992d445 changed __global__ attribute
1. Moved around tests and added them to HIT

Change-Id: I5d75280c42a5af852670ebabc7305ee56721ec7b


[ROCm/hip commit: 5e3d63c0a3]
2017-02-03 10:53:36 -06:00