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

337 Коммитов

Автор SHA1 Сообщение Дата
Aditya Atluri 62ec53740c Added hipDeviceGetLimit api
1. hipDeviceGetLimit API for HCC path is added
2. Test for hipDeviceGetLimit API is added
3. The feature added only supports querying heap size
4. Corrected indents for malloc and free device functions
5. Removed redundant data structures
6. Added g_heap_malloc_size to store the heap size

Change-Id: If48d1b0ce9270e994f1c542cc283ddbb14746bbb
2016-10-12 19:58:48 -05:00
Aditya Atluri 7cd6ae9ff4 changed copyright to appropriate format
Change-Id: I81488eb21243fd9dc9106290c06afaf65152b2ab
2016-10-12 19:14:17 -05:00
Aditya Atluri d24a7ef12b added malloc and free device functions
1. Added malloc and free device functions
2. Added test which check malloc and free functions
TODO: Need to add support for multiple device. Works only on one device (multi device support id NOT available).

Change-Id: Id11fc36463915d6ad46c264d5a20c8feb2d2c17c
2016-10-12 19:08:34 -05:00
Aditya Atluri 3c4af7c371 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
2016-10-11 13:29:46 -05:00
Aditya Atluri 6952b59401 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
2016-10-11 12:09:58 -05:00
Aditya Atluri dc1042ce6d added threadfence feature for hcc
1. Added feature for __threadfence and __threadfence_block
2. Added feature for using LLVM IR files directly while compilation
3. Added test for threadfence and threadfence_block

