Commit graph

88 Commits

Autor SHA1 Nachricht Datum
Evgeny Mankov c7a2b4e492 [HIPIFY] Add device texture fetch functions support
+ Add a corresponding reverse engineered sample tex2dKernel with texture template
2019-05-23 12:47:08 +03:00
Evgeny Mankov 29d8e10112 [HIPIFY][tests] Add reverse engineered HIP sample "peer2peer"
+ Fix typo in sample "stream"
2019-05-20 17:16:11 +03:00
Evgeny Mankov aed2affda2 [HIPIFY][cuDNN] Add cudnnGetFilter4dDescriptor support
+ Update cudnn_convolution_forward test accordingly
2019-05-16 16:36:23 +03:00
Evgeny Mankov 64eeeca6ce [HIPIFY][tests] Add reverse engineered HIP sample "stream"
+ Add additional checks for extern __shared__ due to [#1109]
2019-05-15 20:17:03 +03:00
Evgeny Mankov fa3dda9107 [HIPIFY][fix][#1109] Do not preserve extern __shared__ for IncompleteArrayType
+ Update tests accordingly
2019-05-15 20:05:56 +03:00
Evgeny Mankov d74d03aa74 [HIPIFY][tests] Add reverse engineered HIP sample Profiler
+ Add missing cuda_profiler_api.h to hip/hip_profile.h transformation.
NOTE: HIP Profiler API is under development. This is NOT WORKING example.
TODO: Find out a way to generate HIP_SCOPED_MARKER, HIP_BEGIN_MARKER, HIP_END_MARKER, declared in hip/hip_profile.h in particular place (signatures are to obtain).
2019-05-14 16:43:44 +03:00
Evgeny Mankov 3bc3b61fb4 [HIPIFY][tests] Add reverse engineered HIP sample hipEvent 2019-05-13 22:12:43 +03:00
emankov 4b861bca39 [HIPIFY][tests] Add reverse engineered HIP sample MatrixTranspose 2019-05-13 19:37:18 +03:00
emankov e3082f5142 [HIPIFY][tests] Add cuSPARSE CSR-BCSR-SPMV-conversions example 2019-04-30 17:37:34 +03:00
Evgeny Mankov 3fee0f3765 [HIPIFY][DNN] cudnnSetFilter4dDescriptor support 2019-04-25 12:18:51 +03:00
Evgeny Mankov 8bca9f1d7a [HIPIFY][tests] Fix typo in test for CUDA 10.x 2019-04-01 19:52:08 +03:00
Evgeny Mankov e899ee0e06 [HIPIFY][tests] Update lit testing infrastructure
+ Set -D__LP64__ in case of 64-bit hipify-clang binary
  [partial workaround for clang's bug https://bugs.llvm.org/show_bug.cgi?id=38811]

  C:/GIT/LLVM/trunk/llvm-64-release-vs2017/dist/lib/clang/9.0.0\include\__clang_cuda_device_functions.h(1609,45): error GEF7559A7: no matching function for call to 'roundf'
  __DEVICE__ long lroundf(float __a) { return roundf(__a); }

  #if defined(__LP64__)
  __DEVICE__ long lround(double __a) { return llround(__a); }
  __DEVICE__ long lroundf(float __a) { return llroundf(__a); } // ok: llroundf should be used when 64-bit
  #else
  __DEVICE__ long lround(double __a) { return round(__a); }
  __DEVICE__ long lroundf(float __a) { return roundf(__a); } // error
  #endif

+ Print more system info while testing in the following form:
  ========================================
  CUDA 9.0 - will be used for testing
  LLVM 9.0.0svn - will be used for testing
  AMD64 - Platform architecture
  Windows 10 - Platform OS
  64 - hipify-clang binary bitness
  32 - python 3.7.2 binary bitness
  ========================================
2019-03-06 19:26:05 +03:00
Evgeny Mankov 3a8ef9c8a2 [HIPIFY][tests] caffe2 test fix 2019-02-25 17:12:32 +03:00
Evgeny Mankov 2619f22e5c [HIPIFY][Caffe2] Initial Caffe2 support 2019-02-23 20:46:22 +03:00
Evgeny Mankov d26dc3cea7 [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
2019-02-13 19:40:59 +03:00
Evgeny Mankov 7ba8c440e6 [HIPIFY][RAND] revise
+ add missing functions
+ add minimum rocRAND support
+ updated CURAND_API_supported_by_HIP.md
2019-02-08 17:54:28 +03:00
Evgeny Mankov 385fe36f2a [HIPIFY][BLAS][tests] Add tests on hipifying to 'roc' 2019-02-07 19:25:23 +03:00
Evgeny Mankov 4ff355357f [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
2019-01-24 14:05:36 +03:00
Evgeny Mankov 841e056935 [HIPIFY][tests] Exclude one more test if CUDA == 7.0, which is of CUDA 7.5 2019-01-22 22:26:43 +03:00
Evgeny Mankov 0206fadc14 [HIPIFY] option cuda-path might be used with '--' as well as with a single dash: '-'
+ Update README.md
2019-01-10 18:01:33 +03:00
Evgeny Mankov fbfe005e4e [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.
2019-01-09 20:18:36 +03:00
emankov 9abcad9407 [HIPIFY][tests] CUDA 7.0 is also supported
+ Exclude 1 test for CUDA 7.0
+ Update README.md
2019-01-04 01:32:30 +03:00
emankov 65155c7159 [HIPIFY][tests] Exclude CUDA 8.0 (9.0) tests if CUDA < 8.0 (9.0) 2019-01-03 18:06:49 +03:00
emankov 7fb0f4ee2a [HIPIFY][tests] Reduce cudaRegister.cu test 2019-01-03 17:17:21 +03:00
emankov dec459efca [HIPIFY] Get rid of setting '--cuda-gpu-arch='
[Reasons]
+ We don't compile kernel code at least for now as HIP kernel syntax is almost equal CUDA's;
+ clang always includes PTX in its binaries, so e.g. a binary compiled with --cuda-gpu-arch= would be forwards-compatible with e.g. sm_35 GPUs.
2018-12-29 19:48:28 +03:00
emankov 7ea586c323 [HIPIFY] Starts implicitly setting '-x cuda' by hipify-clang itself
+ No need in setting '-x cuda' for the user anymore;
+ Testing and Readme updated accordingly.
2018-12-29 17:04:59 +03:00
emankov 2d3f62c3e1 [HIPIFY][win] Set -std=c++14 if MSVC
+ Due to latest Windows SDK implementation based on c++14 features, '-std+c++14' is a must;
+ Doesn't affect older versions of MSVC 2017, 2015 (the latest supported is MSVC 2015);
+ On linux still '-std=c++11' is a must;
+ Exclude '-std=' from lit config.
2018-12-29 15:51:06 +03:00
Evgeny Mankov 3d528cf491 [HIPIFY][tests][fix] Add correct CUDA version detection while testing
+ Just do load_config for lit.site.cfg earlier in lit.cfg to get initialized cuda_version
+ Remove lit.cfg.in for CMake variables substitution
+ Return back lit.cfg
+ Exclude CUDA 9.0 tests if CUDA < 9.0
+ Report CUDA version before running tests
2018-12-12 17:05:01 +03:00
Evgeny Mankov b955e317a7 [HIPIFY][tests][fix] Add correct CUDA version detection while testing
+ Add lit.cfg.in for CMake variables substitution to now generated lit.cfg
+ Exclude lit.cfg
+ Exclude CUDA 9.0 tests if CUDA < 9.0
+ Report CUDA version before running tests
2018-12-11 22:03:11 +03:00
Evgeny Mankov 09612ac03f [HIPIFY][tests] Reorganization 2018-12-04 20:47:34 +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
emankov 30c387a811 [HIPIFY][SPARSE] Initial support 2018-11-20 17:58:05 +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 70bd255d71 [HIPIFY][test] Add static and dynamic shared memory tests 2018-07-18 18:33:44 +03:00
emankov 21b79cd467 [HIPIFY][test] Undo commit "Apply .clangformat to all repo source files"
Commit broke tests due to code and comments formatting changes, thus FileCheck fails on checks, which are in comments.
2018-05-04 22:23:16 +03:00
emankov 2569972dde [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-02 22:11:05 +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 b0efa41d31 [HIPIFY][tests] Add coalescing.cu test 2018-02-01 19:41:36 +03:00
Evgeny Mankov 06771d20ba [HIPIFY][tests] Add vec_add.cu test 2018-02-01 18:34:16 +03:00
Evgeny Mankov d254875c42 [HIPIFY][tests] add new line at the end of file 2018-02-01 17:36:45 +03:00