Commit Graph

29 Commits

Author SHA1 Message Date
root 6a7aa0c1c6 Merge master into amd-master-next
Change-Id: I3fc1dc0c860d627053537581e75561e8a7efe327


[ROCm/clr commit: b5031f39b1]
2020-04-26 22:19:37 +00:00
Maneesh Gupta e5ee180568 Merge branch 'amd-master' into amd-master-next
Change-Id: I3094c15008093f2072bcd38aca4ea90aeae2d97b


[ROCm/clr commit: 0ea6697192]
2020-04-09 06:31:00 -04:00
Evgeny Mankov 7fe43d9bc3 [HIP][HIPIFY] Remove HIPIFY related stuff due to moving of HIPIFY to a separate repo (#2002)
HIPIFY tools now are here: https://github.com/ROCm-Developer-Tools/HIPIFY

[ROCm/clr commit: 5d0ce39669]
2020-04-07 14:03:30 +05:30
Evgeny Mankov be4ba44d12 [HIPIFY][SPARSE] sync with hipSPARSE
+ Update doc and hipify-perl accordingly


[ROCm/clr commit: baa0c68ab4]
2020-03-18 13:07:46 +03:00
Evgeny Mankov bcc9d88b20 [HIPIFY][tests] Rename the ambiguous call as well
[ROCm/clr commit: f68bee02f5]
2019-10-25 16:07:31 +03:00
Evgeny Mankov 91732f98c0 [HIPIFY][tests] Fix ambiguous call to cusparseGetErrorString declared in cusparse.h
[ROCm/clr commit: 9529e1d91d]
2019-10-25 16:04:20 +03:00
Evgeny Mankov 0896e41987 [HIPIFY] Disable delayed template parsing
By implicit unconditional passing -fno-delayed-template-parsing option (which appeared in LLVM 3.8.0, thus doesn't need compatibility wrapping) to hipify-clang.

[Reason] To parse uncalled template functions otherwise they are not parsed without calling, thus not hipified.

Affects cub_03.cu test, which has uncalled global template function.


[ROCm/clr commit: 7ab06b3892]
2019-10-22 19:07:37 +03:00
Evgeny Mankov bb20336fa6 [HIPIFY][tests] Test clean-up
[ROCm/clr commit: 44a897a146]
2019-10-18 18:55:52 +03:00
Evgeny Mankov 85281b1d86 [HIPIFY][CUB][#1460] Add "using namespace cub" translation support
+ Add cub_03.cu


[ROCm/clr commit: 86f6756b02]
2019-10-18 18:51:40 +03:00
Evgeny Mankov b357301610 [HIPIFY][CUB][#1460] Add cub:: namespace support in TemplateInstantiation of cudaLaunchKernel
+ Update cub_02.cu test accordingly


[ROCm/clr commit: e557563947]
2019-10-16 19:02:13 +03:00
Evgeny Mankov 643a8bcf5b [HIPIFY][CUB][#1460] Implement cubFunctionTemplateDecl matcher
+ Add cub_02.cu test
+ Partial fixes #1460


[ROCm/clr commit: 5555d46e66]
2019-10-16 13:08:11 +03:00
Evgeny Mankov cb245f763e [HIPIFY][CUB] Add missing unit test
[ROCm/clr commit: 0dfe8423e7]
2019-10-14 12:03:20 +03:00
Evgeny Mankov 85ae269393 [HIPIFY] Return to wrapping with HIP_KERNEL_NAME(...) macro of a template instantiation kernel launch
[REASON]

1. hip-clang is fine with the templated kernel launch, brackets are unneeded: HIP_KERNEL_NAME(...) __VA_ARGS__
2. HCC is not, thus: HIP_KERNEL_NAME(...) (__VA_ARGS__)

[TODO] Clean-up entirely kernel name wrapping when HCC is finally obsolete.

+ Update perl generation, hipify-perl, and affected tests accordingly.


[ROCm/clr commit: fee2f0fa78]
2019-10-02 16:01:07 +03:00
Evgeny Mankov 2ee59279d6 [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


[ROCm/clr commit: d4f8c6bc4b]
2019-09-19 19:33:42 +03:00
Evgeny Mankov 4cfb3aa7b7 [HIPIFY][#1400] Fix Template Instantiation kernel launch (clang & perl)
+ Enclose template instantiation kernel calls into round brackets, leave regular kernel names unchanged (hipify-perl doesn't handle cases with macros).
+ Fix corresponding tests.

PS. hipify-perl couldn't handle correctly the following cases due to macros expansion disability, thus hipify-clang should be used instead:

#define KERNEL_NAME_MACRO axpy<float>
#define KERNEL_CALL_MACRO axpy<float><<<1, 2>>>
#define KERNEL_ARG_LIST_MACRO a, x, y

// CUDA:
KERNEL_NAME_MACRO<<<1, 2>>>(KERNEL_ARG_LIST_MACRO);
KERNEL_CALL_MACRO(KERNEL_ARG_LIST_MACRO);

// hipify-perl:
hipLaunchKernelGGL(KERNEL_NAME_MACRO, dim3(1), dim3(2), 0, 0, KERNEL_ARG_LIST_MACRO);
KERNEL_CALL_MACRO(KERNEL_ARG_LIST_MACRO);

// hipify-clang:
hipLaunchKernelGGL((KERNEL_NAME_MACRO), dim3(1), dim3(2), 0, 0, KERNEL_ARG_LIST_MACRO);
hipLaunchKernelGGL((axpy<float>), dim3(1), dim3(2), 0, 0, KERNEL_ARG_LIST_MACRO);


[ROCm/clr commit: 4e3845be83]
2019-09-10 15:59:06 +03:00
Evgeny Mankov 65ba03dd4c [HIPIFY][#207][fix] Translate all preprocessor's conditional blocks
+ Start to translate preprocessor's false conditional blocks too:
  based on clang's https://reviews.llvm.org/D66597;
  available only starting from LLVM 10.0 or trunk.
+ Option -skip-excluded-preprocessor-conditional-blocks for skipping excluded conditional blocks:
  the default behavior for hipify-clang built with LLVM < 10.0;
  false by default for hipify-clang built with LLVM 10 or trunk.
+ Add 4 preprocessor unit tests, 2 of which are LLVM 10.0 only
+ Update couple of existing tests by setting -skip-excluded-preprocessor-conditional-blocks option:
  update lit testing accordingly


[ROCm/clr commit: 32f22a0117]
2019-08-28 21:17:35 +03:00
Evgeny Mankov 7ade29f870 [HIPIFY][cuRAND][#1257] Fix
+ Update CURAND_API_supported_by_HIP.md and test accordingly


[ROCm/clr commit: 2ee0ecde06]
2019-08-09 21:27:16 +03:00
Evgeny Mankov 76c52aa429 [HIPIFY][cuDNN] Add cudnnGetFilter4dDescriptor support
+ Update cudnn_convolution_forward test accordingly


[ROCm/clr commit: 02f8dfe7d8]
2019-05-16 16:36:23 +03:00
emankov c27f0b952e [HIPIFY][tests] Add cuSPARSE CSR-BCSR-SPMV-conversions example
[ROCm/clr commit: d5c3e5ea71]
2019-04-30 17:37:34 +03:00
Evgeny Mankov 3c3255fbe5 [HIPIFY][DNN] cudnnSetFilter4dDescriptor support
[ROCm/clr commit: 72a809caf6]
2019-04-25 12:18:51 +03:00
Evgeny Mankov 17ac0d3e19 [HIPIFY][tests] Fix typo in test for CUDA 10.x
[ROCm/clr commit: 5b59f87305]
2019-04-01 19:52:08 +03:00
Evgeny Mankov 7d96cc8b63 [HIPIFY][tests] caffe2 test fix
[ROCm/clr commit: 9c000f4b57]
2019-02-25 17:12:32 +03:00
Evgeny Mankov e42eda2744 [HIPIFY][Caffe2] Initial Caffe2 support
[ROCm/clr commit: 59533a7309]
2019-02-23 20:46:22 +03:00
Evgeny Mankov 656baeebe3 [HIPIFY][DNN] Revise and sync with CUDNN 10 and hipDNN
+ CUDNN_API_supported_by_HIP.md update
+ CUDA_Runtime_API_functions_supported_by_HIP.md update
+ libraryPropertyType_t is moved to Runtime
+ test update


[ROCm/clr commit: b22c0de428]
2019-02-13 19:40:59 +03:00
Evgeny Mankov 29f6a802ff [HIPIFY][RAND] revise
+ add missing functions
+ add minimum rocRAND support
+ updated CURAND_API_supported_by_HIP.md


[ROCm/clr commit: d1ea9d9d97]
2019-02-08 17:54:28 +03:00
Evgeny Mankov b0b83332df [HIPIFY][BLAS][tests] Add tests on hipifying to 'roc'
[ROCm/clr commit: 72c41d4ebf]
2019-02-07 19:25:23 +03:00
Evgeny Mankov 866ba6db18 [HIPIFY] CUDA Runtime API functions total revise (up to CUDA 10.0)
+ for all CUDA versions starting from 7.0
+ add missing functions
+ sync with HIP
+ update CUDA_Runtime_API_functions_supported_by_HIP.md
+ update affected tests
+ fix typos
+ formatting, annotating


[ROCm/clr commit: 229b34fc79]
2019-01-24 14:05:36 +03:00
Evgeny Mankov 7d81558657 [HIPIFY] Introduce CUDA installation path option '-cuda-path'
Repeats clang's '--cuda-path' option.

[Reason]
In case of absence of any other clang's options setting '-cuda-path' allows not to specify separator '--' before clang's '--cuda-path'.

+ Tests and scripts are updated accordingly.


[ROCm/clr commit: c4268855e3]
2019-01-09 20:18:36 +03:00
Evgeny Mankov 27496f1d0d [HIPIFY][tests] Reorganization
[ROCm/clr commit: b76cf94562]
2018-12-04 20:47:34 +03:00