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

78 Коммитов

Автор SHA1 Сообщение Дата
Aditya Atluri c6969c157a Added initial support for hipMemcpyFromSymbol. But not working!
Change-Id: I48d8c7de4ec9f85c6c942be995fb488a3931f5d7


[ROCm/hip commit: 2e245ae58c]
2017-02-23 11:29:06 -06:00
Aditya Atluri d24435ea9b added runtime api hipMemcpyFromSymbolAsync
Change-Id: Ibaf925faf0ba464dd0ed6c5ea74c224c2ce38889


[ROCm/hip commit: 639fd4dd5e]
2017-02-22 19:16:35 -06:00
Aditya Atluri afb38e15de fixed symbol memcpy issue
Change-Id: I89d7401be51d194bcbf771020ba66e3d3b6a18f8


[ROCm/hip commit: 2790e9a448]
2017-02-01 17:54:59 -06:00
Ben Sander f9ecf383e3 Add debug tips to docs
[ROCm/hip commit: 96eac67929]
2017-01-23 22:34:41 -06:00
Ben Sander 7a402a7fb1 Add HIP_SYNC_HOST_ALLOC, HipReadEnv
[ROCm/hip commit: 927ac3d81c]
2017-01-19 23:55:24 -06:00
Aditya Atluri 5de29029cd changed copyright year from 2016 to 2017 in src directory
Change-Id: Idb97db509b2b4b1656b2df7a14a62ade38c9d574


[ROCm/hip commit: 73fcce26f9]
2017-01-11 18:05:41 -06:00
Ben Sander 1908d9504b Add HIP_MAX_QUEUES feature.
Includes some tricky manipulation of the locks for contexts and streams.
issue is that stealing a stream requires we lock the context to
walk the streams to find a victim.  To avoid deadlock, we can't
have a stream locked when we lock the context.  This implementation
releases the stream lock, then acquires the context and selects the
victim.
A more stable implemenation might be to copy the stream list
from a context so that a lock is not required to walk all streams.
Smart shared_ptr could be used to prevent the streams from being
deallocated during the walk.


[ROCm/hip commit: a3e0012567]
2017-01-09 21:02:56 -06:00
Ben Sander bbb1485a83 First pass at virtualized queue support.
Also updated stream debug messages to consistently use trace_helper.


[ROCm/hip commit: 93fbc9cf7b]
2017-01-09 21:02:53 -06:00
Rahul Garg 2e9defbef8 Added state for hipDevice.
Change-Id: Idbc3c04cd054a01b634856a1e0a23ff172e991aa


[ROCm/hip commit: 5fb09879c7]
2017-01-09 23:54:01 +05:30
Ben Sander ec4f4a643d Support size_t in memset kernel.
Add disable for HSA_AMD_AGENT_INFO_MAX_WAVES_PER_CU
Remove one copy of completion_future in memset.


[ROCm/hip commit: c325c988b1]
2016-12-22 12:25:09 -06:00
Ben Sander 1a7ecbcd04 Add USE_IPC to disable use of IPC APIs. Set to 0.
[ROCm/hip commit: b30e4b4781]
2016-12-13 15:07:04 -06:00
pensun f6d6861ad4 HIP IPC implementation on ROCr IPC APIs
Change-Id: I1ca9d520f5d0b1b56694211471b81eb7c6c23d16


[ROCm/hip commit: a53d35fd6c]
2016-12-07 15:38:36 -06:00
pensun 6d2bf52f9f IPC prototyps and part of the implementation included
Change-Id: Id88c7f155d23ec63f57a6ef05098fba43f8af336


[ROCm/hip commit: 17b98d59b8]
2016-12-06 14:24:09 -06:00
pensun 2b557e949e local changes for hipnccl
Change-Id: I05a1f0381ce2914a800f573342cc954eb5ff82d9


