Commit Graph

5361 Commits

Author SHA1 Message Date
Evgeny Mankov bf2b8a6373 [HIPIFY][doc] The latest cuDNN 7.6.4 is supported 2019-09-28 20:49:56 +03:00
Evgeny Mankov cdd1888293 [HIPIFY][perl] Code clean-up before continuing generation 2019-09-28 20:44:15 +03:00
foreman fa60a0083f P4 to Git Change 2005774 by kjayapra@3_HIPWS_P2P_ROCM2 on 2019/09/27 17:54:03
SWDEV-144570 - Adding extern var support for dynamically loaded modules for Texture reference.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#43 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_module.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#43 edit
2019-09-27 18:00:49 -04:00
foreman 34af69a76e P4 to Git Change 2005731 by vsytchen@vsytchen-hip-win10 on 2019/09/27 16:34:38
SWDEV-192384 - [HIP CQE][HIPonPAL][19.40] hipBindTexRef1DFetch, hipTextureRef2D are failed on all ASICs for both Win/Lnx

	1. Correctly set the image type for textures created from arrays.
	2. Allow creating any kind of image from a buffer.

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/18051/diff/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_texture.cpp#19 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#166 edit
2019-09-27 16:44:50 -04:00
foreman 87e901fcdc P4 to Git Change 2005676 by kjayapra@0_HIPWS_LNX1_ROCM on 2019/09/27 15:33:19
SWDEV-145570 - Accomadating Texture Header changes.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_texture.cpp#18 edit
2019-09-27 15:39:51 -04:00
Rahul Garg 6cfb65d11b Merge pull request #1457 from yxsamliu/launch2
Add new kernel launching API for hip-clang
2019-09-27 12:36:26 -07:00
foreman a00020106d P4 to Git Change 2005601 by gandryey@gera-hip-lnx on 2019/09/27 13:58:55
SWDEV-184709 - support hipLaunchCooperativeKernel()
	- Switch to the device library functions for GWS sync and init

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/make/hip.git/tests/src/runtimeApi/module/hipCooperativeGroup.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palschedcl.cpp#7 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#152 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocschedcl.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#87 edit
2019-09-27 14:07:19 -04:00
foreman 27098e82fe P4 to Git Change 2005583 by skudchad@skudchad_test2_win_opencl on 2019/09/27 13:25:25
SWDEV-199293 - Fix build on windows. Include header in hip_internal.hpp

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#42 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_rtc.cpp#7 edit
2019-09-27 13:31:58 -04:00
Evgeny Mankov 0d36e13ce9 [HIPIFY] Generate more hipify-perl (continuation)
+ Minor hipify-perl clean-up
+ Minor CUDA2HIP_Perl refactoring
2019-09-27 19:10:54 +03:00
foreman 93aca4f8dc P4 to Git Change 2005454 by michliao@hliao-dev-00-hip.rocm-workspace on 2019/09/27 08:45:19
SWDEV-199293 - Fix build

	- source code should be self-sufficient, i.e., including headers
	  directly referenced.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_rtc.cpp#6 edit