Change-Id: Ib7e5d89b4cca1a135952b317e5809cd05b56a3c9
2016-10-10 15:29:50 -05:00
Maneesh Gupta 7c943ef20a Add back deprecated hipHostAlloc, hipMallocHost, hipFreeHost
Change-Id: Ib8494078c852b07e1958c3acc21fa1866542122c
2016-10-09 16:30:46 +05:30
Elias Konstantinidis 2bc541e15f Added support for __mul24 and __umul24 2016-10-06 09:29:36 +05:30
Ben Sander dee364cb08 Add DISABLE_COPY_EXT option. 2016-10-05 12:18:42 -05:00
Ben Sander b4a783efa1 Don't save error status on ihip function. 2016-10-05 12:18:42 -05:00
Ben Sander 821080487a Add HIP_BLOCKING_SYNC environment var to control stream sync behavior. 2016-10-05 12:18:42 -05:00
Maneesh Gupta b951cc99ed Move include/* to include/hip/*
Change-Id: I7a7b2839b4df59c7a4c503550f99fdc9e45c0f54
2016-10-04 22:17:18 +05:30
Ben Sander 4ff6dc8f38 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
2016-09-27 15:45:40 -05:00
Ben Sander 6de9136002 Add debug option to print ThreadID with each message.
Also print messages with single fprintf to prevents threads from
interleaving.

Change-Id: Ib3999fe6b1e67b4a16cd7dcde82f3dfc99dd48ff
2016-09-27 15:45:40 -05:00
Aditya Atluri 5b45c97a30 Fixed hipDeviceGetAttribute
1. Added negative test for hipDeviceGetAttribute
2. Fixed hipDeviceGetAttribute if int ptr input is null

Change-Id: I0e31f50fa407701fddf96e4eb64a87a371ff5d95
2016-09-27 13:33:42 -05:00
Aditya Atluri 1b14393a85 added more device negative testing
1. Added fallback for nullptr to hipGetDeviceProperties and hipGetDeviceCount
2. Added negative tests for hipGetDeviceProperties and hipGetDeviceCount

Change-Id: Iac93fd53d7d4794fb10546ddadf6ca802b047c87
2016-09-27 13:04:35 -05:00
Aditya Atluri 3e64222184 fallthrough if deviceId pointer is null
Change-Id: I924996d60d0286a7be1d18881ee733459de2981c
2016-09-27 11:47:58 -05:00
Ben Sander 225e37fdc9 Fix signal resource issue.
Remove memory leak with new hc::completion_future.
Implement HIP_LAUNCH_BLOCKING with queue-level wait.

Change-Id: I45975f81c4d239fdeed7776970988d28449865dc
2016-09-26 16:47:32 -05:00
Rahul Garg daef1d2906 Removed deprecated hipHostAlloc
Change-Id: Ia592a3545c5d72f37e049ce29f910e404323c01c
2016-09-26 10:58:46 +05:30
Rahul Garg 6790ff6b11 Removed deprecated hipMallocHost
Change-Id: I3141fe05a34b6a306297a30721509965f49ccb97
2016-09-26 05:52:21 +05:30
Rahul Garg 7b87a972cb Removed deprecated hipFreeHost
Change-Id: I9747ea3993090e0da6a2e1f5e9ce318762bc03e1
2016-09-26 05:35:14 +05:30
Ben Sander c769abcbeb 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.
2016-09-22 14:21:19 -05:00
Ben Sander ff28ff1509 Fix HIP_INIT_API and ihipLogStatus calls 2016-09-22 14:21:19 -05:00
Ben Sander c645e53fdd Remove unpinned_copy code. Other cleanup.
Change-Id: Ie3f71439cf1ba729ef223d078917c403d3de879a
2016-09-22 14:21:19 -05:00
Ben Sander e0ce1d3954 Cleanup. Remove cfs, ihipSignal_t, staging buffer calls.
Change-Id: I8bb67c484e3a65be06a03665f059217930da2bed
2016-09-22 14:21:19 -05:00
Ben Sander 12cb1d88aa Cleanup: Remove HIP signal pool.
Change-Id: Icebfd0509d12396cc5933d5556d68b53e1be36e0
2016-09-22 14:21:19 -05:00
Ben Sander 7530fa6dbe Remove HIP command dependency tracking.
Change-Id: I991c13bc5108193959ba70f9f6f9c692c9ad3a5b
2016-09-22 14:21:19 -05:00
Ben Sander 8c4cecf367 Cleanup, remove preCopyCommand.
Change-Id: I3768d3789a99be8136b43179d4152fa1875665cb
2016-09-22 14:21:19 -05:00
Ben Sander 9c9b0ab555 Change HIP async copy to call av::copy_async.
Change-Id: I4274b63ced3940d5249c32bd9d156296529c70e8
2016-09-22 14:21:19 -05:00
Ben Sander da44f3f907 Use HCC's synchronous accelerator_view::copy
Replace large block of HIP code with a call to HCC av::copy().

Change-Id: Ic32e1801cf8d4cd116ac02b72c41b1a1e4b6065c
2016-09-22 14:21:19 -05:00
Ben Sander e843d8cb51 Remove USE_AV_COPY, USE_PEER_TO_PEER fallback paths.
Change-Id: I9c20173e62029c4caebabc98784c6d7697758e4f
2016-09-22 14:21:19 -05:00
Ben Sander ccc1bbe6b1 Remove HIP_STAGING_BUFFER
Code simplification/cleanup:
Remove stale fallback paths that uses something besides the unpinned engine.
Remove HIP_STAGING_BUFFER env var - now is const 2, 0 no longer has
special meaning.

Change-Id: I7d24cdd1067dd0c244e87b6a83897cb135d307e7
2016-09-22 14:21:18 -05:00
Ben Sander a352ee923e Fix bugs for different CopyModes
Change-Id: Ie59fb3b36a9ff2de178307a6d5756b5c71e0306b
2016-09-22 14:21:18 -05:00
Ben Sander 442d74f027 Move isLargeBar to UnpinnedCopyEngine constructor.
Change-Id: I7a7d3a40b1d4e0c6ec856658a6a70e5e70d287ce
2016-09-22 14:21:18 -05:00
Ben Sander e300cb4405 Refactor Staging Buffer CopyDeviceToHost
Use copyMode.  Embed algorithm selection inside the unpinned class.

Change-Id: Ic75fd5931717a3160904402794bbed3ccd445112
2016-09-22 14:21:18 -05:00
Ben Sander c532de9f5a Refactor staging buffer CopyHostToDevice.
- Move algorithm selection inside Unpinned class.
- Refactor function names.
- Use size_t for size threshholds.

Change-Id: Iac4de652ac9d49acbf527aa0849e388b8ecd8486
2016-09-22 14:21:18 -05:00
Ben Sander 83140f8423 Updates docs for hipHcc* functions, move to header 2016-09-22 13:05:47 -05:00
Aditya Atluri fb03e1c943 Fixed typo in function return
Change-Id: I8905bfdbc162815ac10c926e77a9bab432932c9c
2016-09-22 09:30:05 -05:00
Rahul Garg bfc033cc3e Added hipRuntimeGetVersion function
Change-Id: I59ec2beacb5a94439deed0dcc8eb37d6de1cc900
2016-09-22 15:21:23 +05:30
Rahul Garg ffd49cfa37 Added return error code hipErrorInvalidValue in hipMemGetInfo
Change-Id: If01b012136b655ff8eb4878eb703dfe3e6a36530
2016-09-17 23:54:20 +05:30
Maneesh Gupta 3d85cd0ce5 Updates to doxygen documentation for HIP Event APIs
Change-Id: Ic2e4a5725aebca14ac824da43436aacd0fe0a45c
2016-09-16 15:06:54 +05:30
Rahul Garg 76949b6374 Partial updates of error codes for Memory APIs
Change-Id: If924867cc62f56dc9eaf81f5499ba66f417c393a
2016-09-16 12:59:41 +05:30
Rahul Garg 13e88c54d7 Added further properties in hipChooseDevice
Change-Id: I8f7f5800e8a95873318a534f09e75e037ad31b06
2016-09-16 11:18:34 +05:30
Aditya Atluri 7407cb2600 added more error codes to hipErrorGetString
Change-Id: I80c675905d94813502040fd0caa07985fa8c7dcc
2016-09-15 11:28:18 -05:00
Aditya Atluri 8110f562ab added new error reporting case
Change-Id: I5f0a37dbe396412f5602d04df19d538e451c2696
2016-09-15 10:50:26 -05:00
Rahul Garg 1b2361ff22 Updated Doxygen related documentation for Error APIs
Change-Id: I16873503d8e96df91831e2a0503835a1ff0220e3
2016-09-13 16:54:46 +05:30
Aditya Atluri 2d5140cb27 Added async memcpy driver api
Change-Id: I90e8a078d668a408e79f9e1142e7534771467a4f
2016-09-09 10:21:52 -05:00
Maneesh Gupta 51f25f9271 Remove redundant API hipDeviceGetFromId from HCC path
Change-Id: Id6b4f1374b12cb3949d725f0859425cd8de6d868
2016-09-09 12:06:19 +05:30
Aditya Atluri f03570d8cc Added signal management which passes stress tests
Change-Id: I7e1660a8ca2c5ee580a91f76eae9a58ca49f0457
2016-09-08 14:52:51 -05:00
Rahul Garg a52cb887c2 Removed return code related doxygen from hip_device src file
Change-Id: Iffe51b69dd6be064b7898d06e537a505e27edb0b
2016-09-08 23:12:12 +05:30