Граф коммитов

272 Коммитов

Автор SHA1 Сообщение Дата
Phaneendr-kumar Lanka 0599d13b0d [newTests]modified the test 2017-11-03 14:52:19 +05:30
Phaneendr-kumar Lanka a764a0980d [newTests]Modified the test as per review comments 2017-11-03 10:39:47 +05:30
Alex Voicu c2482d1255 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
Phaneendr-kumar Lanka 511de63bcb [newTests]Adding tests for device APIs 2017-10-30 14:34:24 +05:30
Ben Sander ca1230300a Clean up test to address review feedback. 2017-10-25 16:08:16 -05:00
Ben Sander 8e04b33c95 Test cleanup. 2017-10-07 07:54:10 -07:00
Ben Sander 54d5b52d05 Add copy_coherency test
Test cache managemenent and synchronization between kernel and copy commands
in separate queues.
2017-10-07 07:54:10 -07:00
Ben Sander 882dab4536 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 4b98572f47 Enable hipStreamSync2 and record_event dtests 2017-08-24 15:51:58 +05:30
Rahul Garg 9441f3a50e PCI Bus ID related dtests 2017-08-22 15:41:16 +05:30
Rahul Garg 2f617bac6d Disable failing test p2p_copy_coherency 2017-08-02 14:47:13 +05:30
Maneesh Gupta b3a9e202b1 [dt] temporarily disable broken tests
Change-Id: I3ce23e410dc36e06d460263d768412f8368a6699
2017-07-18 11:17:02 +05:30
Ben Sander 7912e61502 Clean up old USE_* and RELEASE.md notes. 2017-06-23 18:05:30 -05:00
Rahul Garg a9449533a1 Update P2P test for using memcpy and kernel tests
Change-Id: Ib0f8fc9425e6e85fd11d7d02395c52bc713dcb37
2017-06-12 11:53:25 +05:30
Maneesh Gupta 1c93d8592e hipMemcpy-size test: reduce max size to make it work correctly on nvcc path
Change-Id: I9ce9f5a9e141ffd8ddf961269010b33358e02771
2017-06-07 15:25:54 +05:30
Maneesh Gupta 1efb6ce994 p2p_copy_coherency test: gracefully handle single gpu case
Change-Id: I216663f67ef58c673136332635dab8b57079b909
2017-06-07 15:23:37 +05:30
Ben Sander 39c18e5e5f 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 8ce6d17983 Update tests.
Fix some NVCC issues.
Add hipStreamSync2, record_event tests.
2017-06-04 20:18:37 -05:00
Ben Sander d5c1616324 Update tests, add p2p coherency test. 2017-06-03 17:11:34 -05:00
Maneesh Gupta 502a74fcd6 Fix hipMemoryAllocate test for single GPU
Change-Id: If121c18ab490ba125dc689ffc08a8839fd280c38
2017-05-31 10:16:57 +05:30
Ben Sander ec7102f461 Add event controls for release fences.
Env var : HIP_EVENT_SYS_RELEASE
Event allocation flags : hipEventReleaseToDevice, hipEventReleaseToSystem
   (remove hipEventDisableSystemRelease)

Update test for new functionality.
2017-05-27 16:02:34 -05:00
Ben Sander 620eb30691 Cleanup hipEvent. (Intermediate checkpoint)
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf
2017-05-27 16:02:34 -05:00
Ben Sander be8d0ba644 Updates so hip compiles on CUDA. 2017-05-27 15:55:07 -05:00
Ben Sander 75f691ec2f Add hipHostMallocCoherent, hipHostMallocNonCoherent
Provide per-allocation control over coherent/non-coherent mem.
These overrid the default HIP_COHERENT_HOST_ALLOC setting.
2017-05-24 00:48:10 -05:00
Ben Sander 236ce70e94 Expand test to cover copy followed by event sync 2017-05-23 23:15:45 -05:00
Ben Sander 2e1fec47ab 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.
2017-05-16 19:04:25 -05:00
Ben Sander 27877f8854 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 db097ab392 split debugging into separate .md file 2017-05-16 19:04:25 -05:00
Ben Sander c3ccaa01e5 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 e0c3ea15b2 Fix hipStreamWaitEvent for single GPU. 2017-05-10 13:23:49 -05:00
Ben Sander 6437f5d2b2 Refactor hipHostRegister test.
Run all tests in one command.
Run 128 offsets.
2017-05-05 17:29:04 -05:00
Ben Sander 2d0f509de5 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 2a253680da 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 fc6248ce82 added hipFuncSetCacheConfig API for nvcc path
Change-Id: I87fae35bc0e10a0dca5ae1c5015fe5d9e52a1d0d
2017-04-26 18:56:57 -05:00
Ben Sander cd93a2f229 Add host offset checking 2017-04-24 22:30:54 -05:00
Ben Sander b7b17c3841 Refactor hipHostRegister test.
- Add more testing for offsets.
- Parse cmdline options and use --tests.
2017-04-24 22:30:54 -05:00
Ben Sander 8ba993e36c Refactor hipHostRegister to cover misaligned cases. 2017-04-24 22:30:54 -05:00
Ben Sander ab410add5c Add test for non-page-aligned mem copies. 2017-04-24 22:30:54 -05:00
Ben Sander c5d89d9e7f Add corrected test for offsets 2017-04-24 22:30:54 -05:00
Ben Sander 2bc0a6030e Refactor hipMemcpy test to share mem alloc for multiple copies. 2017-04-24 22:30:54 -05:00
Ben Sander dc001ef9b4 Add negative testing for memory full condition. 2017-04-24 22:30:54 -05:00
Maneesh Gupta 65bb22eefc Disable broken tests on hcc path
Change-Id: Id6234da576566faa32d5fdf42dca6d6267596823
2017-03-15 12:03:44 +05:30
Ben Sander e7d6a34327 Update hiphostregister test.
Move check to correct place.
2017-03-12 09:51:33 -05:00
Ben Sander 0a554f4dc1 Update hipHostRegister debug and pointerTracker debug and notes 2017-03-11 09:18:27 -06:00
Ben Sander 94c85fd4fc Fix copying of registered memory.
Set device properly so copying can recover context.
Enhance test to catch this case.
2017-03-11 09:18:27 -06:00
Maneesh Gupta 7a59103cea Disable hipMemPtrGetInfo test on nvcc path
Change-Id: I864e571314abfe5ae614e6792c86d7b457c920ee
2017-03-08 16:16:08 +05:30
Aditya Atluri 1546732604 Added new API, hipMemPtrGetInfo
1. This API returns memory allocation size of pointer
2. Added test to check its functionality

Change-Id: I87976d817b5a6ca5530336c09e7cb0420601cb2c
2017-03-07 13:46:29 -06:00
Maneesh Gupta f1c3dd0dff Fix compilation of some broken tests on nvcc path
Change-Id: I92406af00c2de09d728e9b7f661c1f3873470560
2017-02-27 13:17:51 +05:30
Aditya Atluri 378eb3fa55 v2: Fixed hipModule memory management
1. Changed test to assert for same hipFunction values
2. Added better memory management for hipModule

Change-Id: I10d7aef13c215a2211e262f3c79017f26a17d9a7
2017-02-10 13:32:13 -06:00
Aditya Atluri 6fd3daed30 fixed hipFunction memory management
Change-Id: I7ebb323419bcd220ebd6466a8eb38e7bfdb1520a
2017-02-09 17:22:55 -06:00