CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
14 KiB
14 KiB
Changelog for RPP
Full documentation for RPP is available at https://rocm.docs.amd.com/projects/rpp/en/latest
(Unreleased) RPP 3.1.2
Added
- Single-image processing support for 8 kernels (Brightness, Blend, Box Filter, Crop, Flip, Gaussian Filter, Median Filter, Resize Nearest Neighbor) to match performance with OpenCV
- Runtime backend selection parameter (
RppBackend executionBackend) for all RPP tensor API functions - Backend tracking in
rppHandle_tto store backend type (HOST or HIP)
Changed
- 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
- Test suite dependency on TurboJPEG removed. Updated to use .rgb files as input.
- OpenCV and pandas are changed to optional dependency for the test suite
(Unreleased) RPP 3.0.0
- 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. - Added
rpp_BACKEND_TYPEandrpp_AUDIO_AUGMENTATIONS_SUPPORTvariables to RPP CMake package config.
Removed
- BatchPD legacy support completely removed
- LEGACY_SUPPORT compilation flag and all code enclosed within it
- OpenCL backend support
- Batch PD test suite and installation
Changed
- 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
- Updated test suite to use
rpp_BACKEND_TYPEandrpp_AUDIO_AUGMENTATIONS_SUPPORTvariables from RPP CMake package config instead of header parsing. find_package(rpp)now automatically passes on public include directories to the target link interface.
RPP 2.2.1 for ROCm 7.2.1
Added
- Error-code capture in test scripts for all C++ tests.
Optimized
- 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.
RPP 2.2.0 for ROCm 7.2.0
Added
- Pinned buffer API support for HOST and HIP
Changed
- AMDClag++ compiler has moved to
${ROCM_PATH}/lib/llvm/bin
Removed
- The
copy_param_float()andcopy_param_uint()mem copy helper functions have been removed as buffers now consistently use pinned/HIP memory
Resolved issues
- Test Suite - Error Code Capture updates
RPP 2.1.0 for ROCm 7.1.0
Added
- 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
Changed
- HALF - Fix half.hpp path updates
- Box filter - padding updates
Removed
- Packaging - Remove Meta Package dependency for HIP
- SLES 15 SP6 support
Resolved issues
- Test Suite - Fixes for accuracy
- HIP Backend - Check return status warning fixes
- Bugfix - HIP vector types init
RPP 2.0.0 for ROCm 7.0.0
Added
- 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)
Changed
- 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 -
Removed
- 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().
Resolved issues
- Test package - debian packages will install required dependencies
RPP 1.9.10 for ROCm 6.4.0
Added
- 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)
Changed
- 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)
Resolved issues
- 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 1.9.1 for ROCm 6.3.0
Added
- 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
Changed
- Test prerequisites have been updated.
Removed
- Older versions of TurboJPEG have been removed.
Optimized
- Updated the test suite
Resolved issues
- macOS build
- RPP Test Suite: augmentations fix
- Copy: bugfix for
NCDHWlayout - MIVisionX compatibility fix: Resample and pre-emphasis filter
Known issues
- Package installation only supports the HIP backend.
Upcoming changes
- Optimized audio augmentations
RPP 1.8.0 for ROCm 6.2.0
Changes
- 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
Tested configurations
- 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
RPP 1.5.0 for ROCm 6.1.1
Changes
- Prerequisites
Tested configurations
- 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
RPP 1.4.0 for ROCm 6.0.0
Additions
- 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
Optimizations
- CMakeLists
Changes
- Documentation
- Replaced boost functions with the standard C++ library to remove boost library dependency
Fixes
- OCL backend
Tested configurations
- 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
RPP 1.3.0 for ROCm 5.7.1
Additions
- Updated unit tests
Optimizations
- CMakeLists
Changes
- Documentation
Fixes
- OCL backend
Tested configurations
- 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
RPP 1.2.0 for ROCm 5.7.1
Additions
- Updated unit tests
Optimizations
- CMakeLists
Changes
- Documentation
Fixes
- OCL backend
- Jenkins CI - OCL Build Test
Tested configurations
- 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
RPP 1.1.0 for ROCm 5.7.0
Additions
- Parameter support for OpenMP numthreads
Optimizations
- Readme updates
Changes
- RPP API updates
Fixes
- Minor bugs
Tested configurations
- 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
Known issues
- SLES - the Clang package is missing in the latest updates, which means Clang must be manually installed.
RPP 1.0.0 for ROCm 5.7.0
Additions
- Test Suite for all backends
Optimizations
- Readme updates
- Tests
- Build and prerequisites
Changes
- Our name has changed from Radeon Performance Primitives to ROCm Performance Primitives
- Lib name:
amd_rpptorpp
Fixes
- Minor bugs
- Tests
- Readme
Tested configurations
- 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
Known issues
- SLES - the Clang package is missing in the latest updates, which means Clang must be manually installed.
RPP 0.99 for ROCm 5.7.0
Additions
- Linux dockers
Optimizations
- Readme updates
Changes
- CMakeList
Fixes
- Minor bugs and warnings
Tested configurations
- 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
RPP 0.98 for ROCm 5.7.0
Additions
- Dockers
Optimizations
- Readme updates
Changes
- CMakeList
Fixes
- Minor bugs and warnings
Tested configurations
- 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
RPP 0.97 for ROCm 5.7.0
Additions
- Support for CentOS 7 & SLES 15 SP2
- Support for ROCm 5.3+
- Support for Ubuntu 22.04
Optimizations
- Readme updates
Changes
- CMakeList updates
Fixes
- Minor bugs and warnings
Tested configurations
- 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
RPP 0.96 for ROCm 5.7.0
Additions
- New tests
Optimizations
- Readme updates
Changes
CPU/HIP/OpenCLbackend updates
Fixes
- Minor bugs and warnings
Tested configurations
- 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
Known issues
- RPP is not supported on CentOS 7 and SLES SP2
RPP 0.95 for ROCm 5.7.0
Additions
- New tests
- CPU backend support
Optimizations
- Readme updates
Changes
HIPis now the default backend
Fixes
- Minor bugs and warnings
Tested configurations
- 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
Known issues
- ROCm reorganization: install updates no longer match ROCm specifications
RPP 0.93 for ROCm 5.7.0
Additions
- New tests
Optimizations
- Readme updates
Changes
HIPis now the default backend
Fixes
- Minor bugs and warnings
Tested configurations
- 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
Known issues
CPUbackend is not enabled