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
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
d5c777268a
Track last command to a stream.
...
Passing simple tests.
2016-02-20 11:02:07 -06:00
Ben Sander
16ff0757a6
Describe how to update HTML docs
2016-02-19 01:56:17 -06:00
Ben Sander
866e64f6e2
remove extra :
2016-02-18 03:05:53 -06:00
Ben Sander
53f37712bd
Tweak version numbers
2016-02-18 21:29:51 -06:00
Ben Sander
2447067f27
Update release notes
2016-02-18 21:07:14 -06:00
Ben Sander
ad20273a1d
Search multiple dirs.
2016-02-18 21:07:14 -06:00
Ben Sander
8c3436e927
Update doxygen HTML
2016-02-18 21:02:39 -06:00
Ben Sander
3496398651
Update doxygen HTML
2016-02-18 20:43:03 -06: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
859208d6f0
hipInfo sample update with new Device Properties.
2016-02-18 15:08:55 +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
400dcb8bcb
Enable Tracker and ROCR by default, verify with HCC
2016-02-17 23:03:37 -06:00
Ben Sander
b08e468c06
Remove HIP-local AM tracker (now in HCC)
2016-02-17 21:33:32 -06:00
Ben Sander
354c9f945a
USE_AM_TRACKER=0 works
2016-02-17 21:23:36 -06:00
Ben Sander
d75279c8eb
Tweak full formatting
2016-02-17 21:22:31 -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
5d721a2649
Add per-stream pool for hsa_signals.
2016-02-16 01:59:13 -06:00
Ben Sander
731a2a58d3
Add comments to tests
2016-02-16 01:58:24 -06:00
Ben Sander
1ed431c0f6
Update before checkin to HCC.
...
Add support for USE_AM_TRACKER=2 (HCC version).
Add AM_ALLOC, AM_FREE indirection to ease swapping AM implementations.
2016-02-15 21:16:00 -06:00
Ben Sander
bd7e3b83b9
Move warpSize to header, have shuffles use default warpsize.
2016-02-15 05:41:09 -06:00
Ben Sander
3b2d4acabc
Remove old include path.
2016-02-15 05:40:37 -06:00
Ben Sander
322a3bd9b2
Update docs, cleanup
2016-02-15 05:40:12 -06:00
Ben Sander
afbe451b0d
Fix tests to account for multi-gpu
2016-02-15 05:19:52 -06:00
Evgeny Mankov
763aa5ea5a
Formatting, no functional changes.
2016-02-15 13:16:05 +03: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
56b3d2e7c4
Enable -O3, style points on array size
2016-02-13 03:17:42 -06:00
Ben Sander
a002833a89
D2H multi-buffer
2016-02-13 01:15:23 -06:00
Ben Sander
8e3dd664eb
Result formatting
2016-02-13 01:14:01 -06:00
Ben Sander
1cd35f6371
Add D2H test
2016-02-12 22:47:26 -06:00
Ben Sander
81c275da13
Add D2H test
2016-02-12 22:46:34 -06:00
Ben Sander
ba7497b409
Add Bus Bandwidth test, leveraged from SHOC.
2016-02-12 21:30:43 -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
f2c1bf3bc0
Remove ! USE_PINNED_HOST support
2016-02-12 18:24:08 -06:00
Ben Sander
c04b5d3afb
Use memtracker 'appID' to store deviceID associated with ptr
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
Ben Sander
f1bc9af294
Fix bug in device bounds comparison.
...
Shows up in multi-GPU.
2016-02-12 18:24:08 -06:00
Maneesh Gupta
c82511258c
Documented supported fastmath functions
2016-02-12 14:21:58 +05:30
Maneesh Gupta
2659e70d48
Updated integer intrinsics documentation
2016-02-12 13:58:35 +05:30
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
1025341300
Device property maxThreadsPerMultiProcessor set equal to totalGlobalMem (HIP path).
...
Reason: maxThreadsPerMultiProcessor 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 maxThreadsPerMultiProcessor is reported.
2016-02-12 00:04:14 +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