2019-09-27 08:55:43 -04:00
Yaxun (Sam) Liu f12b060a3b Add new kernel launching API for hip-clang 2019-09-26 20:15:24 -04:00
foreman 129333387a P4 to Git Change 2005049 by skudchad@skudchad_rocm on 2019/09/26 17:24:59
SWDEV-199293 - HIP_RTC inprocess implementation.

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/18014/diff/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#41 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_rtc.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hiprtc_internal.hpp#1 add
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.hpp#49 edit
2019-09-26 17:47:32 -04:00
Evgeny Mankov ff1699397b [HIPIFY] Add supported fp16 functions
+ Update hipify-perl accordingly
2019-09-26 18:13:20 +03:00
Evgeny Mankov fde2733451 Merge pull request #1467 from emankov/master
[HIPIFY][doc] Update README.md
2019-09-26 17:11:16 +03:00
Evgeny Mankov e5ed366bad [HIPIFY][doc] Update README.md
+ Testing, versioning
2019-09-26 17:08:29 +03:00
Sarbojit2019 db4c0c0811 [HIP] Add tccDriver info in hipDeviceProp
Fixes #1433.
2019-09-26 13:53:33 +05:30
foreman cd2abbb731 P4 to Git Change 2004245 by axie@axie_win_opencl_nvme on 2019/09/25 16:46:31
SWDEV-203855 - Segfault when using hipArrayCreate and hipMemcpyParam2D
	1. hipArrayCreate API implementation uses a wrong parameter to check width. That parameter can be null pointer because it is used to pass the pointer back to the caller.
	2. Implement hipMemcpyParam2D similar to HIP-HCC implementation. Reference: https://github.com/ROCm-Developer-Tools/HIP/blob/master/src/hip_memory.cpp

	Tests:
	1. PRE CHECK-IN build and test(no regression):  http://ocltc:8111/viewModification.html?modId=126608&personal=true&init=1&tab=vcsModificationBuilds
	2. GPU is VEGA10, OS is Windows 10, CPU is threadripper 1900x, run the test. There is not segfault or exit during hipArrayCreate and hipMemcpyParam2D function call.

	ReviewBoard: http://ocltc.amd.com/reviews/r/18037/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#72 edit
