Gráfico de Commits

872 Commits

Autor SHA1 Mensagem Data
Ben Sander fca1b367da Add hipEvent_t to vim syn
Change-Id: Iade4aa123e72ada39028543890957cec03dd7a2e
2016-09-02 09:46:59 -05:00
Ben Sander 43e9932196 Fix av::copy in dialects to use capture-by-value
Change-Id: Ibce1488a1326f66b92b4d5b351230666b691ed31
2016-09-02 09:46:59 -05:00
Ben Sander 9a99000a62 Use create_blocking_marker for WaitEvent implementation
Change-Id: Ib3113f69a14e48b9fe0558d7b455148e478d8eed
2016-09-02 09:46:59 -05:00
Ben Sander 8a4900b679 improve debug for event
Change-Id: If6c0e25729d9964cbe5967833247a6d791d575a0
2016-09-02 09:46:59 -05:00
Ben Sander 02f65a483c 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
2016-09-02 09:46:59 -05:00
Ben Sander 27b3706a72 enable hc_am example in hcc_ddialects example
Change-Id: Iec2f9eb05f95cb025c157fee8fd284aab844d1a2
2016-09-02 09:46:59 -05:00
Ben Sander 6a8ae733cc enable dynamic shared always
Change-Id: Idc246546f583a82489ef34d1fe22d0e118b1e0ed
2016-09-02 09:46:59 -05:00
Aditya Atluri 3fbe062008 added logger for return status
Change-Id: Ib93012a15b1cfa90714a6ebd5153cc40e28e6566
2016-09-02 09:44:00 -05:00
Aditya Atluri af86d28187 fixed code according to convention
Change-Id: Ib90c84a30ea6da3531e8b7c3e281dd4b31915198
2016-09-02 09:31:37 -05:00
Ben Sander bc489dd902 Documentation review and update
Change-Id: If40d096646014d70a198db3532758028abe6a93f
2016-09-02 09:15:49 -05:00
Evgeny Mankov 000f0f8114 [HIPIFY] CUDA Driver API porting to HIP : types are added.
CUdevice           -> hipDevice_t // Yet under discussion
CUdevice_attribute -> hipDeviceAttribute_t
CUdevprop          -> hipDeviceProp_t
CUfunction         -> hipFunction_t
CUfunc_cache       -> hipFuncCache
CUsharedconfig     -> hipSharedMemConfig
CUcontext          -> hipCtx_t
CUmodule           -> hipModule_t
CUevent            -> hipEvent_t
CUstream           -> hipStream_t
2016-09-02 16:31:46 +03:00
Rahul Garg 093569e611 Removed Doxygen return codes from source file
Change-Id: Iaf9f13df73a9c17c494c9ff67203b836ee90648d
2016-09-02 18:37:26 +05:30
Rahul Garg 302f6c1e3a Added hipDeviceTotalMem
Change-Id: I877fbc9e4767bbd70ecd0184f5123c9bc6cbd06f
2016-09-02 15:12:50 +05:30
Maneesh Gupta 672e8772a2 hip_base package: bundle cmake folder in package
Change-Id: I7f30469242a0357c68b9a27b7b18bbe1f1f15fc1
2016-09-02 15:09:05 +05:30
Maneesh Gupta 6396f07835 CMakeLists.txt: install cmake folder
Change-Id: I5367281c62529b4b832c77ea93e3994a5f9133f4
2016-09-02 15:08:36 +05:30
Maneesh Gupta de24b6d228 FindHIP: First version of re-implementation
Change-Id: I84332a0f7d89271bf9370dbcd19d893119e738f9
2016-09-02 15:07:33 +05:30
Rahul Garg 392860bf20 Added hipDeviceComputeCapability, hipDeviceGetPCIBusId and hipDeviceGetName
Change-Id: Ibe2d975df796712633900ddc7b0734ec2b8ab4ec
2016-09-02 14:45:53 +05:30
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