Gráfico de Commits

508 Commits

Autor SHA1 Mensagem Data
Aditya Avinash Atluri e9a9c760fc Updated hipPointerAttrib.cpp to pass HC backend
The changes are according to the new API function change in HC backend for HIP. Especially hipPointerGetAttribute(...)
2016-02-26 19:42:07 -06:00
Aditya Avinash Atluri db8bedc4d3 Update README.md 2016-02-26 19:39:14 -06:00
Aditya Avinash Atluri 08a82b405a Update README.md 2016-02-26 19:38:22 -06:00
Ben Sander 8105bd636f fixes for titan platform 2016-02-26 05:25:30 -06:00
Ben Sander 7a1b4c3878 Merge branch 'memtracker' into privatestaging
Conflicts:
	include/nvcc_detail/hip_runtime_api.h
2016-02-26 06:17:05 -06:00
Ben Sander 4a6173fe58 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-02-26 06:15:09 -06:00
Ben Sander 69bb511b10 Merge branch 'memtracker' of https://github.com/AMDComputeLibraries/HIP-privatestaging into memtracker
Conflicts:
	tests/src/hipMemcpy.cpp
2016-02-25 23:24:22 -06:00
Ben Sander 8d985188dd Merge branch 'memtracker' of https://github.com/AMDComputeLibraries/HIP-privatestaging into memtracker
Conflicts:
	tests/src/hipMemcpy.cpp
2016-02-25 23:22:51 -06:00
Ben Sander af97f5e317 Merge branch 'memtracker' into privatestaging
Conflicts:
	src/hip_hcc.cpp
2016-02-25 19:38:46 -06:00
Ben Sander 91ed5c7d78 Improve memory copy and commands switching
- Add chicken bits to use host-side dependency management.
- Add optional PinInPlace path for unpinned copies
- Synchronize before pinned memcpy path.
- Add mutex to protect two threads launching to same stream.
2016-02-25 19:19:49 -06:00
Evgeny Mankov 7bb0f17656 Attribute hipDeviceAttributeIsMultiGpuBoard for obtaining Device property isMultiGpuBoard is added.
On HIP path property obtaining done through hsa_iterate_agents and counting the devices of HSA_DEVICE_TYPE_GPU type.

P.S.
On multi-boards systems it might be problems with detection what board a GPU plugged into (not tested).
2016-02-25 23:44:39 +03:00
Ben Sander 2228bbd119 Add test for thread-safety on streams 2016-02-25 04:22:34 -06:00
Ben Sander 382638df1e Add abstraction for pinned/unpinned, and sync/async mem copies selection in tests 2016-02-25 04:21:24 -06:00
Ben Sander 836c485d0b Add tests for multi-threaded streams 2016-02-23 12:08:22 -06:00
Ben Sander 28990567fb Improve async copy implementation.
- Add device-side signal waits when transitioning between command classes
(Kernel, H2D copy, D2H copy).
- Support waiting in staged memory copies as well.
- Add several chicken bits to control implementation:
    - HIP_DISABLE_ENQ_BARRIER
    - HIP_DISABLE_BIDIR_MEMCPY
    - HIP_ONESHOT_COPY_DEP
