Commit Graph

312 Commits

Author SHA1 Message Date
ansurya df4dee39f4 Add Max Texture 1D,2D,3D device properties (#1226)
* Add Max Texture 1D,2D,3D device properties

* Corrected testcase to use enums defined in hipDeviceAttribute_t

* Added texture 1D,2D and 3D support for NVIDIA path


[ROCm/hip commit: 8e496c09d9]
2019-07-18 03:18:50 +00:00
Evgeny Mankov 1ccb6ea65e Merge pull request #1220 from emankov/master
[HIP][HIPIFY] Split HIP_ARRAY_DESCRIPTOR struct to HIP_ARRAY_DESCRIPTOR and HIP_ARRAY3D_DESCRIPTOR

[ROCm/hip commit: 7a87fc6c04]
2019-07-16 18:15:44 +03:00
Evgeny Mankov 4af0161c34 [HIPIFY][doc] Update README.md: the latest cuDNN 7.6.1.34 is supported
[ROCm/hip commit: e5fcb5f964]
2019-07-12 18:49:54 +03:00
Evgeny Mankov 33a5eca319 [HIPIFY][#1221] Add regex replacements for include refs with path separators while generating hipify-perl
[ROCm/hip commit: 6b4a1fe1db]
2019-07-12 16:18:00 +03:00
Evgeny Mankov 96801f7b3a [HIP][HIPIFY] Split HIP_ARRAY_DESCRIPTOR struct to HIP_ARRAY_DESCRIPTOR and HIP_ARRAY3D_DESCRIPTOR
[Reason] To be compatible with CUDA [#1133]

Update HIP code, hipify-clang, tests and docs

[TODO] Add support of the corresponding functions on nvcc fallback path


[ROCm/hip commit: c7117df91b]
2019-07-11 14:58:16 +03:00
Evgeny Mankov 5e8190aa9c [HIPIFY] Statistics to CSV file dumping revise
+ Add option -print-stats-csv to dump statistics to CSV file
+ If -o-dir is specified, CSV file will be dumped there
+ Generate 1 summary file sum_stat.csv in case of multiple sources


[ROCm/hip commit: 3b40e53cff]
2019-07-07 20:55:17 +03:00
Evgeny Mankov eeb66048f3 [HIPIFY] Clang 7.1.0 support
+ Provide patch for clang's bug 38811
+ Update Readme.md accordingly


[ROCm/hip commit: 36cda83066]
2019-06-29 17:23:18 +03:00
Evgeny Mankov 7cb92aeb9a [HIPIFY] Fix multiple input files support
Reported in #1168


[ROCm/hip commit: db6571ae75]
2019-06-20 18:05:57 +03:00
Evgeny Mankov 9cda729bbb [HIPIFY][DNN] Support of cuDNN 7.6.0
+ Update docs and README.md accordingly


[ROCm/hip commit: b72909055d]
2019-05-27 21:44:53 +03:00
Evgeny Mankov c3d7fd8d6c [HIPIFY][LLVMCompat] Support of upcoming LLVM 9.0.0
[ROCm/hip commit: e1f6538daa]
2019-05-24 15:14:14 +03:00
Evgeny Mankov 6ba67c4a81 [HIPIFY] Add device texture fetch functions support
+ Add a corresponding reverse engineered sample tex2dKernel with texture template


[ROCm/hip commit: c7a2b4e492]
2019-05-23 12:47:08 +03:00
Evgeny Mankov cd309b6638 [HIP][HIPIFY] Make hipMemcpyParam2D coherent with cuMemcpy2D
+ Makes hip_Memcpy2D struct compatible with CUDA_MEMCPY2D struct
+ Add hipMemcpyParam2D support in nvcc fallback path
+ Update hipify-clang, tests and docs accordingly


[ROCm/hip commit: 8f059b0ee9]
2019-05-22 18:31:39 +03:00
Evgeny Mankov 79b6ba52e8 [HIPIFY][doc] Update README.md
+ Populate supported CUDA and LLVM releases with hyperlinks


[ROCm/hip commit: 60609b07bb]
2019-05-20 13:03:26 +03:00
Evgeny Mankov ca5d1e1ce6 Update README.md
[ROCm/hip commit: b29b8bb690]
2019-05-16 18:16:17 +03:00
Evgeny Mankov 50253b37be [HIPIFY][doc] Update README.md
+ Update logs
+ Formatting


[ROCm/hip commit: 6508ca8e76]
2019-05-16 18:07:11 +03:00
Evgeny Mankov ce28dc83e4 [HIPIFY][cuDNN] Add cudnnGetFilter4dDescriptor support
+ Update cudnn_convolution_forward test accordingly


[ROCm/hip commit: aed2affda2]
2019-05-16 16:36:23 +03:00
Evgeny Mankov 2472ece71d [HIPIFY][fix][#1109] Do not preserve extern __shared__ for IncompleteArrayType
+ Update tests accordingly


[ROCm/hip commit: fa3dda9107]
2019-05-15 20:05:56 +03:00
Evgeny Mankov 265f9336f5 [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).


[ROCm/hip commit: d74d03aa74]
2019-05-14 16:43:44 +03:00
Evgeny Mankov cabe0bb799 [HIPIFY][python] Initial support of hipify-python generation from hipify-clang
+ Only a generation of transformation map of CUDA entities is implemented.
+ 2 hipify-clang options are added: -python, -o-python-map-dir.
+ Explicitly set -roc option for cuda_to_hip_mappings.py generation.
+ Generated file already might be used by pytorch team.


[ROCm/hip commit: 6b370e7743]
2019-05-08 19:08:55 +03:00
Evgeny Mankov aea6e34875 [HIPIFY][perl] Support of hipify-perl generation from hipify-clang: next steps
+ Generate transformation map sorted by entity type.
+ Add a generation of supported header files.


[ROCm/hip commit: 9ddc316fa7]
2019-05-08 15:25:06 +03:00
Evgeny Mankov b66ecc6596 [HIPIFY][perl] Initial support of hipify-perl generation from hipify-clang
+ Only a generation of transformation map of CUDA entities supported by HIP is implemented.
+ 3 hipify-clang options are added: -perl, -o-perl-map, -o-perl-map-dir.
+ OptionsParser mode is changed from OneOrMore to Optional to support hipify-perl generation without actual hipification.
+ Add explicit control of source files specification absence in case of no perl generation.


[ROCm/hip commit: 5a3d33a338]
2019-05-07 17:27:34 +03:00
Evgeny Mankov 2b16e01c66 [HIPIFY][doc] Update Readme.md: latest cuDNN 7.5.1.10 is supported
+ tested with CUDA 9.0, 9,2, 10.0 and 10.1


[ROCm/hip commit: c0705f892b]
2019-04-29 15:41:08 +03:00
Evgeny Mankov 86d68901da [HIPIFY][DNN] cudnnSetFilter4dDescriptor support
[ROCm/hip commit: 3fee0f3765]
2019-04-25 12:18:51 +03:00
Evgeny Mankov d51679ed8e [HIPIFY][fix][#204] Suppress warning message: #pragma once in main file
[ROCm/hip commit: 6d3c443234]
2019-04-24 20:35:52 +03:00
Evgeny Mankov 43839c780e [HIPIFY][doc] Update README.md
+ A few words about clang patches to work with CUDA 9.2 - 10.0 on Windows;
+ Fix cuDNN versions with correct values.


[ROCm/hip commit: 4651dce3f0]
2019-04-24 17:40:35 +03:00
Evgeny Mankov 3fb77dbef5 [HIPIFY][doc] Provide patches for clang's bug 38811
+ Update Readme.md accordingly


[ROCm/hip commit: 57931b3056]
2019-04-23 21:13:00 +03:00
Evgeny Mankov 43d7714fe4 [HIPIFY][SPARSE] cuSPARSE 10.1 support
[ROCm/hip commit: e1c87d8cae]
2019-04-16 14:59:44 +03:00
Evgeny Mankov fec9f62e0f [HIPIFY][BLAS] cuBLAS 10.1 support
[ROCm/hip commit: 032c3bf5b8]
2019-04-16 12:52:58 +03:00
Evgeny Mankov a7e36937ca [HIPIFY][cuDNN] Add partial cudnnRNNBiasMode_t support
[ROCm/hip commit: 1b36987c5f]
2019-04-16 11:01:01 +03:00
Evgeny Mankov e73bfab77c [HIPIFY] cuDNN 7.5.0.56 support
[ROCm/hip commit: d3a810ab11]
2019-04-15 15:46:46 +03:00
Evgeny Mankov 9087c06f8f [HIPIFY] CUDA 10.1 Runtime API support
[ROCm/hip commit: d2d2889bfe]
2019-04-10 18:41:36 +03:00
Evgeny Mankov ac64c184fb [HIPIFY] CUDA 10.1 Driver API support
[ROCm/hip commit: b0879cd959]
2019-04-10 15:03:34 +03:00
Evgeny Mankov cb90b40344 [HIPIFY][cmake][doc] Update CMakeLists and Readme cause CUDA 10.1 and clang 8.0.0 are released
+ Fix the error in cmake: clang 8.0.0 supports CUDA 10.0, not 10.1; only trunk clang 9.0.0 supports CUDA 10.1.
+ Update Readme:
  1. clang's bug 36384 is gone, so latest stable release for Linux is clang 8.0.0, which supports CUDA up to 10.0;
  2. update dependencies, testing and building notes.


[ROCm/hip commit: 53091e5378]
2019-04-08 20:05:21 +03:00
Evgeny Mankov 9e32584753 [HIPIFY][cmake] Update CMakeLists and Readme cause CUDA 10.1 and clang 8.0.0 are released
[ROCm/hip commit: 7c221450fa]
2019-04-01 19:44:52 +03:00
Evgeny Mankov effdffc006 [HIPIFY] Change CUDA Driver's functions' cuMemsetD32(Async) mapping
cuMemsetD32(Async) -> hipMemsetD32(Async) (was hipMemset(Async))

based on:
[#933] https://github.com/ROCm-Developer-Tools/HIP/pull/933


[ROCm/hip commit: a87d798d90]
2019-03-05 18:13:18 +03:00
Evgeny Mankov 55d9cd6a65 [HIPIFY][doc] Update README.md
+ Populate Dependencies section with upcoming LLVM versions
+ Add clang bugs for not working configs LLVM+CUDA
+ Update Testing section


[ROCm/hip commit: 391aa7221b]
2019-02-25 18:26:25 +03:00
Evgeny Mankov 3a57fc0a4b [HIPIFY][Caffe2] Initial Caffe2 support
[ROCm/hip commit: 2619f22e5c]
2019-02-23 20:46:22 +03:00
Evgeny Mankov d91590a98b [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


[ROCm/hip commit: d26dc3cea7]
2019-02-13 19:40:59 +03:00
Evgeny Mankov 88da4a036f [HIPIFY][RAND] revise
+ add missing functions
+ add minimum rocRAND support
+ updated CURAND_API_supported_by_HIP.md


[ROCm/hip commit: 7ba8c440e6]
2019-02-08 17:54:28 +03:00
Evgeny Mankov 32bbedaa55 [HIPIFY][BLAS] Restrict hipification to 'ROC' to BLAS library only
+ Add utility functions isToRoc, isHipUnsupported, isRocUnsupported, isUnsupported


[ROCm/hip commit: e93fe78648]
2019-02-07 13:17:05 +03:00
Evgeny Mankov af1b0a2834 [HIPIFY][BLAS] Support of hipifying cuBLAS to rocBLAS
[ROCm/hip commit: 389807095e]
2019-02-06 18:47:21 +03:00
Evgeny Mankov 0ebdc54f79 [HIPIFY] Introduce Verbose '-v' option as hipify's own
[ROCm/hip commit: ce28bc79ef]
2019-01-30 15:19:06 +03:00
Evgeny Mankov e65d1f2dc1 [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


[ROCm/hip commit: 4ff355357f]
2019-01-24 14:05:36 +03:00
Evgeny Mankov 6789cec88f [HIPIFY][fix][#867] Relative paths routines fixes and improvements
+ Always check for existence any file or dir, first of all, because real_path and make_absolute differ: real_path additionally performs access on file/dir.
+ Relative path routines in source files implemented similarly to dirs.
+ Error handling improvements.


[ROCm/hip commit: 1be38618e2]
2019-01-16 19:30:09 +03:00
Evgeny Mankov 2f5951d54c [HIPIFY] rename variables as requested in review
[ROCm/hip commit: e6c09bb9af]
2019-01-14 21:19:34 +03:00
Evgeny Mankov 225a0f3310 [HIPIFY] Introduce '-D' option as hipify-clang's one
+ '-D' might be set as hipify-clang option (before separator '--' or without specifying separator at all);
+ '-D' as a clang option might be specified as well (after options separator '--');
+ All defines specified as hipify-clang defines (before options separator '--') will be set after clang's ones and will redefine the same clang's ones.


[ROCm/hip commit: 13ffeb47ce]
2019-01-14 19:34:42 +03:00
Evgeny Mankov 937d78963b [HIPIFY] Introduce '-I' option as hipify-clang's one
+ '-I' might be set as hipify-clang option (before separator '--' or without specifying separator at all);
+ '-I' as a clang option might be specified as well (after options separator '--').


[ROCm/hip commit: 93aeb04cec]
2019-01-14 18:23:54 +03:00
Evgeny Mankov 1e63082cba [HIPIFY][cmake] Add header files to the project explicitly
[ROCm/hip commit: bd39d852f5]
2019-01-10 19:45:43 +03:00
Evgeny Mankov 3792d264c0 [HIPIFY] Introduce '--' option - a separator between hipify-clang and clang options
+ Append '--' to the end of hipify-clang options in case of its absence.

[Reason]
+ Avoid the necessity for the user in JSON compilation database specification.
  Otherwise:
  Error while trying to load a compilation database:
  Could not auto-detect compilation database for file "test.cu"

  Though the hipification will be performed correctly without JSON database.


[ROCm/hip commit: aa4c59ae0c]
2019-01-10 18:27:30 +03:00
Evgeny Mankov b932304bfc [HIPIFY] option cuda-path might be used with '--' as well as with a single dash: '-'
+ Update README.md


[ROCm/hip commit: 0206fadc14]
2019-01-10 18:01:33 +03:00