Full documentation for rocLibrary is available at https://rocm.docs.amd.com/projects/rocAL/.
- Multi-version python
.sobuild support for rocal pybind. Supports python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 - Adds support for pipeline checkpointing in rocAL.
- Adds hipFile support in rocAL numpy reader
- Adds support for voxel augmentations, random object bbox and ROI random cropping in rocAL.
- Removed building wheels for python.
PipelineSerializerclass to implement pipeline serialization functionality in rocAL.- Python function execution support in rocAL.
- Serialization test to validate pipeline serialization functionality.
- Python support and example to test serialization.
- Introduce
NodeFactoryfor dynamic node registration and creation.
- Changes build instructions to omit building of wheels.
- Adds new public APIs rocalSerialize(), rocalGetSerializedString(), and rocalDeserialize() for serializing and deserializing pipelines.
- Add support to store the pipeline and introduce template-based serialization functions for different parameter types to convert to protobuf format.
- Update EnumRegistry to support enum value lookup by type name.
- Adds new method in Argument class for type-safe value retrieval of arguments.
RocalPipelineParamsstruct to represent pipeline configuration parameters used during serialization and deserialization.
- Package installation on SLES requires manually installing
TurboJPEG.
EnumRegistryto register all the enums present in rocAL.Argumentclass which stores the value and type of each argument in the Node.- Support to store the arguments in the Node class.
PipelineOperatorclass to represent operators in the pipeline with metadata.
- OpenCL backend support - deprecated
- CXX Compiler: AMDClang++ - Use compiler core location
${ROCM_PATH}/lib/llvm/bin - Refactor external enum usage in rocAL, to maintain separation between external and internal enums.
- Introduced the following enums ResizeScalingMode, ResizeInterpolationType, MelScaleFormula, AudioBorderType, OutOfBoundsPolicy in commons.h.
- Adds support to track operators in MasterGraph with unique naming.
- Use HIP memory for fused crop rocjpeg decoder
- Resolve an issue in numpy loader where ROI is updated incorrectly
- Resolve an issue in CropResize node where crop_w and crop_h values were not correctly updated
- Package installation on SLES requires manually installing
TurboJPEG. - Package installation on CentOS, RedHat, and SLES requires manually installing the
FFMPEG Devpackage.
- Added JAX iterator support in rocAL
- rocJPEG - Fused Crop decoding support
- CropResize - updates and fixes
- Packaging - Remove Meta Package dependency for HIP
- OpenMP - dependency linking errors resolved
- Bugfix - memory leaks in rocAL
- Package installation on SLES requires manually installing
TurboJPEG. - Package installation on CentOS, RedHat, and SLES requires manually installing the
FFMPEG Devpackage.
- Extended support to rocAL's video decoder to use rocDecode hardware decoder
- Setup - installs rocdecode dev packages for Ubuntu, RedHat, and SLES
- Setup - installs turbojpeg dev package for Ubuntu and Redhat
- rocAL's image decoder has been extended to support the rocJPEG hardware decoder
- Added numpy reader support for reading npy files in rocAL
- Added test case for numpy reader in C++ and python tests
TurboJPEGno longer needs to be installed manually. It is now installed by the package installer.- Hardware decode no longer requires that ROCm be installed with the
graphicsusecase
- Package installation on SLES requires manually installing
TurboJPEG. - Package installation on CentOS, RedHat, and SLES requires manually installing the
FFMPEG Devpackage.
- rocJPEG support for JPEG decode
- AMD Clang is now the default CXX and C compiler.
- The package installation requires manually installing
TurboJPEG - Package installation on CentOS, RedHat, SLES requires manually installing the
FFMPEG Devpackage. - Hardware decode requires installing ROCm with the
graphicsusecase
- rocAL Pybind support for package installation has been added. To use the rocAL python module, set the
PYTHONPATH:export PYTHONPATH=/opt/rocm/lib:$PYTHONPATH - Last batch policy, pad last batch, stick to shard, and shard size support have been added for the coco, caffe, caffe2, mxnet, tf, and cifar10 image readers.
- rocdecode installation disabled when running the setup script.
- rocDecode dependencies for package install has been removed.
- CTest has been updated.
- Test failures have been fixed
- The package installation requires the manual installation of
TurboJPEGandRapidJSON. - CentOS/RedHat/SLES requires additional the manual installation of the
FFMPEG Devpackage. - Hardware decode requires installing ROCm with the
graphicsusecase.
- Optimized audio augmentations support
- The new version of rocAL introduces many new features, but does not modify any of the existing public API functions.However, the version number was incremented from 1.3 to 2.0. Applications linked to version 1.3 must be recompiled to link against version 2.0.
- Added development and test packages.
- Added C++ rocAL audio unit test and Python script to run and compare the outputs.
- Added Python support for audio decoders.
- Added Pytorch iterator for audio.
- Added Python audio unit test and support to verify outputs.
- Added rocDecode for HW decode.
- Added support for:
- Audio loader and decoder, which uses libsndfile library to decode wav files
- Audio augmentation - PreEmphasis filter, Spectrogram, ToDecibels, Resample, NonSilentRegionDetection. MelFilterBank
- Generic augmentation - Slice, Normalize
- Reading from file lists in file reader
- Downmixing audio channels during decoding
- TensorTensorAdd and TensorScalarMultiply operations
- Uniform and Normal distribution nodes
- Image to tensor updates
- ROCm install - use case graphics removed
- Dependencies are not installed with the rocAL package installer. Dependencies must be installed with the prerequisite setup script provided. See the rocAL README on GitHub for details.
- rocAL Tests
- Image augmentations
- Deps
- minor issues
- Linux distribution
- Ubuntu -
20.04/22.04
- Ubuntu -
- ROCm: rocm-core -
6.0.60002-1 - Protobuf - V3.12.4
- OpenCV - 4.6.0
- RPP - 1.4.0
- FFMPEG - n4.4.2
- MIVisionX - master
- Dependencies for all the above packages
- rocAL Setup Script -
V1.0.2
- Requires custom version of libturbo-JPEG