- Refactor signal pool to support efficient deallocation based on
signsequnm.
- Deallocate copy signals on eventSynchronize.
- Improve copy tests, add pingpong.
2016-02-22 23:15:24 -06:00
Ben Sander 784ebcbc86 Fix memcpy for Titan. Add <threads> to common includes 2016-02-22 15:09:23 -06:00
Ben Sander 16b04fc0d3 Merge branch 'memtracker' of https://github.com/AMDComputeLibraries/HIP-privatestaging into memtracker 2016-02-22 08:33:47 -06:00
Maneesh Gupta e2d97e19bc Enable cospi,rsqrt,sinpi tests for HCC newer than 16073 2016-02-22 15:13:23 +05:30
Ben Sander d5c777268a Track last command to a stream.
Passing simple tests.
2016-02-20 11:02:07 -06:00
streamhsa 005155b7b2 Resolve issues for hip_popc and hip_ballot on nvcc 2016-02-19 20:18:03 +08:00
Evgeny Mankov d4b15399f5 Guard #ifdef USE_ROCR_20 is added for ROCR_20 device properties (memoryClockRate, memoryBusWidth)
By default isn't defined.
To add ROCR_20 support HIP have to be compiled as follows: make CXX_DEFINES+=-DUSE_ROCR_20
2016-02-19 13:27:03 +03:00
Ben Sander 16ff0757a6 Describe how to update HTML docs 2016-02-19 01:56:17 -06:00
Evgeny Mankov da8169dd89 Device property memoryBusWidth implementation.
+ Device property memoryBusWidth is added to hipDeviceProp_t struct.
+ Device attribute hipDeviceAttributeMemoryBusWidth is added to hipDeviceAttribute_t struct.
+ Tests update.
2016-02-18 18:15:01 +03:00
Evgeny Mankov 8aace64dce Device property memoryClockRate implementation.
+ Device property memoryClockRate is added to hipDeviceProp_t struct.
+ Device attribute hipDeviceAttributeMemoryClockRate is added to hipDeviceAttribute_t struct.
+ Tests update.
+ Rename hipDevAttrConcurrentKernels to hipDeviceAttributeConcurrentKernels.
2016-02-18 17:25:28 +03:00
Evgeny Mankov d4bd94e9a0 Attribute hipDevAttrConcurrentKernels for obtaining Device property concurrentKernels is added. 2016-02-18 14:34:18 +03:00
Ben Sander d0f9881d60 Merge branch 'memtracker' of https://github.com/AMDComputeLibraries/HIP-privatestaging into memtracker 2016-02-17 23:06:51 -06:00
Ben Sander 9a82d316c3 Support HSA_PATH env, async path tweak 2016-02-17 21:22:07 -06:00
Ben Sander 0cdbe1ff05 more work on async copies 2016-02-17 00:59:12 -06:00
Ben Sander 731a2a58d3 Add comments to tests 2016-02-16 01:58:24 -06:00
Ben Sander 3b2d4acabc Remove old include path. 2016-02-15 05:40:37 -06:00
Ben Sander afbe451b0d Fix tests to account for multi-gpu 2016-02-15 05:19:52 -06:00
Ben Sander 8939b4f0e5 Add multi-threading synchonization on staging buffers and signals.
Also pre-allocate a couple signals for copies.
2016-02-13 03:18:01 -06:00
Ben Sander a002833a89 D2H multi-buffer 2016-02-13 01:15:23 -06:00
Ben Sander 2353cbb028 Improve copy testing 2016-02-12 18:24:08 -06:00
Ben Sander 1128610801 Improve copy testing implementation.
- add tests for (unpinned/pinned) x H2H x D2D.
- Free memory at end of test.
2016-02-12 18:24:08 -06:00
Ben Sander 90af462b85 Step1 in staging buffer copy.
- use StagingBuffer class for copies.
- refactor g_device to use array rather than vector.
   (keeps pointers from moving).
2016-02-12 18:24:08 -06:00
Ben Sander f464cedcf4 Query tracked memory sizes.
Support more accurate hipMemGetInfo.  Add test to hipPointerAttrib.
2016-02-12 18:24:08 -06:00
Ben Sander 7216727fba Tracker improvements
- add API to add / remove user-pointers from the tracker.
- test for thread-safety with MultiThreadtest_2 - rapid
  insertions/removal.
- add mutex to provide thread-safety.
- rename tracker interface to "memtracker_..." for consistency.
- add am_memtracker_reset, connect to hipDeviceReset.
-
2016-02-12 18:24:08 -06:00
Ben Sander 721508cc2f Create address tracker for am_alloc.
Tracks device where memory is allocated, pinned-host or device, and
more.

Uses memory-range-based lookups - so pointers that exist anywhere in

the range of hostPtr + size will find the associated AmPointerInfo.

The insertions and lookups use a self-balancing binary tree and
should support O(logN) lookup speed.
2016-02-12 18:24:08 -06:00
Evgeny Mankov 460b501cbb Fix typo: maxThreadsPerMultiProcessor -> MaxSharedMemoryPerMultiprocessor
Device property MaxSharedMemoryPerMultiprocessor set equal to totalGlobalMem (HIP path).
Reason: MaxSharedMemoryPerMultiprocessor should be as the same as group memory size. Group memory will not be paged out, so, the physical memory size = total shared memory size = group region size. NVCC path remains untouched: CUDA's device property MaxSharedMemoryPerMultiprocessor is reported.

hipify is updated as well.
2016-02-12 01:29:20 +03:00
Evgeny Mankov 658e9f0484 BDFID (BusID/DeviceID/FunctionID) support.
Except FunctionID (or DomainID in CUDA) support, because cudaDeviceProp::pciDomainID is not reported by CUDA.
2016-02-11 22:26:01 +03:00
Maneesh Gupta ed2d86f3a9 Updated readme for test 2016-02-11 13:06:58 +05:30
streamhsa 90add185fd Remove test for atomicInc and atomicDec 2016-02-10 21:02:52 +08:00
streamhsa 56f1832e70 Updated readme for test 2016-02-10 20:05:59 +08:00
streamhsa 2f8d56e903 Resolved test issues 2016-02-10 20:01:16 +08:00
streamhsa 310023e273 Rename test hipInfo as hipGetDeviceAttribute 2016-02-09 13:19:32 +08:00
Ben Sander ce2fc0f7fe Test fixes:
- Remove reference to missing test.
- Add hipMemset back.
- Parse --gpu option to specify default starting GPU.
2016-02-08 22:55:23 -06:00
Ben Sander c482a3f456 in HIPCHECK, only run command once even if error occurs 2016-02-08 21:45:49 -06:00
Ben Sander 26854bb31c Fix HIP_PLATFORM detection 2016-02-05 07:15:46 -06:00
Sam Kolton afe45964ae Implementation of hipDeviceGetAttribute() 2016-02-04 17:39:27 +03:00