Gráfico de commits

347 Commits

Autor SHA1 Mensaje Fecha
Evgeny Mankov d33dd71ed3 [HIPIFY] Sync cudaError/CUresult between CUDA Driver API/CUDA RT API/HIP
+ Update *.md docs and hipify-perl accordingly

[Reason]
Starting with CUDA 10.1 all error codes are merged between Driver and RT APIs

[ToDo]
Do the same merge in HIP API as there is no need in distinguishing return codes by API
2019-11-29 19:29:11 +03:00
Maneesh Gupta dae8630592 Bump version to 3.0 (#1648)
Change-Id: Id1e6eb222080a339af938212e74a52c39c305eab
2019-11-10 20:23:58 -08:00
Evgeny Mankov c48fdefee8 [HIPIFY][CUB][#1460][perl] Add "cub::" namespace prefix support in hipify-perl as well 2019-11-01 14:34:18 +03:00
Evgeny Mankov 315a10a59d [HIPIFY] cudaMemcpy2DFromArray(Async) support 2019-10-29 19:12:42 +03:00
Evgeny Mankov 6f88c81a78 [HIPIFY][#1569] Fix 2019-10-22 11:08:37 +03:00
Evgeny Mankov b08f29a6fa [HIPIFY][perl] Support of 'using namespace cub' 2019-10-21 17:15:05 +03:00
Rahul Garg 1fd16d7601 Merge pull request #1550 from yxsamliu/new-launch
Add -fhip-new-launch-api to hipcc for HIP/VDI
2019-10-17 19:07:32 -07:00
Rahul Garg 5f37f3174a Revert "hipcc defaults to code object v3 (#1298)"
This reverts commit d39a2a0749.
2019-10-17 13:27:28 -04:00
kpyzhov 596bf4e326 [hipcc] Temporary add -D_OPENMP to clang options to workaround cmake issue (#1540)
* Temporary add -D_OPENMP to clang options in hipcc to allow using CMake OpenMP detection with hip-clang (until updated CMake version is available).
2019-10-16 10:51:28 +05:30
Yaxun (Sam) Liu 4d5cb8351c Add -fhip-new-launch-api to hipcc for HIP/VDI 2019-10-15 21:47:33 -04:00
Evgeny Mankov 277d3b8369 [HIPIFY][CUB] Initial support (hipify-clang only)
+ Add one matcher (will be more)
+ Update Maps and Statistics
+ Add cub_01.cu unit test
+ Update lit harness to support standalone CUB
+ Update README.md
+ Update hipify-perl (only CUB header is supported for now)

[IMPORTANT]
clang (and hipify-clang) works correctly only with official NVLabs version on GitHub.
Compilation of CUB from official CUDA release has conflicts with THRUST.
Thus, to compile CUB sources, option "-I" should be specified to the cloned CUB from NVLAB on GitHub.
2019-10-14 11:55:55 +03:00
Evgeny Mankov 876af8f381 [HIPIFY][perl] Add "important" notice
# IMPORTANT: Do not change this file manually: it is generated by hipify-clang --perl
2019-10-10 18:25:26 +03:00
srinivamd 908e14d176 remove dependencies on /opt/rocm path (#1379)
* remove hard coded dependencies on /opt/rocm path
2019-10-10 19:56:55 +05:30
Evgeny Mankov 3286ffdfc0 [HIPIFY][#1487][fix] Translate correctly kernel names prefixed with namespace
+ Modify CUDA2HIP_perl for the fix
+ Add ns_kernel_launch.cu test
+ Update hipify-perl by hipify-clang -perl
2019-10-08 15:58:48 +03:00
Evgeny Mankov 6aa7540be8 [HIPIFY] Sync with HIP
+ Update hipify-perl accordingly
2019-10-07 14:44:05 +03:00
Evgeny Mankov 410f6c4a95 [HIPIFY][SPARSE] sync with hipSPARSE
+ Update doc and hipify-perl accordingly
2019-10-05 15:53:04 +03:00
ansurya ba9c6e13e4 Added new Memory API's (#1399)
Added new memory API's hipMemAllocPitch, hipMemAllocHost, hipMemsetD16, hipMemsetD16Async, hipMemsetD8Async
Modified to support all scenarios hipMemcpyParam2DAsync, hipMemcpyParam2D.
2019-10-04 13:36:31 +05:30
Maneesh Gupta d39a2a0749 hipcc defaults to code object v3 (#1298)
Change-Id: I272ec61090fa504d631fb54371a73dd6fd17a167
2019-10-04 13:35:21 +05:30
Evgeny Mankov 6badebd963 [HIPIFY] Finishing with generation of hipify-perl
+ hipify-perl script is entirely generated by hipify-clang under an option -perl now
+ hipify-perl still has correctness gaps comparing to hipify-clang: they will be eliminated AMAP further
2019-10-03 16:00:52 +03:00
Evgeny Mankov 6bb9913e8a [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.
2019-10-02 16:01:07 +03:00
Evgeny Mankov 108992428d Merge pull request #1492 from emankov/master
[HIPIFY][#1490][fix] Populate the list of supported device atomic functions
2019-10-01 14:00:07 +03:00
Evgeny Mankov b5f17e8ff0 [HIPIFY][#1490][fix] Populate the list of supported device atomic functions
+ Update hipify-perl accordingly
+ Add atomics.cu test on all atomics
2019-10-01 13:57:46 +03:00
Evgeny Mankov 32f2e7b999 Merge pull request #1489 from emankov/master
[HIPIFY][perl] Generate transformKernelLaunch
2019-10-01 11:18:41 +03:00
Evgeny Mankov c8f73ea491 [HIPIFY][perl] Generate transformKernelLaunch
+ Update hipify-perl accordingly
+ Minor refactoring
2019-10-01 11:17:27 +03:00
Maneesh Gupta 96cf31547e Bump version to 2.10 (#1483)
Change-Id: I22ac0ae723bc537e027306dbb0f1594552fd33a4
2019-10-01 12:39:08 +05:30
Evgeny Mankov 65964db02c [HIPIFY][perl] Generate transformExternShared function
+ Update hipify-perl accordingly
2019-09-30 17:47:46 +03:00
Evgeny Mankov 0f19300383 [HIPIFY][perl] Generate simpleSubstitutions function
+ Update hipify-perl accordingly
2019-09-30 16:53:19 +03:00
Evgeny Mankov 76a439f4c0 [HIPIFY] Reconcile transformation (statistics) types between hipify-clang and hipify-perl
+ Update hipify-perl accordingly
2019-09-29 17:33:37 +03:00
Evgeny Mankov 0c9b661d56 [HIPIFY][perl] Code clean-up before continuing generation 2019-09-28 20:44:15 +03:00
Evgeny Mankov f21e7d8abc [HIPIFY] Generate more hipify-perl (continuation)
+ Minor hipify-perl clean-up
+ Minor CUDA2HIP_Perl refactoring
2019-09-27 19:10:54 +03:00
Evgeny Mankov f50852e3a6 [HIPIFY] Add supported fp16 functions
+ Update hipify-perl accordingly
2019-09-26 18:13:20 +03:00
Evgeny Mankov 9d1d4b78e3 [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 6ac0baf026 [HIPIFY][perl] Get rid of obsolete warnings on cuBLAS and cuRAND 2019-09-25 17:37:41 +03:00
Evgeny Mankov 1b989bcb8d [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 f0b1170784 [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 fc493da5c7 [HIPIFY] Add supported device functions (from device_functions.h)
+ [perl] Sync hipify-perl accordingly
2019-09-18 17:07:50 +03:00
Evgeny Mankov 042c125601 [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
Evgeny Mankov 4f59ec25fe [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
ansurya ceb734b917 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
Evgeny Mankov 287ceac229 [HIPIFY][perl] Syn with hipify-clang 2019-09-15 15:25:40 +03:00
Evgeny Mankov 56ab105e9d [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);
2019-09-10 15:59:06 +03:00
Evgeny Mankov 3a034a3427 [HIPIFY][perl] Code cleanup (preparation for generating) 2019-09-05 11:52:59 +03:00
Evgeny Mankov 2a4c008385 [HIPIFY][perl] Sync hipify-perl with hipify-clang
Sync by means of semi-automatic generation: hipify-clang -perl
2019-09-04 17:07:45 +03:00
Evgeny Mankov 5b8843a127 [HIPIFY][perl] Code cleanup and formatting 2019-09-04 16:37:26 +03:00
Evgeny Mankov b98330609b [HIPIFY][perl][#259] Fix
empty<<<1, 2>>> ( );     >>  hipLaunchKernelGGL(empty, dim3(1), dim3(2), 0, 0);
empty<<<1, 2, 0>>>();    >>
empty<<<1, 2, 0, 0>>>(); >>

instead of erroneous:    >> hipLaunchKernelGGL((empty), dim3(1), dim3(2), 0, 0, );
2019-09-03 16:44:20 +03:00
Yaxun (Sam) Liu b046ec698b Do not change opt level for -g for hip-clang (#1369)
Currently hipcc uses -O3 for hip-clang by default but uses -O0 if -g is used. This
causes surprise for users since -g should not affect default opt level.
2019-08-29 01:03:11 +00:00
Sarbojit2019 938502dfcb [hipcc] Fix for uninitialized variables on nvcc path
Fixes #1186
2019-08-20 12:06:22 +00:00
Maneesh Gupta 3ccddcde25 Bump HIP version (#1311)
- Match HIP version with upcoming ROCm version
- Add githash to version string
2019-08-09 12:13:29 +00:00
Rene van Oostrum 05b685cc6b Add missing hipHostRegister flags to hipify-perl for flags that are defined and supported in hip_runtime_api.h 2019-08-08 10:46:45 -05:00
Maneesh Gupta ce7469ba20 Merge pull request #1305 from ROCm-Developer-Tools/fix-hip-vdi-include-clang
Fix HIP-VDI using incorrect include files
2019-08-08 08:28:20 +00:00