[ROCm/hip commit: eba2595611]
2016-12-06 14:22:02 -06:00
Ben Sander ce01d26a87 Add additional controls for forcing serialization and blocking.
Move HIP_COHERENT_HOST_ALLOC so it is read once at init time.
Add HIP_LAUNCH_BLOCKING_KERNELS, HIP_API_BLOCKING.
Update docs on debug and chicken bits.

Conflicts:
	src/hip_hcc.cpp


[ROCm/hip commit: ff2f54c1bf]
2016-12-02 18:03:59 -06:00
Rahul Garg a523bc5632 Added support for hipMemGetAddressRange
Change-Id: I99a796a4eb765152cf15a12d6a86b58684d34f50


[ROCm/hip commit: fe6ba656c9]
2016-11-29 22:04:09 +05:30
Maneesh Gupta 2234b57513 Refactor for building HIP as dynamic library
Change-Id: I65a3d9d589c4fdbbdcf1611e5427224253be8260


[ROCm/hip commit: c0419cc749]
2016-11-18 14:33:20 +05:30
Aditya Atluri 7192577e38 added texture header to memory api source
Change-Id: I1af6d60aca5a9a9ef1cadf8c304bea892acbe061


[ROCm/hip commit: c20c524400]
2016-11-17 11:57:53 -06:00
pensun a446102fcc Add direct test case for threadfence_system workaround
Change-Id: I5b21b590e957c901044741ac94e816cd8b1426f9


[ROCm/hip commit: 50867efa10]
2016-11-11 15:09:43 -06:00
Ben Sander e0ef3bb319 Refactor copy and P2P logic.
Prefer use of source-engine for DMA copies, even if user submits copy
in a stream attached to a different device.
The stream is now used only for synchronization, and HIP
makes the most optimal decision for which engine to perform the
copy - typically the source copy engine.

HIP now makes decision on which engine should perform the copy
and passes this to HCC using new apis.
HIP has additional information about peer
visibility and will make a decision which agent should perform
the copy .

Change-Id: I0cf4cfebeae256e6ca795f08a7ed7130f4857d1f


[ROCm/hip commit: ced9d72d94]
2016-11-10 23:12:48 -06:00
Ben Sander 67a305ec9e Improve memory debug
Change-Id: I0f033139aa4e4b47039eb016e404009127bd0a44


[ROCm/hip commit: 2dea3a0b1a]
2016-11-10 23:12:48 -06:00
pensun bbd526b7e5 resolve conflicts for git pull
Change-Id: Ie353b831e2241bc28042069b6cc7405257e871e1


[ROCm/hip commit: 4d7ac1e091]
2016-11-09 21:38:43 -06:00
pensun 74b0840cc6 Add option to alloc fingrained system memory
Change-Id: Ia13c8e058cb988b5857e75a590a4d67411362ae1


[ROCm/hip commit: f7e9f12bf1]
2016-11-09 21:36:30 -06:00
Ben Sander 2a9aa89491 Set forceHostCopyEngine for other copy dirs. Support HIP_FORCE_P2P_HOST
Also: more debug for copy and P2p.

Change-Id: I87030c525410e041b2a00baaf6c68e6c0977ff42


[ROCm/hip commit: 092b3dacda]
2016-11-04 19:53:23 -05:00
Ben Sander 04691cdff8 Don't call allow-access if allocating device's only peer is self.
Change-Id: Iac58e6c3e460675833f10b1e8b2e393de223654d


[ROCm/hip commit: 354091f357]
2016-10-27 23:09:31 -05:00
Rahul Garg eb8bcfaebe Quickfix for HCSWAP-60, support for hipHostMallocPortable
Change-Id: I2a4fcacea9d916ef222324fc9e9d8191f6dc12d0


[ROCm/hip commit: cd6eb7af78]
2016-10-20 10:44:30 +05:30
Ben Sander c11b6f511b Move some internal headers from "include/hip/" to src.
Change-Id: I7041bd5c803d9318979f4a7c1d658445c614691e


