Commit Graph

49 Commits

Author SHA1 Message Date
Evgeny Mankov dac14d60b7 [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


[ROCm/clr commit: ce57b99f9d]
2018-08-08 18:34:57 +03:00
Evgeny Mankov 66e24cb0d3 [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


[ROCm/clr commit: c57bfd50e3]
2018-07-31 22:25:48 +03:00
Evgeny Mankov 351f385ea9 [HIPIFY][BLAS] cuBLAS support revise
+ doc for CUBLAS API supported by HIP
+ 3 tests: 0 & 1 based indexing, sgemm matmul


[ROCm/clr commit: e00cfefd4f]
2018-07-28 21:00:44 +03:00
Evgeny Mankov 23fb9e51f2 [HIPIFY][DNN] cuDNN support revise
+ add doc for CUDDN API supported by HIP
+ cuDNN softMax test


[ROCm/clr commit: 618b1f5171]
2018-07-20 21:00:24 +03:00
Evgeny Mankov aae1e3e73f [HIPIFY][test] Add static and dynamic shared memory tests
[ROCm/clr commit: 7e4e821fbb]
2018-07-18 18:33:44 +03:00
emankov 98ca496432 [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.


[ROCm/clr commit: 0d756720b2]
2018-05-04 22:23:16 +03:00
emankov 0cfb3e3ecd [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.


[ROCm/clr commit: 3958e930ab]
2018-05-02 22:11:05 +03:00
Maneesh Gupta 46ddefedee Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344


[ROCm/clr commit: 9e47fccc89]
2018-03-12 11:29:03 +05:30
Evgeny Mankov a17cfac3ff [HIPIFY][tests] Add coalescing.cu test
[ROCm/clr commit: e98ee1d627]
2018-02-01 19:41:36 +03:00
Evgeny Mankov 180cf3f29c [HIPIFY][tests] Add vec_add.cu test
[ROCm/clr commit: f7fb6e2199]
2018-02-01 18:34:16 +03:00
Evgeny Mankov d7d35ed98c [HIPIFY][tests] add new line at the end of file
[ROCm/clr commit: 91ef7b50e5]
2018-02-01 17:36:45 +03:00
Evgeny Mankov 3976fbfe15 [HIPIFY][tests] Add intro.cu test
[ROCm/clr commit: 7d71dfd1f7]
2018-02-01 17:07:48 +03:00
Evgeny Mankov 2a1267bd43 [HIPIFY][tests] add poisson-api-example test
+ add missing types
+ doc update


[ROCm/clr commit: eef94a74bc]
2018-01-30 19:50:18 +03:00
Evgeny Mankov ea60d1daec [HIPIFY][tests] fix typo
[ROCm/clr commit: 2ae2693c8a]
2018-01-30 18:55:09 +03:00
Evgeny Mankov 2583a716a7 [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.


[ROCm/clr commit: 58f2d3c93f]
2018-01-29 18:33:47 +03:00
Evgeny Mankov f33c431dd9 [HIPIFY][tests][win] Make cudaRegister.cu building on Windows as well
[ROCm/clr commit: 4df35f4c77]
2018-01-24 20:13:23 +03:00
Evgeny Mankov 2ce3ad2a86 Merge pull request #341 from emankov/hipBLAS
[HIPIFY][fix] CUDA and cuBLAS main headers correct handling

[ROCm/clr commit: 591aeccad3]
2018-01-24 18:09:12 +03:00
Evgeny Mankov cbbf54d122 [HIPIFY][fix] CUDA and cuBLAS main headers correct handling
[ROCm/clr commit: aaa9559768]
2018-01-23 23:43:36 +03:00
Evgeny Mankov f78369ce58 [HIPIFY][tests][win] Uncomment @echo off
[ROCm/clr commit: 35bd23fb07]
2018-01-23 21:46:27 +03:00
Evgeny Mankov 34b797d7f2 [HIPIFY][tests][win] Fix run_test.bat
All checks should not occur in input file for FileCheck. The issue found on CHECK-NOT.
Change removes all lit checks in the hipified file based on regexp, and the resulted stdout is fed as stdin for FileCheck.


[ROCm/clr commit: 8fae5663d2]
2018-01-23 21:43:18 +03:00
Evgeny Mankov 9c4549fac4 [HIPIFY][tests] remove concurentKernels.cu as it is one of CUDA SDK samples.
[ROCm/clr commit: 284d1cb4e3]
2018-01-16 20:41:08 +03:00
Evgeny Mankov d299b7c5fb Merge pull request #319 from emankov/issue_211
[HIPIFY][fix][#211] Algorithm for explicit insert of hip include directive

[ROCm/clr commit: 8f84e7a4ee]
2018-01-16 19:47:15 +03:00
Evgeny Mankov 220f545a59 Merge pull request #323 from emankov/cudaBuiltins
[HIPIFY][tests] Remove checks on cudaBuiltins

[ROCm/clr commit: b452cdb678]
2018-01-16 19:46:41 +03:00
Evgeny Mankov adcd58db5c Update headers_test_03.cu
[ROCm/clr commit: 3db7dc5b9e]
2018-01-16 19:21:59 +03:00
Evgeny Mankov f7605413bf Update headers_test_04.cu
[ROCm/clr commit: 44d51e794b]
2018-01-16 19:21:14 +03:00
Evgeny Mankov 0769a80c94 [HIPIFY][tests] Remove checks on cudaBuiltins
As HIP has started to support vanilla CUDA syntax for threadIdx, blockIdx, blockDim and gridDim.
Other CUDA builtins are not tracked for now.


[ROCm/clr commit: 42f0966a9e]
2018-01-16 17:13:29 +03:00
Evgeny Mankov dea3b9ed95 [HIPIFY][tests] Add more suffixes to lit config
[ROCm/clr commit: 5c82a2e7fa]
2018-01-16 16:40:31 +03:00
Evgeny Mankov 36b0e4003e [HIPIFY][fix][#211] Algorithm for explicit insert of hip include directive
If in source CUDA file main header (cuda_runtime.h or cuda.h) is not presented, corresponding HIP main header (hip_runtime.h) should be explicitly included in output hipified file.

[Algorithm]
1. If #pragma once is presented, HIP main header should be placed just after it;
2. Otherwise if any other (not CUDA main) header is presented, HIP main header should be placed just before it;
3. Otherwise HIP main header should be placed in the beginning of output file.

P.S.
There might be one more situation when #ifndef #define ... #endif guard for the entire file is presented (make sense for *.h, *.hpp, *.cuh files). In this case HIP main include should be placed just after such #ifdef, or after #pragma once, if it is also presented. This situation will be handled in a separate change.


[ROCm/clr commit: e90a76a1ef]
2018-01-15 21:05:05 +03:00
emankov ed9caac587 [HIPIFY][#311][fix] Get rid of socat in run_test.sh
[ROCm/clr commit: f83df46b8c]
2018-01-15 14:20:37 +03:00
Evgeny Mankov 674bcc42a3 [HIPIFY][tests][win] CUDA samples root env. var is changes
Env. var NVCUDASAMPLES_ROOT is changed to NVCUDASAMPLESX_Y_ROOT where X - major ver, Y - minor ver.

Reason: NVCUDASAMPLES_ROOT contains path to CUDA SDK installed last, while NVCUDASAMPLESX_Y_ROOT contains samples of the same version as of CUDA_TOOLKIT_ROOT_DIR.


[ROCm/clr commit: 39a0372077]
2018-01-12 17:15:37 +03:00
Evgeny Mankov cef2317438 Merge pull request #310 from emankov/win_testing
[HIPIFY][tests] Add Windows testing support

[ROCm/clr commit: 1b7c9c6480]
2018-01-12 16:41:56 +03:00
Evgeny Mankov 9a0d16f791 [HIPIFY][tests] Add setlocal to batch script
[ROCm/clr commit: b32639d1a8]
2018-01-10 21:03:02 +03:00
Evgeny Mankov 3e87dc78e6 [HIPIFY][tests] Add Windows testing support
[ROCm/clr commit: 257bc4748c]
2018-01-09 20:20:28 +03:00
Evgeny Mankov 178554cfef [HIPIFY][FIX][#306] Eliminate second cuda main include directive
// hipified to #include<hip/hip_runtime.h>
#include<cuda.h> // 1st cuda main include (Driver API)
// to eliminate
#include<cuda_runtime.h> // 2nd cuda main include (Runtime API)

HIP has one header hip_runtime.h for both CUDA APIs, thus second cuda main include directive is eliminated entirely.


[ROCm/clr commit: 5a45d3ca84]
2017-12-26 20:54:54 +03:00
Chris Kitching c3dc74be1b Add an explicit check for proper rewriting of CUDA includes
[ROCm/clr commit: 642af94492]
2017-11-13 21:02:42 +00:00
Chris Kitching 98034c4e3f Add a preprocessor conditional to one of the tests
Hurrah, we can cope with ifdefs now (except for kernel launches)


[ROCm/clr commit: e8c1e7bb11]
2017-11-13 20:58:55 +00:00
Chris Kitching 41d7a05974 Add a test that exposes #260
[ROCm/clr commit: 0afc6b2e95]
2017-11-13 16:18:15 +00:00
Chris Kitching 5ced4544eb Add a couple of missing CHECK directives to concurrentKernels.cu
[ROCm/clr commit: 4353fc06d7]
2017-11-13 16:17:19 +00:00
Chris Kitching 7360326705 Greatly enhance handling of macros in kernel launches
All but the most contrived use of macros is now properly handled -
have a look at the new testcases this commit adds. You can have
macros in kernel calls, macros spanning chunks of your arguments,
the call, call parameters, or callee can all be macros or
partially macros.


[ROCm/clr commit: 6491c2c3eb]
2017-10-26 17:28:46 +01:00
Chris Kitching 31920efae1 Don't use now-defunct cmake variable in lit test config
[ROCm/clr commit: 8d91579dcf]
2017-10-24 20:52:51 +01:00
Chris Kitching 26be50b082 Add concurentKernels.cu to the testsuite
[ROCm/clr commit: 2c65d0da37]
2017-10-23 13:39:37 +01:00
Chris Kitching 8fffd03350 Add the CUDA samples include dir to the path for tests
Means we get to easily steal CUDA examples for tests


[ROCm/clr commit: 64d5f07050]
2017-10-23 13:39:37 +01:00
Chris Kitching 7547f796d0 Add cudaRegister.cu lit test
[ROCm/clr commit: 2437b31939]
2017-10-23 13:39:37 +01:00
Chris Kitching 8fd3b3b1cd Add square.cu to lit testsuite
[ROCm/clr commit: ead79e5bf4]
2017-10-23 13:39:37 +01:00
Chris Kitching 8b311424a6 Introduce a test runner script to simplify invocation
... And to use a standard, highly amusing trick for making
coloured output work.


[ROCm/clr commit: c99dcbba8d]
2017-10-23 13:39:37 +01:00
Chris Kitching 4e80782cda Adapt lit test for the hipLaunchKernelGGL changes from before...
[ROCm/clr commit: 5912f465bd]
2017-10-23 13:39:37 +01:00
Chris Kitching 0f6c153774 Migrate lit test to using FileCheck, so failures are readable
It seems the test is already broken, but look how awesome the
error message is now:

/home/chris/HIP/tests/hipify-clang/axpy.cu:31:12: error: expected string not found in input
 // CHECK: hipLaunchKernel(HIP_KERNEL_NAME(axpy), dim3(1), dim3(kDataLen), 0, 0, a, device_x, device_y);
           ^
<stdin>:31:2: note: scanning from here
 //
 ^
<stdin>:33:2: note: possible intended match here
 hipLaunchKernelGGL(axpy, dim3(1), dim3(kDataLen), 0, 0, a, device_x, device_y);
 ^


[ROCm/clr commit: 74fd64d5c1]
2017-10-23 13:39:37 +01:00
Chris Kitching baabd2755e Propagate the CUDA toolkit directory into the lit tests
Allows the tests to actually run... :D


[ROCm/clr commit: 9747578d09]
2017-10-23 13:39:36 +01:00
Maneesh Gupta ca0322ab2c clang-hipify -> hipify-clang. Also attempt to build it by default
Change-Id: I694e6c772f5347c820d9bd6c9aa61d6d9696911e


[ROCm/clr commit: 11fd56ed5d]
2016-10-05 13:06:22 +05:30