Commit Graph

94 Commits

Author SHA1 Message Date
Alex Voicu d8e323d4b5 Clean up trailing whitespace so as to reduce noise in #246. 2017-11-08 00:08:55 +00:00
Phaneendr-kumar Lanka 9ee330451a Modified tests as per review 2017-11-06 15:13:36 +05:30
Phaneendr-kumar Lanka 093279b10b More tests for memory,stream & error APIs 2017-11-06 11:31:52 +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
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
Rahul Garg 2f617bac6d Disable failing test p2p_copy_coherency 2017-08-02 14:47:13 +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 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 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 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 6437f5d2b2 Refactor hipHostRegister test.
Run all tests in one command.
Run 128 offsets.
2017-05-05 17:29:04 -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 5e3d63c0a3 changed __global__ attribute
1. Moved around tests and added them to HIT

Change-Id: I5d75280c42a5af852670ebabc7305ee56721ec7b
2017-02-03 10:53:36 -06:00
pensun 50867efa10 Add direct test case for threadfence_system workaround
Change-Id: I5b21b590e957c901044741ac94e816cd8b1426f9
2016-11-11 15:09:43 -06:00
Maneesh Gupta 66f810ebaa Remove deprecated make and cmake files
Change-Id: I8cac0ec9cb997214559627425af207bbb9be0ddf
2016-10-07 11:44:26 +05:30
Maneesh Gupta 7e04884d0f directed tests: Updated to use new hip include path
Change-Id: Iab1aee638b7158eb9674a19625dedf6471947e51
2016-10-04 22:20:50 +05:30
Ben Sander 3bda7532cf fix test args
Change-Id: If18eb2a5e504accb72a25716aafb6867002fefb2
2016-10-01 14:39:22 -05:00
Maneesh Gupta 4807279988 directed tests: Enable remaining tests in HIT infrastructure
Change-Id: I800ee00d6f7d339bb5d2ed898a16362a8541ed3a
2016-09-27 17:24:33 +05:30
Ben Sander 84b14aa9d6 Doc and test updates.
Change-Id: I44cbd2c0de7cb692d0194d1bb8b8ae25c58d4e00
2016-09-02 09:46:59 -05:00
pensun b726f0e949 Modify hipMalloc to take size of 0 and return NULL pointer for it.
Modify hipMemoryAllocate test for this change.

Change-Id: I884aee0cd5fe0c60aebb4cb37cdbb4833c5bd0c7
2016-09-01 13:08:30 -05:00
Maneesh Gupta 50be71206d Disable hipMemcpyAll test
Change-Id: I58ff2e1baa91e3af335dd869ce4f6d56cd81028c
2016-06-18 15:48:42 +05:30
Ben Sander 55560ab8a0 Fix test project names
Change-Id: I105c3759208ec832f3bdf6068029b4bfa2827909
2016-06-17 15:18:57 -05:00
Ben Sander 1b69b2e9f0 Refactor directed test infrastructue.
- Add hierarchy.  Tests now live in directories, each with its own
  CMakeFiles.txt.  Reduces merge conflicts.
- Change make_hip_executable -> build_hip_executable.
- Refresh docs.
- Enable some tests that were previously built but not run.

Change-Id: I8c5de3c954400bf233904282b8b42861a2b7c536
2016-06-17 15:18:57 -05:00