2019-09-25 16:53:50 -04:00
Evgeny Mankov 1db7c1d694 [HIPIFY][#1439] Add reinterpret_cast to args of some functions
+ Perl part of [#1458]
+ Affected functions: hipFuncSetCacheConfig, hipFuncGetAttributes
+ Implement function generateHostFunctions() in hipify-clang for that purposes
+ Update hipify-perl accordingly
2019-09-25 18:53:17 +03:00
Evgeny Mankov 76f2202abf [HIPIFY][perl] Get rid of obsolete warnings on cuBLAS and cuRAND 2019-09-25 17:37:41 +03:00
foreman 35c8a50c99 P4 to Git Change 2003445 by yaxunl@yaxunl-lc10 on 2019/09/24 16:56:01
SWDEV-145570 - Add new kernel launching API for hip-clang

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.def.in#28 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.map.in#27 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#41 edit
2019-09-24 16:58:14 -04:00
foreman 4f6bbfa473 P4 to Git Change 2003196 by kjayapra@0_HIPWS_LNX1_ROCM on 2019/09/24 10:48:45
SWDEV-144570 - Implementing some Texture APIs

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.def.in#27 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.map.in#26 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_texture.cpp#17 edit
2019-09-24 10:57:33 -04:00
Evgeny Mankov 7c62b1b2d0 [HIPIFY] HipifyAction refactoring
+ Merge of cudaSymbolFuncCall and cudaReinterpretCastArgFuncCall matchers into a single cudaHostFuncCall matcher
+ More const std::string declarations
+ Formatting
2019-09-24 10:33:51 +03:00
Evgeny Mankov cf467b4550 [HIPIFY][#1439] Add reinterpret_cast to args of some functions
+ Affected functions: hipFuncSetCacheConfig, hipFuncGetAttributes
+ Add a corresponding Matcher cudaReinterpretCastArgFuncCall
+ Add reinterpret_cast.cu test

TODO: Do the same for hipify-perl
2019-09-24 09:44:17 +03:00
Evgeny Mankov f7b3dcd6d7 [HIPIFY][doc] Return X86 target back in LLVM's cmake
Due to LLVM 9.0.0 release, which still needs X86 for NVPTX, LLVM trunk - doesn't.
2019-09-23 22:20:23 +03:00
Evgeny Mankov a13540b97a [HIPIFY][perl] CUDA2HIP_Perl code cleanup 2019-09-22 23:43:07 +03:00
Evgeny Mankov d6b0ab0fd2 [HIPIFY][perl] generateSymbolFunctions() small refactoring 2019-09-22 22:34:07 +03:00
Evgeny Mankov 72a658295f [HIPIFY][#1435][perl] Add HIP_SYMBOL wrapper to the templated Device Symbol argument of the following functions:
cudaMemcpyToSymbol, cudaMemcpyToSymbolAsync, cudaGetSymbolSize, cudaGetSymbolAddress, cudaMemcpyFromSymbol, cudaMemcpyFromSymbolAsync

+ Perl part of [#1441]
+ Implement function generateSymbolFunctions() in hipify-clang for that purposes
+ Update hipify-perl

TODO: Eliminate dim3() issue in hipify-perl as well
2019-09-21 07:33:17 +03:00
Evgeny Mankov 2a27572463 [HIPIFY][doc] Update README.md due to LLVM 9.0.0 release
+ LLVM 9.0.0 is latest stable release, no patches are needed
+ The latest CUDA 10.1 Update 2 is supported
+ Tested on Windows and Linux
2019-09-20 09:16:10 +03:00
Evgeny Mankov d4f8c6bc4b [HIPIFY][#1435] Add HIP_SYMBOL wrapper to the templated Device Symbol argument of the following functions:
cudaMemcpyToSymbol, cudaMemcpyToSymbolAsync, cudaGetSymbolSize, cudaGetSymbolAddress, cudaMemcpyFromSymbol, cudaMemcpyFromSymbolAsync

+ Add a corresponding cudaSymbolFuncCall matcher.
+ Add device_symbols.cu test for the above 6 functions, update existed.
+ Fix dim3() type cast issue, update affected tests.

TODO: Do the same in hipify-perl
2019-09-19 19:33:42 +03:00
foreman 13a5655710 P4 to Git Change 2000486 by vsytchen@vsytchen-remote-ocl-win10 on 2019/09/18 14:25:45
SWDEV-201925 - hipArray3DCreate() not available in HIP/PAL on Windows

	1. Implement hipArray3DCreate().
	2. Remove the array size calculation from hipArrayCreate() as it is not used.

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/18005/diff/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#71 edit
2019-09-18 14:29:25 -04:00
Evgeny Mankov a49f9924a7 [HIPIFY][#1437] Fix: cudaFuncGetAttributes to hipFuncGetAttributes is supported
+ Update hipify-perl and CUDA_Runtime_API_functions_supported_by_HIP.md accordingly
2019-09-18 17:57:31 +03:00
Evgeny Mankov 05d71d4b8b [HIPIFY] Add supported device functions (from device_functions.h)
+ [perl] Sync hipify-perl accordingly
2019-09-18 17:07:50 +03:00
Evgeny Mankov 774a6c5667 [HIPIFY][#1430] Build fix for LLVM < 8.0.0 2019-09-18 11:53:23 +03:00
foreman 06b563e59c P4 to Git Change 1999915 by cpaquot@cpaquot-ocl-lc-lnx on 2019/09/17 19:43:34
SWDEV-201128 - [HIP] test_snli_cuda failure
	Default to sync packet
	Make sure GPU_NUM_MEM_DEPENDENCY is 0 for HIP
	No sync packet is only used when there are mem dependency check

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_context.cpp#22 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#86 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.hpp#28 edit
2019-09-17 19:47:11 -04:00
Evgeny Mankov 33cd4dffd5 [HIPIFY] Add supported device functions (from math_functions.h)
+ [perl] Add generation of sub countSupportedDeviceFunctions
+ [FIX] Do not perform any replacement for supported device functions
+ [perl] Sync hipify-perl accordingly
2019-09-17 16:17:28 +03:00
foreman 72000beb84 P4 to Git Change 1998982 by cpaquot@cpaquot-ocl-lc-lnx on 2019/09/16 17:49:10
SWDEV-145570 - [HIP] Fix regression from new headers.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#23 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device_runtime.cpp#18 edit
2019-09-16 17:58:06 -04:00
Evgeny Mankov b43bb7d3c1 [HIPIFY][perl][fix] Treat ::device_function as a device function
+ Do not treat somenamespace::device_function_name as a device function
+ Fix generation of warnUnsupportedDeviceFunctions function in hipify-clang
+ Update hipify-perl based on hipify-clang -perl generation
+ Update device test math_functions.cu for hipify-perl

[Restrictions]
- hipify-perl is yet unable to handle function declarations in user namespaces
- hipify-perl is yet unable to handle using directive
2019-09-16 17:36:55 +03:00
Evgeny Mankov dd752e3d4e [HIPIFY] Fix build failure due to typo in [#1377] 2019-09-16 14:28:52 +03:00
mhbliao 4691c1ef8c [HIP] Remove a circular including. (#1418) 2019-09-16 08:32:47 +00:00
satyanveshd 842e304a9c Fix checks in hipMemcpy[D/H]to[D/H]() (#1397)
* SWDEV-202043 hipMemcpyDtoD() issue
2019-09-16 08:32:38 +00:00
AlexBinXie 313726a457 [hip]Skip test when hipHostMallocCoherent is not supported by implementation (#1380) 2019-09-16 08:31:43 +00:00
ansurya e2a934f377 Added new device attributes (#1377)
* Added new device attributes

* updated comment

* updated with new device attributes supported
2019-09-16 08:31:30 +00:00
Aryan Salmanpour 6c7da60e28 [hip] add initial support for hipLaunchCooperativeKernelMultiDevice API (#1368)
* [hip] add initial support for hipLaunchCooperativeKernelMultiDevice API

* fix formatting
2019-09-16 08:31:17 +00:00
Aryan Salmanpour 51c7fedd36 [hip][tests] add a unit test for testing hipLaunchCooperativeKernel (#1361)
* [hip][tests] add a unit test for testing hipLaunchCooperativeKernel

* use __ockl_grid_sync function

* remove already defined __ockl_grid_sync function

* use sync function for grid synchronization
2019-09-16 08:31:09 +00:00
Evgeny Mankov db2fee682b [HIPIFY] Scripting related refactoring
+ Move generating hipify-perl and hipify-python into separate namespaces and files
+ Move getAbsoluteFilePath and getAbsoluteDirectoryPath to StringUtils
2019-09-15 21:13:56 +03:00
Evgeny Mankov 422403a3ff [HIPIFY][perl] Syn with hipify-clang 2019-09-15 15:25:40 +03:00
Evgeny Mankov b69f7afa67 [HIPIFY][perl] Generate sub warnUnsupportedDeviceFunctions 2019-09-15 15:18:58 +03:00
Evgeny Mankov d05caef113 Merge pull request #1417 from emankov/master
[HIPIFY][doc] Update README.md
2019-09-13 18:58:22 +03:00
Evgeny Mankov 0416eaf12e [HIPIFY][doc] Update README.md
+ Adding -DLLVM_TARGETS_TO_BUILD="NVPTX" to LLVM's cmake command line for minimizing LLVM's build (tested)
+ Test logs update
+ Versions update
2019-09-13 18:56:48 +03:00
foreman 0aa24f6d4d P4 to Git Change 1997981 by cpaquot@cpaquot-ocl-lc-lnx on 2019/09/13 11:17:32
SWDEV-203438 - [HIP] AllGather RCCL test issue
	The test tries to launch a kernel on two devices at once and they need to communicate with each other.
	For that, it uses a custom stream for each devices.
	Problem is in getNullStream we used to call syncStreams all the time
	and it was syncing all the streams even the ones on different devices.
	So that made the second kernel launch (on 2n dev) to wait for the first kernel to finish which
	would never occur since the first one was waiting for the second one.
	The fix is to not call syncStreams from getNullStream because we sync already anyway prior in general.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_context.cpp#21 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_event.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#40 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#70 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_module.cpp#41 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_stream.cpp#24 edit
2019-09-13 11:28:33 -04:00