Граф коммитов

190 Коммитов

Автор SHA1 Сообщение Дата
Evgeny Mankov c5ed25da22 [HIPIFY] Initial support of translation to ROCm
+ Option '-roc' is added to translate to ROCm instead of HIP
+ Update hipification mechanism accordingly
+ Populate all translation maps with additional field for ROCm identifiers
+ There are 4 degrees of CUDA support now: full support, only by HIP, only by ROCm, unsupported
2018-12-06 21:52:54 +03:00
Evgeny Mankov 72d40db358 [HIPIFY][SPARSE] Add 3 more CUDA 10.0 tests
+ lit update
+ fix typos
2018-12-04 19:24:29 +03:00
Evgeny Mankov 116b9191f7 [HIPIFY][SPARSE] Matrix Reorderings and Format Conversion Reference
+ cuSPARSE is supported up to CUDA 10.0
+ cuSPARSE_08 test (CUDA 10.0)
+ update CUSPARSE_API_supported_by_HIP.md
+ lit: add a rule for CUDA 10.0 tests excluding
2018-11-30 15:33:57 +03:00
Evgeny Mankov 8a84c665e2 [HIPIFY][SPARSE] Preconditioners Reference: Tridiagonal and Pentadiagonal solves
+ Tridiagonal Solve, Batched Tridiagonal and Pentadiagonal Solve
+ cuSPARSE_07 test
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-29 18:46:51 +03:00
Evgeny Mankov 6c085c83a2 [HIPIFY][SPARSE] Preconditioners Reference: Incomplete LU Factorization: level 0
+ cuSPARSE_06 test
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-29 15:59:58 +03:00
Evgeny Mankov b39bd8c9a9 [HIPIFY][SPARSE] Preconditioners Reference: Incomplete Cholesky Factorization: level 0
+ cuSPARSE_05 test
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-28 20:10:30 +03:00
Evgeny Mankov 11fedfbff6 [HIPIFY][SPARSE] Extra functions
+ cuSPARSE_04 test
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-27 12:41:50 +03:00
Evgeny Mankov 82bbaf0b70 [HIPIFY][SPARSE] Level 3 functions
+ cuSPARSE_03 test
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-27 11:57:25 +03:00
Evgeny Mankov c7f6266824 [HIPIFY][SPARSE] Helper and Level 1,2 functions
+ 2 cuSPARSE tests
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-26 15:11:52 +03:00
Maneesh Gupta bcea027bf1 Merge pull request #748 from mkuron/getsymboladdress
Implement hipGetSymbolAddress and hipGetSymbolSize
2018-11-21 10:32:01 +05:30
emankov 47aeaecec8 [HIPIFY][SPARSE] Data types support
+ Add all cuSPARSE types
+ Update CUSPARSE_API_supported_by_HIP.md
+ Update README.md
2018-11-21 01:31:02 +03:00
emankov 30c387a811 [HIPIFY][SPARSE] Initial support 2018-11-20 17:58:05 +03:00
Michael Kuron 8610128c3e Merge branch 'master' into getsymboladdress 2018-11-20 12:03:22 +01:00
Evgeny Mankov 8aefe12b8e [HIPIFY] Move Complex API types and functions to separate files 2018-11-19 21:04:47 +03:00
Evgeny Mankov cfabad4354 [HIPIFY] CUDA Driver API functions total revise (up to CUDA 10.0)
+ for all CUDA versions
+ add missing types
+ fix typos
+ sync with HIP
+ update CUDA_Driver_API_functions_supported_by_HIP.md
+ formatting, annotating
2018-11-19 20:00:05 +03:00
Evgeny Mankov aad5858cb1 [HIPIFY][LLVMCompat] support of upcoming LLVM 8.0
+ StringRef issue, which is finally moved to LLVM from Clang
+ Renamed getBeginLoc() and getEndLoc() resolution for Expr and TypeLoc classes
+ Support all the previous LLVM versions via LLVCompat
2018-11-16 01:23:25 +03:00
Michael Kuron 73616582d6 Implement hipGetSymbolAddress and hipGetSymbolSize 2018-11-04 10:39:34 +01:00
Evgeny Mankov eff5d3fc1b [HIPIFY][fix] Fix typo and functions' string arguments
+ Fix typo with missing comma in counterNames array
+ Change std::string argument to const std::string& argument in all functions
2018-11-01 16:57:57 +03:00
Evgeny Mankov a8e6033aa3 [HIPIFY][fix][#739] Fix garbage after replacements
[Issue] https://github.com/ROCm-Developer-Tools/HIP/issues/739
[Resolution] Always use an std::string not a clang::StringRef for replacement

P.S. Occurred only on Linux, on Windows works fine.
2018-10-30 19:35:59 +03:00
Evgeny Mankov 104be4b677 [HIPIFY][fix] Return back cudaDeviceProp's struct field warpSize to hipWarpSize mapping. 2018-10-30 15:53:00 +03:00
Evgeny Mankov f83eabfa9e [HIPIFY] Modify HIP types to conform to CUDA's ones 2018-10-29 20:51:25 +03:00
Evgeny Mankov c5bfa09b04 [HIPIFY] CUDA Runtime API data types total revise
+ for all CUDA versions up to 10.0
+ add missing types
+ fix typos
+ sync with HIP
+ sync with CUDA Driver API
+ update CUDA_Runtime_API_functions_supported_by_HIP.md
+ update CUDA Driver API map accordingly
+ update CUDA_Driver_API_functions_supported_by_HIP.md
+ formatting, annotating
2018-10-29 17:13:00 +03:00
Evgeny Mankov 5d1255272b [HIPIFY] Split CUDA2HIP map into a number of maps based on API type
[Reasons]
+ Simplify the support
+ Optimize compilation and code generation time

[Additionally]
+ Update minimum required version of cmake
+ Fix MSVC compile options force update
2018-10-23 00:00:10 +03:00
Evgeny Mankov 520e795a8d [HIPIFY] CUDA Driver API data types total revise
+ for all CUDA versions
+ add missing types
+ fix typos
+ sync with HIP
+ update CUDA_Driver_API_functions_supported_by_HIP.md
+ formatting, annotating
2018-10-18 18:50:24 +03:00
Evgeny Mankov ee3a5cc722 [HIPIFY] Code cleanup and formatting 2018-10-15 15:27:37 +03:00
Evgeny Mankov e3d7cc2885 [HIPIFY] CUDA 10.0 Driver API initial support 2018-10-03 20:29:22 +03:00
Evgeny Mankov 3a1157653f Merge pull request #687 from emankov/hipBLAS
[HIPIFY][BLAS] Add support of hipblasGemmEx and corresponding types
2018-09-25 18:48:06 +03:00
Evgeny Mankov d279c7a1dd [HIPIFY][BLAS] Add support of hipblasGemmEx and corresponding types
TODO (hipBLAS/HIP): rename hipblasDatatype_t to hipDataType_t and move it from hipBLAS to HIP, as Data types are used not only in BLAS library.
2018-09-25 18:46:23 +03:00
Evgeny Mankov 368977f75b [HIPIFY][Complex] Add cuComplex support
+ Add API_COMPLEX support (data types and functions)
+ Add cuComplex_API_supported_by_HIP.md
+ Add cuComplex_Julia.cu test
+ Update README.md
2018-08-08 18:34:57 +03:00
Evgeny Mankov 70cfa5e53c [HIPIFY][FFT] Add cuFFT support
+ Add API_FFT support (data types and functions)
+ Add CUFFT_API_supported_by_HIP.md
+ Add simple_cufft.cu test
+ Update README.md
2018-07-31 22:25:48 +03:00
Evgeny Mankov 92eb165875 [HIPIFY][BLAS] cuBLAS support revise
+ doc for CUBLAS API supported by HIP
+ 3 tests: 0 & 1 based indexing, sgemm matmul
2018-07-28 21:00:44 +03:00
Evgeny Mankov 7ef05de0d5 [HIPIFY][DNN] cuDNN support revise
+ add doc for CUDDN API supported by HIP
+ cuDNN softMax test
2018-07-20 21:00:24 +03:00
Evgeny Mankov 55e21055e3 [HIPIFY] Support of cudaComputeMode / CUcomputemode
+ update docs
+ fix typo in hip_runtime_api.h
2018-07-14 16:08:19 +03:00
Evgeny Mankov 433e172776 [HIPIFY] Current trunk LLVM 7.0 initial support
Tested with CUDA 8.0, 9.0, 9.1 and 9.2.

Only 8.0 works with LLVM 7.0, due to the changes in LLVM trunc since released 6.0, which works fine with CUDA 8.0 and 9.0.

So, nothing to do in hipify-clang, hope that all the CUDA 9.x related issues will be fixed in 7.0 release.
2018-07-11 20:15:49 +03:00
Evgeny Mankov 9fcb48e5c4 [HIPIFY] Add DEBUG(X) macro compatibility
In LLVM 7.0 DEBUG(X) was deleted, LLVM_DEBUG(X) should be used instead.
2018-07-11 18:21:00 +03:00
Evgeny Mankov a5df3a484c [HIPIFY][DNN] support of cuDNN 7.1.3 - finishing 2018-05-21 18:31:20 +03:00
Evgeny Mankov b0fd0c310d [HIPIFY][DNN] support of cuDNN 7.1.3 - continuation 2
- not finished yet.
- based on https://github.com/ROCmSoftwarePlatform/hipDNN.
- testing on https://github.com/baidu-research/DeepBench - almost pass, except cusparse (not supported yet).
- started testing of examples from libcudnn7-dev_7.1.3.16-1+cuda8.0_amd64 package.
2018-05-14 16:23:59 +03:00
Evgeny Mankov dffe1802be [HIPIFY][DNN] support of cuDNN 7.1.3 - continuation
- not finished yet.
- based on https://github.com/ROCmSoftwarePlatform/hipDNN.
- testing on https://github.com/baidu-research/DeepBench.
2018-05-10 17:36:51 +03:00
Evgeny Mankov e5ba9668fc [HIPIFY][Blas] Sync with CUDA 9.1 2018-05-08 20:42:30 +03:00
Evgeny Mankov 7681775662 [HIPIFY] Sync with hipBLAS 2018-05-08 19:20:47 +03:00
Evgeny Mankov fe421c89b2 [HIPIFY] Initial cuDNN support
- based on https://github.com/ROCmSoftwarePlatform/hipDNN.
- lit testing was supplemented with CUDA_DNN_ROOT_DIR for cuDNN testing.
- single cuDNN test was added.
2018-05-03 11:33:40 +03:00
Evgeny Mankov 6f501f6094 [HIPIFY] Sync with HIP (Execution Control, Surfaces, Memory)
Execution Control [deprecated since 7.0]:
cudaConfigureCall -> hipConfigureCall
cudaLaunch -> hipLaunchByPtr
cudaSetupArgument -> hipSetupArgument

Surfaces (partially):
cudaSurfaceObject_t -> hipSurfaceObject_t
cudaSurfaceBoundaryMode -> hipSurfaceBoundaryMode
cudaCreateSurfaceObject -> hipCreateSurfaceObject
cudaDestroySurfaceObject -> hipDestroySurfaceObject

Memory Management:
cudaMemset2DAsync -> hipMemset2DAsync
2018-04-24 22:04:04 +03:00
Evgeny Mankov 8499e79e2b [HIPIFY] undo apply .clangformat to HIPIFY source files 2018-04-23 20:22:15 +03:00
Maneesh Gupta 1ba06f63c4 Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
2018-03-12 11:29:03 +05:30
Evgeny Mankov 7f3e89bbb0 [HIPIFY][fix] Build against llvm 3.8.0 fixed - missing include
/srv/HIP/hipify-clang/src/main.cpp:134:19: error: no member named 'dbgs' in namespace 'llvm'
      DEBUG(llvm::dbgs() << "Skipped some replacements.\n");
            ~~~~~~^
2018-02-08 00:08:47 +03:00
Evgeny Mankov 26095fe7c1 [HIPIFY][tests] add poisson-api-example test
+ add missing types
+ doc update
2018-01-30 19:50:18 +03:00
Evgeny Mankov 9d814bef31 [HIPIFY][tests] fix typo 2018-01-30 18:55:09 +03:00
Evgeny Mankov 02e23c4d87 [HIPIFY] InclusionDirective refactoring
Due to support of cuRAND headers.

+ compound test on all headers is added;
+ missing entities are added with updating the doc;
+ a couple cuRAND tests are added (https://github.com/ROCmSoftwarePlatform/rocRAND/tree/master/benchmark):
  - the following CUDA entities are still unsupported by hipRAND:
      curandMakeMTGP32Constants
      curandMakeMTGP32KernelState
      curandGetDirectionVectors32
      curandDirectionVectorSet_t
      CURAND_DIRECTION_VECTORS_32_JOEKUO6
      curandStateSobol64_t
      curandStateScrambledSobol64_t
      curandGenerateLongLong
  - and the following - by HIP:
      cudaRuntimeGetVersion
  - those entities are handled by CHECK-NOT directive for now.
2018-01-29 18:33:47 +03:00
Evgeny Mankov fb1012a4b8 Merge pull request #340 from emankov/master
[HIPIFY][fix] Fix PragmaDirective
2018-01-24 18:09:54 +03:00
Evgeny Mankov 600d5d7c06 [HIPIFY][fix] CUDA and cuBLAS main headers correct handling 2018-01-23 23:43:36 +03:00