Full documentation for RPP is available at https://rocm.docs.amd.com/projects/rpp/en/latest
- Runtime backend selection parameter (
RppBackend executionBackend) for all RPP tensor API functions - Backend tracking in
rppHandle_tto store backend type (HOST or HIP) - Added
RPP_ERROR_HIP_LAUNCHerror type for reporting HIP kernel launch errors.
- BatchPD legacy support completely removed
- LEGACY_SUPPORT compilation flag and all code enclosed within it
- OpenCL backend support
- Batch PD test suite and installation
- All RPP tensor API functions now unified with a single function signature
- Updated all test suite calls to use unified API with backend parameter
- Enhanced layout validation for image augmentations within unified API
- CMakeLists.txt updated to remove batch PD references
- Error-code capture in test scripts for all C++ tests.
- Optimized F16 variants by replacing scalar load/store operations with AVX2 intrinsics for spatter, log, blend, color_cast, flip, crop_mirror_normalize, and exposure kernels.
- Pinned buffer API support for HOST and HIP
- AMDClag++ compiler has moved to
${ROCM_PATH}/lib/llvm/bin
- The
copy_param_float()andcopy_param_uint()mem copy helper functions have been removed as buffers now consistently use pinned/HIP memory
- Test Suite - Error Code Capture updates
- Solarize augmentation for HOST and HIP
- Hue and Saturation adjustment augmentations for HOST and HIP
- Find RPP - cmake module
- Posterize augmentation for HOST and HIP
- HALF - Fix half.hpp path updates
- Box filter - padding updates
- Packaging - Remove Meta Package dependency for HIP
- SLES 15 SP6 support
- Test Suite - Fixes for accuracy
- HIP Backend - Check return status warning fixes
- Bugfix - HIP vector types init
- Bitwise NOT, Bitwise AND, Bitwise OR augmentations on HOST (CPU) and HIP backends. (#520)
- Tensor Concat augmentation on HOST (CPU) and HIP backends. (#530)
- JPEG Compression Distortion augmentation on HIP backend. (#538)
log1p, defined aslog (1 + x), tensor augmentation support on HOST (CPU) and HIP backends.- JPEG Compression Distortion augmentation on HOST (CPU) backend. (#531)
- All handle creation and destruction APIs have been consolidated to
rppCreate(), for handle initialization, andrppDestroy(), for handle destruction (#513) - RPP function category "logical_operations" more appropriately renamed to "bitwise_operations". (#520)
- TurboJPEG package installation enabled for RPP Test Suite with
sudo apt-get install libturbojpeg0-dev. Instructions updated in utilities/test_suite/README.md. (#518) - Changed API of swap_channels augmentation to be called channel_permute, which now accepts one new argument, "permutationTensor" (pointer to a unsigned int tensor) that provides the permutation order to swap the RGB channels of each input image in the batch in any order. (#547)
- Old API -
RppStatus rppt_swap_channels_host(RppPtr_t srcPtr, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, rppHandle_t rppHandle); - New API -
RppStatus rppt_channel_permute_host(RppPtr_t srcPtr, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, Rpp32u *permutationTensor , rppHandle_t rppHandle);
- Old API -
- Older versions of RPP handle creation inlcuding
rppCreateWithBatchSize(),rppCreateWithStream(), andrppCreateWithStreamAndBatchSize()are now removed and replaced withrppCreate(). - Older versions of RPP handle destruction API including
rppDestroyGPU()andrppDestroyHost()are now removed and replaced withrppDestroy().
- Test package - debian packages will install required dependencies
- RPP Tensor Gaussian Filter support on HOST (CPU) backend. (#478)
- RPP Fog augmentation on HOST (CPU) and HIP backends. (#446)
- RPP Rain augmentation on HOST(CPU) and HIP backends. (#463)
- RPP Warp Perspective on HOST (CPU) and HIP backends. (#451)
- RPP Tensor Bitwise-XOR support on HOST (CPU) and HIP backends. (#464)
- RPP Threshold on HOST (CPU) and HIP backends. (#456)
- RPP Tensor Box Filter support on HOST (CPU) backend.(#425)
- RPP Audio Support for Spectrogram on HIP backend. (#433)
- RPP Audio Support for Mel Filter Bank on HIP backend. (#421)
- AMD Clang is now the default CXX and C compiler
- AMD RPP can now pass HOST (CPU) build with g++ (#517)
- Test Suite case numbers have been replaced with ENUMs for all augmentations to enhance test suite readability (#499)
- Test suite updated to return error codes from RPP API and display them (#483)
- Internal to RPP working - Restructure half.hpp and hip_fp16.h includes in one common header (#459)
- CXX Compiler: Fixed HOST (CPU) g++ issues. (#517)
- Deprecation warning fixed for the "'sprintf' is deprecated" warning. (#512)
- Test suite build fix - RPP Test Suite Pre-requisite instructions updated to lock to a specific 'nifti_clib' commit as stated in ReadME - https://github.com/ROCm/rpp/tree/develop/utilities/test_suite#prerequisites (#506)
- Fixed broken image links for pixelate and jitter (#461)
- Internal to RPP working - Bugfix for Log Tensor in stride updation in log_recursive function (#479)
- RPP Glitch has been added to the HOST and HIP backend.
- RPP Pixelate has been added to the HOST and HIP backend.
- The following audio support was added to the HIP backend:
- Resample
- Pre emphasis filter
- Down-mixing
- To Decibels
- Non silent region
- Test prerequisites have been updated.
- Older versions of TurboJPEG have been removed.
- Updated the test suite
- macOS build
- RPP Test Suite: augmentations fix
- Copy: bugfix for
NCDHWlayout - MIVisionX compatibility fix: Resample and pre-emphasis filter
- Package installation only supports the HIP backend.
- Optimized audio augmentations
- Prerequisites - ROCm install requires only --usecase=rocm
- Use pre-allocated common scratchBufferHip everywhere in Tensor code for scratch HIP memory
- Use CHECK_RETURN_STATUS everywhere to adhere to C++17 for hip
- RPP Tensor Audio support on HOST for Spectrogram
- RPP Tensor Audio support on HOST/HIP for Slice, by modifying voxel slice kernels to now accept anchor and shape params for a more generic version
- RPP Tensor Audio support on HOST for Mel Filter Bank
- RPP Tensor Normalize ND support on HOST and HIP
- Linux distribution
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
6.1.0.60100 - Clang - Version
5.0.1 - CMake - Version
3.22.3 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Prerequisites
- Linux distribution
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
5.5.0.50500-63 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Updated unit tests
- Component-based packaging enabled for dev/runtime/ASan
- ASas build install/package changes added
- License file added to package
- Jenkins Groovy CI scripts enhanced to support multi-component package testing
- CMakeLists
- Documentation
- Replaced boost functions with the standard C++ library to remove boost library dependency
- OCL backend
- Linux
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
5.5.0.50500-63 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Updated unit tests
- CMakeLists
- Documentation
- OCL backend
- Linux
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
5.5.0.50500-63 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Updated unit tests
- CMakeLists
- Documentation
- OCL backend
- Jenkins CI - OCL Build Test
- Linux
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
5.5.0.50500-63 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Parameter support for OpenMP numthreads
- Readme updates
- RPP API updates
- Minor bugs
- Linux
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
5.5.0.50500-63 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- SLES - the Clang package is missing in the latest updates, which means Clang must be manually installed.
- Test Suite for all backends
- Readme updates
- Tests
- Build and prerequisites
- Our name has changed from Radeon Performance Primitives to ROCm Performance Primitives
- Lib name:
amd_rpptorpp
- Minor bugs
- Tests
- Readme
- Linux
- Ubuntu -
20.04/22.04 - CentOS -
7 - RHEL -
8/9
- Ubuntu -
- ROCm: rocm-core -
5.4.0.50400-72 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- SLES - the Clang package is missing in the latest updates, which means Clang must be manually installed.
- Linux dockers
- Readme updates
- CMakeList
- Minor bugs and warnings
- Linux distribution
- Ubuntu -
20.04/22.04 - CentOS -
7/8
- Ubuntu -
- ROCm: rocm-core -
5.4.0.50400-72 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Dockers
- Readme updates
- CMakeList
- Minor bugs and warnings
- Linux
- Ubuntu -
20.04/22.04 - CentOS -
7/8
- Ubuntu -
- ROCm: rocm-core -
5.3.0.50300-63 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- Support for CentOS 7 & SLES 15 SP2
- Support for ROCm 5.3+
- Support for Ubuntu 22.04
- Readme updates
- CMakeList updates
- Minor bugs and warnings
- Linux distribution
- Ubuntu -
20.04/22.04 - CentOS -
7/8
- Ubuntu -
- ROCm: rocm-core -
5.3.0.50300-36 - Clang - Version
5.0.1and above - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- New tests
- Readme updates
CPU/HIP/OpenCLbackend updates
- Minor bugs and warnings
- Linux
- Ubuntu -
18.04/20.04 - CentOS -
8
- Ubuntu -
- ROCm: rocm-core -
5.2.0.50200-65 - Clang - Version
6.0+ - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- RPP is not supported on CentOS 7 and SLES SP2
- New tests
- CPU backend support
- Readme updates
HIPis now the default backend
- Minor bugs and warnings
- Linux
- Ubuntu -
18.04/20.04 - CentOS -
8
- Ubuntu -
- ROCm: rocm-core -
5.2.0.50200-65 - Clang - Version
6.0 - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
- ROCm reorganization: install updates no longer match ROCm specifications
- New tests
- Readme updates
HIPis now the default backend
- Minor bugs and warnings
- Linux
- Ubuntu -
18.04/20.04 - CentOS -
8
- Ubuntu -
- ROCm: rocm-core -
5.0.0.50000-49 - Clang - Version
6.0 - CMake - Version
3.22.3 - Boost - Version
1.72 - IEEE 754-based half-precision floating-point library - Version
1.12.0
CPUbackend is not enabled