[ROCm/hip commit: 9315ac1a29]
2016-10-18 22:27:16 -05:00
Maneesh Gupta dd60b971d1 src/*: Update copyright header
Change-Id: I455f5d0d12fe9cb39a3ba873bd22b4c25ed07cbf


[ROCm/hip commit: 8471682f26]
2016-10-15 22:55:22 +05:30
Aditya Atluri c75674e24c changed copyright to appropriate format
Change-Id: I81488eb21243fd9dc9106290c06afaf65152b2ab


[ROCm/hip commit: 7cd6ae9ff4]
2016-10-12 19:14:17 -05:00
Aditya Atluri 62e25cc961 added more changes to memcpytosymbol
1. Refactored code to use HCC internal APIs rather than HCC copy APIs
2. Added hipMemcpyToSymbolAsync
3. Added test for hipMemcpyToSymbolAsync
4. Added new error hipErrorInvalidSymbol

Change-Id: I0e359b2d0ff5d682bbccdf9c2923e16b35e39497


[ROCm/hip commit: 3c4af7c371]
2016-10-11 13:29:46 -05:00
Aditya Atluri 3cddc50058 Added feature for memcpy to Symbol
1. Currently works only for __attribute__((addrspace(1))
2. Need to pass in string for name of the variable
3. Added test to check functionality

Change-Id: I4c3cc1bf151cb5423e4aef59fcc4ad5693b31641


[ROCm/hip commit: 6952b59401]
2016-10-11 12:09:58 -05:00
Maneesh Gupta eebcf24ee0 Add back deprecated hipHostAlloc, hipMallocHost, hipFreeHost
Change-Id: Ib8494078c852b07e1958c3acc21fa1866542122c


[ROCm/hip commit: 7c943ef20a]
2016-10-09 16:30:46 +05:30
Maneesh Gupta fc58842fcf Move include/* to include/hip/*
Change-Id: I7a7b2839b4df59c7a4c503550f99fdc9e45c0f54


[ROCm/hip commit: b951cc99ed]
2016-10-04 22:17:18 +05:30
Ben Sander 7fc988bc45 Refactor asyncCopy and syncCopy to fix deadlock case.
- Minimize time that locks are held.
- Eliminate copy code that locked stream and ctx at same time.
    - Stream was locked to ensure thread-safe enqueue to the queue.
    - Devices were locked to query peer-lists.

Change-Id: Ibe8880bb7fb995a3da8f90ff911f212d81525018


[ROCm/hip commit: 4ff6dc8f38]
2016-09-27 15:45:40 -05:00
Ben Sander 0dadf681db Fix signal resource issue.
Remove memory leak with new hc::completion_future.
Implement HIP_LAUNCH_BLOCKING with queue-level wait.

Change-Id: I45975f81c4d239fdeed7776970988d28449865dc


[ROCm/hip commit: 225e37fdc9]
2016-09-26 16:47:32 -05:00
Rahul Garg ccf9b08949 Removed deprecated hipHostAlloc
Change-Id: Ia592a3545c5d72f37e049ce29f910e404323c01c


[ROCm/hip commit: daef1d2906]
2016-09-26 10:58:46 +05:30
Rahul Garg d304ad4e1f Removed deprecated hipMallocHost
Change-Id: I3141fe05a34b6a306297a30721509965f49ccb97


[ROCm/hip commit: 6790ff6b11]
2016-09-26 05:52:21 +05:30
Rahul Garg 8f68e34442 Removed deprecated hipFreeHost
Change-Id: I9747ea3993090e0da6a2e1f5e9ce318762bc03e1


[ROCm/hip commit: 7b87a972cb]
2016-09-26 05:35:14 +05:30
Ben Sander a6f28e1708 Peer-to-Peer improvements.
- Bug fix for peer visibility.  Now contexts correctly detect when they can use SDMA for P2P vs staging buffers.
- Interface to new HCC copy_ext function.
- Improve context and peer print /debug options.
- Add comments and usage to hipPeerToPeer_simple test.


[ROCm/hip commit: c769abcbeb]
2016-09-22 14:21:19 -05:00
Ben Sander f028a2e833 Updates docs for hipHcc* functions, move to header
[ROCm/hip commit: 83140f8423]
2016-09-22 13:05:47 -05:00
Rahul Garg fbad743243 Added return error code hipErrorInvalidValue in hipMemGetInfo
Change-Id: If01b012136b655ff8eb4878eb703dfe3e6a36530


[ROCm/hip commit: ffd49cfa37]
2016-09-17 23:54:20 +05:30
Rahul Garg 736e4e13bd Partial updates of error codes for Memory APIs
Change-Id: If924867cc62f56dc9eaf81f5499ba66f417c393a


[ROCm/hip commit: 76949b6374]
2016-09-16 12:59:41 +05:30
Aditya Atluri 0700892c0c Added async memcpy driver api
Change-Id: I90e8a078d668a408e79f9e1142e7534771467a4f


[ROCm/hip commit: 2d5140cb27]
2016-09-09 10:21:52 -05:00
Ben Sander 1edcb06701 hipStreamWaitEvent update.
Add passed to hipStreamWaitEvent test.
Fix pointerAttrib test to work with new and old HCC versions.
Minor code touchup.

Change-Id: I139ba6ce9f6bf2b4bee89aebdec5981b4346ffc0


[ROCm/hip commit: 0923c2d261]
2016-09-02 09:46:59 -05:00
Ben Sander bb0afa4e38 Refactor for stream->_av.
- move _av into stream critical section.  ( HCC accelerator_view is not
  thread-safe but HIP steram is. )
- Refactored many places in code that need to acquire critical section.
some were previously thread races, ie enqueueing marker.

-remove support for GRID_LAUNCH_VERSION < 20
-Enable USE_AV_COPY based on HCC work-week.
- Review hipModule docs, some calrity/editing.

Change-Id: I3ce7c25ece048c3504f55ecd4683e506bb1fc8b6


[ROCm/hip commit: e76a272d48]
2016-09-02 09:46:59 -05:00
pensun 6824b3af6d Modify hipMalloc to take size of 0 and return NULL pointer for it.
Modify hipMemoryAllocate test for this change.

Change-Id: I884aee0cd5fe0c60aebb4cb37cdbb4833c5bd0c7


[ROCm/hip commit: b726f0e949]
2016-09-01 13:08:30 -05:00
Ben Sander 694dcd1683 remove stray printf
Change-Id: Ie64778a83dfe684ffaab3c31bc3d09b713f825b9


[ROCm/hip commit: 8fb076f5c4]
2016-08-29 18:36:30 -05:00
Aditya Atluri dd8f451428 Changed module api to work with nvcc and hipcc path
- Added cuda and cudart linking for nvcc path in hipcc
- Added hipMemcpyHtoD and hipMemcpyDtoH for nvcc path
- Changed hipDeviceptr to hipDeviceptr_t
- Fixed hipMemcpy*to* API signatues

Change-Id: I6ef076b507f92502efda475c83dcdcdd462afc37


[ROCm/hip commit: 4b377f63d0]
2016-08-29 15:05:12 -05:00
Aditya Atluri 2efa60a37e Added explicit memory copy direction apis
- Fixed stale printf in context api
- Added 4 sync memcpy apis
  1. hipMemcpyHtoD
  2. hipMemcpyDtoH
  3. hipMemcpyDtoD
  4. hipMemcpyHtoH
- Added test for added apis

Change-Id: I4a9c382445b62631f8d0bcbb9a670322288b72b1


[ROCm/hip commit: 4152746e26]
2016-08-26 13:11:01 -05:00
Ben Sander 28db2f79ba Code cleanup, use camelCase where appropriate.
Change-Id: I5a7ec50df8bbb3e7a3b313c0b12e2dd55ae4a09c


[ROCm/hip commit: ed0a2c02fe]
2016-08-08 14:54:38 -05:00