Documentation for HIPIFY is available at https://rocmdocs.amd.com/projects/HIPIFY/en/latest/.
- CUDA 12.6.2 support
- cuDNN 9.5.1 support
- LLVM 19.1.3 support
- Full
hipBLAS
64-bit APIs support - Full
rocBLAS
64-bit APIs support
- Added missing support for device intrinsics and built-ins:
__all_sync
,__any_sync
,__ballot_sync
,__activemask
,__match_any_sync
,__match_all_sync
,__shfl_sync
,__shfl_up_sync
,__shfl_down_sync
, and__shfl_xor_sync
- CUDA 12.6.1 support
- cuDNN 9.5.0 support
- LLVM 19.1.1 support
rocBLAS
64-bit APIs support- Initial support for direct hipification of
cuDNN
intoMIOpen
under the--roc
option - Initial support for direct hipification of
cuRAND
intorocRAND
under the--roc
option - [#1650] Added a filtering ability for the supplementary hipification scripts
- Correct
roc
header files support
- [#1617] Support for
fp8
data types
- cuDNN 9.3.0 support
- Removed some post HIP 6.2 APIs from support
- Added hipification support for HIP functions
hipSetValidDevices
,hipMemcpy2DArrayToArray
,hipMemcpyAtoA
,hipMemcpyAtoD
,hipMemcpyAtoA
,hipMemcpyAtoHAsync
, andhipMemcpyHtoAAsync
- Fixed an issue with
Skipped some replacements
when hipification didn't occur at all
- CUDA 12.5.1 support
- cuDNN 9.2.1 support
- LLVM 18.1.8 support
hipBLAS
64-bit APIs support- Support for Math Constants
math_constants.h
- CUDA 12.4.1 support
- cuDNN 9.1.1 support
- LLVM 18.1.6 support
- Full
hipBLASLt
support
- Apply
reinterpret_cast
for an explicit conversion betweenpointer-to-function
andpointer-to-object
; affected functions:hipFuncGetAttributes
,hipFuncSetAttribute
,hipFuncSetCacheConfig
,hipFuncSetSharedMemConfig
,hipLaunchKernel
, andhipLaunchCooperativeKernel
- cuDNN 9.0.0 support
- LLVM 18.1.2 support
- New options:
--clang-resource-directory
to specify the clang resource path - the path to the parent folder for theinclude
folder that contains__clang_cuda_runtime_wrapper.h
and other header files used during the hipification process
- Clang resource files used during hipification are now searchable and also can be specified by the
--clang-resource-directory
option
- CUDA 12.3.2 support
- cuDNN 8.9.7 support
- LLVM 17.0.6 support
- Full
hipSOLVER
support - Full
rocSPARSE
support - New options:
--amap
to hipify as much as possible, ignoring--default-preprocessor
behavior
- Code blocks skipped by the Preprocessor are not hipified anymore under the
--default-preprocessor
option
- Use the new locations of header files of some HIP and ROCm libraries (
hipRAND
,hipFFT
,rocSOLVER
)
- CUDA 12.2.2 support
- cuDNN 8.9.5 support
- LLVM 17.0.3 support
- Improved support for Windows and Visual Studio 2019 and 2022
- More rocSPARSE support
- ABI changes are shown in the 'C' ('Changed') column for CUDA, HIP, and ROC API
- [#837] Added a new function to call transformation type "additional non-const arg"
- [#1014] Added a new function to call transformation type "replace argument with a const"
- CUDA 12.2.0 support
- cuDNN 8.9.2 support
- LLVM 16.0.6 support
- Initial rocSPARSE support
- Initial
CUDA2ROC
documentation generation for rocBLAS, rocSPARSE, and MIOpen:- In separate files:
hipify-clang --md --doc-format=full --doc-roc=separate
- In one file:
hipify-clang --md --doc-format=full --doc-roc=joint
- In separate files:
- New options:
--use-hip-data-types
(UsehipDataType
instead ofhipblasDatatype_t
orrocblas_datatype
)--doc-roc=\<value\>
(ROC documentation generation:skip
(default),separate
, andjoint
; the--md
or--csv
option must be included)
- [#822] Added a new function to call transformation type "additional const by value arg"
- [#830] Added a new function to call transformation type "move arg from place X to place Y"
- CUDA 12.1.0 support
- cuDNN 8.8.1 support
- LLVM 16.0.0 support
- New options:
--default-preprocessor
(synonymous with--skip-excluded-preprocessor-conditional-blocks
)--no-undocumented-features
--no-warnings-on-undocumented-features
--versions
- Accessing
half2 struct
members (undocumented feature) - Retargeted
INSTALL
to thebin
subfolder
- Partial CUDA 12.0.0 support
- cuDNN 8.7.0 support
- Initial MIOpem support
- cuBLAS 64-bit API (CUDA 12.0) initial support
- rocBLAS and MIOpen synthetic tests
- LLVM 15.0.7 support
- Synthetic unit tests for
cuBLAS2rocBLAS
andcuDNN2MIOpen
- CUDA 11.8.0 support
- cuDNN 8.6.0 support
- Device types support
- LLVM 15.0.4 support
- Removed
RPATH
definitions (Linux)
- hipRTC support
- Error handling API support
- hipBLAS synthetic tests
- LLVM 15.0.0 support
- CUDA 11.7.0 support
- cuDNN 8.4.1 support
- CUB initial support
- More synthetic tests
- New options:
--hip-kernel-execution-syntax
- LLVM 3.8.0 is out of support
- HIPIFY-specific options support in unit testing
- Patches for LLVM 14.0.x (Windows only)
- Add
GNUInstallDirs
for CMake on Linux
- CUDA 11.6.0 support
- cuDNN 8.3.3 support
- LLVM 14.0.0 support
- CUDA 11.5.1 support
- cuDNN 8.3.2 support
- Hipification of
cuOccupancyMaxPotentialBlockSize
andcuOccupancyMaxPotentialBlockSizeWithFlags
- CUDA 11.4.2 support
- cuDNN 8.3.2 support
- Initial hipRTC support
- GNU C/C++ 11.2 support
- Visual Studio 2022 support
- LLVM 13.0.0 support
- New options:
--experimental
--cuda-kernel-execution-syntax
- Support for different formats of locally generated documentation
- Experimentally supported APIs
- Packaging for Debian and RPM Linux distributions
- Undo argument typecasting for four driver API functions (
cuStreamWaitValue32
,cuStreamWaitValue64
,cuStreamWriteValue32
, andcuStreamWriteValue64
) because the arguments in the corresponding HIP functions are nowuint
- cuDNN 8.2.4 support
- Initial graph API support
- GNU C/C++ 11.1 support
- LLVM 12.0.1 support
- Synthetic unit tests
-std=c++14
by default
- Abandoned
HIP_DYNAMIC_SHARED
- CUDA 11.3.0 support
- cuDNN 8.2.0 support
- LLVM 12.0.0 support
- Added missing type casting arguments for
cuStreamWaitValue32(64)
andcuStreamWriteValue32(64)
- CUDA 11.2.2 support
- cuDNN 8.1.1 support
- Initial device API support
- LLVM 11.1.0 support
- New options:
--doc-format=<value>
, withfull
(default),strict
, andcompact
options
- Tests on kernel launch syntax
- CUDA 11.2.0 support
- Stream-ordered memory API support
- cuDNN 8.1.1 support
- LLVM 11.0.1 support
- Initial support for API versioning
- Patches for LLVM 10.0.x and 11.0.0 (Windows and Linux)
- LLVM 11.0.0 support
- Revised CUDA and HIP API and data type versioning
- Revised and removed deprecated CUDA and HIP APIs and data types
-
CUDA 11.0.1 support
-
CUDA2HIP
documentation generation in Markdown and CSV formats -
Versioning support for CUDA and HIP APIs
-
New options:
--md
(generate Markdown documentation)--csv
(generate CSV documentation)
-
Improved
hipify-perl
generation
- cuDNN 8.0.2 support
compile_commands.json
support (-p <build-path>
)
- Improved
hipify-perl
generation
- CUDA 11.0.0 support
- Linux packaging
- LLVM 10.0.1 support
deprecated
flag for all corresponding CUDA and HIP APIs
- Added warning for all deprecated APIs
- CUDA 10.2.0 support
- cuDNN 7.6.5 support
- LLVM 10.0.0 support
hipify-clang
andclang
options separator (--
) support