Rahul Garg
2b2ffaf599
Added hipDeviceGet function
...
Change-Id: I7c25bc24680589682af1b199072807523fc37f50
2016-09-02 12:25:50 +05:30
Ben Sander
af2dee92ab
add hipStreamWaitEvent on nvcc
2016-09-01 13:28:27 -05:00
pensun
4ed2035dd2
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
Evgeny Mankov
22dca6794d
[HIPIFY] CUDA Driver API porting to HIP : CUresult enum.
...
enum CUresult was merged with enum cudaError_t into single hipError_t.
Thus a majority of HIP error codes has a reflection to Driver's and RT's corresponding error code at the same time. For instance:
cuda2hipRename["CUDA_SUCCESS"] = {"hipSuccess", CONV_ERR, API_DRIVER};
cuda2hipRename["cudaSuccess"] = {"hipSuccess", CONV_ERR, API_RUNTIME};
There are a few CUDA return error codes which are RT or Driver specific. For instance:
cuda2hipRename["CUDA_ERROR_INVALID_CONTEXT"] = {"hipErrorInvalidContext", CONV_ERR, API_DRIVER};
cuda2hipRename["cudaErrorInvalidMemcpyDirection"] = {"hipErrorInvalidMemcpyDirection", CONV_ERR, API_RUNTIME};
Matchers were changed from "cuda.* | cublas.*" to "cu.*" as CUDA API functions/types starts with 'cu'.
2016-09-01 18:54:03 +03:00
Aditya Atluri
f22fda1291
Fixed offline kernel compilation
...
1. Removed vcpy_isa.ptx as it should be generated during make
2. Made argument padding specific to hcc path
3. Renamed --gencodeobject to --genco
4. Changed Makefile to work on both nvcc and hcc path
Change-Id: Ifd053d541085d9ce4fd37bc21b07674786c7163e
2016-09-01 10:39:14 -05:00
Maneesh Gupta
b7b78d3b86
Fixed module_api/Makefile to set flags based on HIP_PLATFORM
...
Change-Id: I2fa9a556e0c4f25f4963ecef1d25eb922f9af1b9
2016-09-01 15:11:12 +05:30
Maneesh Gupta
1446ad3b92
Updates to gencodeobject generation logic
...
- hipcc honors HIPCC_VERBOSE for gencodeobject too
- fixed gencodeobject generation logic for nvcc path
- hipgenisa.sh is no longer passed the --gencodeobject flag
Change-Id: Iab83c18a6decef445fda8468ba5de10cd7935046
2016-09-01 15:06:36 +05:30
Rahul Garg
25f3032328
Added doxygen documentation for hipCtxXXX APIs
...
Change-Id: Id9cf3491e9a8c78cb7bfeb9976c36d6fe565628f
2016-09-01 12:22:37 +05:30
Maneesh Gupta
adcc0e32d2
hipgenisa.sh looks for hipcc relative to itself
...
Change-Id: Iac63fb5a87db1d735dbfa9697ce1f769a36b4d4a
2016-09-01 12:13:11 +05:30
Maneesh Gupta
9eeb6c31ae
Fix typo in hipcc
...
Change-Id: I35817c08b503f438f412d4bfe84afc11b671dc77
2016-09-01 12:11:11 +05:30
Maneesh Gupta
7c24b08284
module_api/Makefile: Use gencodeobject instead of genisa
...
Change-Id: I7e3523810f5603ad727b1fda7ff2d0dc53ec72d7
2016-09-01 12:10:31 +05:30
Rahul Garg
8de15914ae
Added context related difference note in hip_porting_driver_api.md
...
Change-Id: I5bd2884a16db51871baa7c19fa2bd63a0bd3adad
2016-09-01 11:35:42 +05:30
Rahul Garg
a949060b12
Added HIP_INIT_API to hipDeviceSynchronize()
...
Change-Id: I9bd6bf206905621b17e1999994b5ea09b7382180
2016-09-01 11:00:30 +05:30
Aditya Atluri
6cd10125e9
added device code offline compilation for nvcc
...
Change-Id: I1f77131778b4dcfcf720b4367dd9f18ffaf1cbb3
2016-08-31 20:36:36 -05:00
Aditya Atluri
bcbf2973a3
corrected path to hipgenisa.sh and fixed its working
...
Change-Id: I140055d5e800cd4b23253171ba889db5e63b637b
2016-08-31 20:16:48 -05:00
Aditya Atluri
667ec7cbe2
added sample for how-to-use pre-compiled kernels1. Corrected the exit output of kernel compilation by hipcc
...
2. Added sample which loads/run kernel binary during runtime?
Change-Id: I26ccaca1f844fee317592e26c9e654ce548b96a8
2016-08-31 13:56:07 -05:00
Aditya Atluri
6754587ed2
added how to use hipcc for kernel compilation
...
Change-Id: If652316272f21b90516f5a5ed88c17f4f4e77fb0
2016-08-31 13:22:28 -05:00
Aditya Atluri
2f8b2fca6b
added kernel only compilation feature for hipcc
...
1. Added hipgenisa.sh file to compile kernel code to hsa code object
2. Changed hipcc to call hipgenisa.sh, making hipcc compiling the kernels
Change-Id: I976459c1ebb24343e1b1fe38b4c3a203f1adffa9
2016-08-31 13:05:57 -05:00
Aditya Atluri
6bfbf17fb6
added doxygen comments for hipModuleLaunchKernel
...
Change-Id: I8a52d2e62f4b7eea8e05d779b9fda49f0ac45130
2016-08-31 10:18:46 -05:00
Rahul Garg
e0c5ad6ff6
CUresult to hipError mapping updates
...
Change-Id: I602a70acda798a47ebbbef84b438b21c399821c3
2016-08-30 15:55:51 +05:30
Aditya Atluri
7fdebfb8e3
remove HIP_INIT_API from ihipSynchronize
...
Change-Id: Ibe0739efe55573c023212d9c28ba847c777e434c
2016-08-29 21:42:22 -05:00
Aditya Atluri
cfac62f7e6
Added HIP_INIT_API for all context apis
...
Change-Id: I3dd8c068236d9572659a58683fdb59d2b9dccaf3
2016-08-29 21:36:34 -05:00
Aditya Atluri
d87bfd425c
Added doxygen comments for module apis
...
Change-Id: I1825249bf91efe7d058f9026a82ec47855759c98
2016-08-29 21:24:19 -05:00
Ben Sander
6fd03dde79
Add guideline for HIP_INIT_API
...
Change-Id: Ib8fa1e952f31158e9435dfc37ff23db9fda6fd7e
2016-08-29 18:40:23 -05:00
Ben Sander
a03a71badd
Update supported API list
...
Change-Id: Idbc941e4464d200aca7ac3382060edc08ab94ef2
2016-08-29 18:39:50 -05:00
Ben Sander
fa9b95838a
Refactor trace code for hipLaunchKernel.
...
- Use standard print functions for streams.
- Add HIP_INIT macro, for cases where we want to initialize HIP but not
log an API (ihipPreKernelLaunch).
Change-Id: If43cf8a363d918bcd3722a2e6a965d4cfa2e03e7
2016-08-29 18:37:57 -05:00
Ben Sander
eb61114739
remove stray printf
...
Change-Id: Ie64778a83dfe684ffaab3c31bc3d09b713f825b9
2016-08-29 18:36:30 -05:00
Aditya Atluri
5dc94eb45d
added docs to how to use hipModuleLaunchKernel
...
Change-Id: I626241552c69cdae56501371374ca8f2c6776c85
2016-08-29 15:38:04 -05:00
Aditya Atluri
fa86d293bf
added sample to porting driver guide
...
Change-Id: Ia2b54311cec617e5e2a162fd31415c8caad4a374
2016-08-29 15:25:35 -05:00
Aditya Atluri
5d3c72a7ff
added hipInit for cuInit nvcc path
...
Change-Id: I594d08d936ac5d06f16e42c63062ac5776b65a0c
2016-08-29 15:20:09 -05:00
Aditya Atluri
fb0c432095
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
2016-08-29 15:05:12 -05:00
Aditya Atluri
1673bdefec
added sample for module api which works on both cuda and rocm
...
Change-Id: Id88abb3698a224177fd0531e3e16013dde6dd95e
2016-08-29 15:00:26 -05:00
Ben Sander
d76372a049
Doc update. Describe memcpytosymbol, threadfence_system workarounds
2016-08-29 13:45:20 -05:00
Aditya Atluri
645975a05b
Fixed nvcc path for module apis
...
Change-Id: I43c7a6bc226f4f270c37f3c4af86b3b3efd0b175
2016-08-28 22:50:44 -05:00
Aditya Atluri
71991ed8f8
Cleaned up module api
...
- Moved HIP_INIT_API from internal to all public apis
- renamed hipLaunchModuleKernel to hipModuleLaunchKernel
- Changed tests according to the changed api
Change-Id: I822ff63c7c5b7dad340ece49456baf9d89428e9f
2016-08-28 16:48:57 -05:00
Ben Sander
46c3ff52a6
Remove cutnpaste check on uninitialized hsa status
...
Change-Id: Icc0256b9b1bd01d45cca4feb1106cfe7427bcd15
2016-08-28 16:35:27 -05:00
Ben Sander
f7ee14e637
Remove deprecated message from hipLaunchModuleKernel
...
Change-Id: I87675453ae4363e3340a9d1491bb00543fa8c6e0
2016-08-28 16:34:34 -05:00
Aditya Atluri
5e7c396bcd
added memset and memcpy device functions
...
- Added memcpy and memset device functions
- Added test for memcpy and memset
Change-Id: Icd21a8dd964953b86d5e92889bf1664bee647219
2016-08-27 11:13:56 -05:00
Aditya Atluri
f722a132a4
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
2016-08-26 13:11:01 -05:00
Ben Sander
8b8181df41
Add docs on porting driver API
2016-08-26 10:46:39 -05:00
Ben Sander
8d02cf466f
Doc update to clarify supported / unsupported features
2016-08-26 10:46:39 -05:00
Aditya Atluri
74a8fb132d
Added NVCC support and name changes
...
- Added NVCC support for module APIs
- Changed hipFunction and hipModule data types to hipFunction_t and hipModule_t
- Created new intenal ihipModuleGetFunction as it is used twice
- Changed test to match with the new data types
Change-Id: I300a1c7fd40ed7065b1b8b9de97e3a06b96ed729
2016-08-26 10:32:01 -05:00
Rahul Garg
452108b0e6
Added logic to update primary ctx when ctx stack is empty, updated hipCtxDestroy and ctxGetCurrent functions
...
Change-Id: Ia0a8943c121bc1279788a1cfa9be59af614b04a6
2016-08-26 19:03:23 +05:30
Rahul Garg
77991293ba
Resolved errors due to hipCtxXXX APIs
...
Change-Id: Iffac0095c4352864eca622ea318d2291571b5153
2016-08-26 15:32:49 +05:30
Rahul Garg
da80bf6326
NVCC path support for hipCtxXXX APIs
...
Change-Id: Ic7dbfbdaee9d00c0de1363c50758e5e29a96a8b2
2016-08-26 14:10:36 +05:30
Rahul Garg
a1d401336b
Addition of hipCtxEnablePeerAccess and hipCtxDisablePeerAccess functions
...
Change-Id: I381c8cbbde17eae7d9bb5d4cb1596cebf4bda039
2016-08-26 13:51:33 +05:30
Maneesh Gupta
0c051fede1
hipcc needs to link against supc++
...
Change-Id: Ica0949099a0bdfe2a493341dc1cd96ec93f34f11
2016-08-26 10:35:30 +05:30
Aditya Atluri
25be4fb532
Changed how hipEvent_t is typedefed internall
...
- Mapped hipEvent_t directly to ihipEvent_t* instead of a handle
Change-Id: I5a8bcca0ef962932e0738c03eb1fc914d23022ae
2016-08-25 14:34:41 -05:00
Aditya Atluri
f22a3189a3
Added hipModuleGetGlobal and hipModuleLoadData
...
Change-Id: Iaec873f7d86b72911b6ad32e067a4dfe3d552fe6
2016-08-25 14:16:53 -05:00
Evgeny Mankov
5cca5b3dca
clang-hipify: code refactoring - API (Driver/Runtime/Blas) distinguishing is added.
2016-08-25 19:36:37 +03:00