Commit Graph

80 Commits

Author SHA1 Message Date
emankov d5c3e5ea71 [HIPIFY][tests] Add cuSPARSE CSR-BCSR-SPMV-conversions example 2019-04-30 17:37:34 +03:00
Evgeny Mankov 72a809caf6 [HIPIFY][DNN] cudnnSetFilter4dDescriptor support 2019-04-25 12:18:51 +03:00
Evgeny Mankov 5b59f87305 [HIPIFY][tests] Fix typo in test for CUDA 10.x 2019-04-01 19:52:08 +03:00
Evgeny Mankov f138f89bc8 [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 9c000f4b57 [HIPIFY][tests] caffe2 test fix 2019-02-25 17:12:32 +03:00
Evgeny Mankov 59533a7309 [HIPIFY][Caffe2] Initial Caffe2 support 2019-02-23 20:46:22 +03:00
Evgeny Mankov b22c0de428 [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 d1ea9d9d97 [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 72c41d4ebf [HIPIFY][BLAS][tests] Add tests on hipifying to 'roc' 2019-02-07 19:25:23 +03:00
Evgeny Mankov 229b34fc79 [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 994ee4bab0 [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 9b6af0a81d [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 c4268855e3 [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 9808b22864 [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 852bc8d545 [HIPIFY][tests] Exclude CUDA 8.0 (9.0) tests if CUDA < 8.0 (9.0) 2019-01-03 18:06:49 +03:00
emankov 410f8f0b92 [HIPIFY][tests] Reduce cudaRegister.cu test 2019-01-03 17:17:21 +03:00
emankov 6f6228cf36 [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 cea1e5a1a6 [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 b24e89b40f [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 a5c66018b6 [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 2b01f1eb6f [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 b76cf94562 [HIPIFY][tests] Reorganization 2018-12-04 20:47:34 +03:00
Evgeny Mankov a421aff96d [HIPIFY][SPARSE] Add 3 more CUDA 10.0 tests
+ lit update
+ fix typos
2018-12-04 19:24:29 +03:00
Evgeny Mankov 424e4c8229 [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 e8054fe485 [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 ef99d6dee4 [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 e90373c927 [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 c75b3c444b [HIPIFY][SPARSE] Extra functions
+ cuSPARSE_04 test
+ update CUSPARSE_API_supported_by_HIP.md
2018-11-27 12:41:50 +03:00
Evgeny Mankov a384efcecf [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 a04788ffa7 [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 f66388bd05 [HIPIFY][SPARSE] Initial support 2018-11-20 17:58:05 +03:00
Evgeny Mankov ce57b99f9d [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 c57bfd50e3 [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 e00cfefd4f [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 618b1f5171 [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 7e4e821fbb [HIPIFY][test] Add static and dynamic shared memory tests 2018-07-18 18:33:44 +03:00
emankov 0d756720b2 [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 3958e930ab [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 9e47fccc89 Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
2018-03-12 11:29:03 +05:30
Evgeny Mankov e98ee1d627 [HIPIFY][tests] Add coalescing.cu test 2018-02-01 19:41:36 +03:00
Evgeny Mankov f7fb6e2199 [HIPIFY][tests] Add vec_add.cu test 2018-02-01 18:34:16 +03:00
Evgeny Mankov 91ef7b50e5 [HIPIFY][tests] add new line at the end of file 2018-02-01 17:36:45 +03:00
Evgeny Mankov 7d71dfd1f7 [HIPIFY][tests] Add intro.cu test 2018-02-01 17:07:48 +03:00
Evgeny Mankov eef94a74bc [HIPIFY][tests] add poisson-api-example test
+ add missing types
+ doc update
2018-01-30 19:50:18 +03:00
Evgeny Mankov 2ae2693c8a [HIPIFY][tests] fix typo 2018-01-30 18:55:09 +03:00
Evgeny Mankov 58f2d3c93f [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 4df35f4c77 [HIPIFY][tests][win] Make cudaRegister.cu building on Windows as well 2018-01-24 20:13:23 +03:00
Evgeny Mankov 591aeccad3 Merge pull request #341 from emankov/hipBLAS
[HIPIFY][fix] CUDA and cuBLAS main headers correct handling
2018-01-24 18:09:12 +03:00
Evgeny Mankov aaa9559768 [HIPIFY][fix] CUDA and cuBLAS main headers correct handling 2018-01-23 23:43:36 +03:00
Evgeny Mankov 35bd23fb07 [HIPIFY][tests][win] Uncomment @echo off 2018-01-23 21:46:27 +03:00