Release Notes
This document describes the key features, software enhancements and improvements, and known issues for DALI 1.35.0. For previously released DALI documentation, see DALI Archives.
Overview
DALI offers both performance and flexibility of accelerating different data pipelines (graphs that can have multiple outputs and inputs), as a single library, that can be easily integrated into different deep learning training and inference applications.
Using DALI
Note
DALI builds for NVIDIA® CUDA® 12 dynamically link the CUDA toolkit. To use DALI, install the latest CUDA toolkit.
To upgrade to DALI 1.35.0 from a previous version of DALI, follow the installation and usage information in the DALI User Guide.
Note
The internal DALI C++ API used for operator’s implementation, and the C++ API that enables using DALI as a library from native code, is not yet officially supported. Hence these APIs may change in the next release without advance notice.
Key Features and Enhancements
This DALI release includes the following key features and enhancements:
Added support for PaddlePaddle and JAX iterators (5279 and 5282).
Added support for checkpointing of iterators with different last batch policies (5298 and 5278).
Added a tutorial about running DALI with T5X (5286).
Added a
do_not_convertdecorator to address problems with the parallelfn.external_sourceand conditional execution (5263).
Fixed Issues
The following fixes are included in this release:
Fixed the missing
nvmlShutdowncalls (5311).Fixed the
fn.readers.videohandling of sequences larger than 2GB (5307).Fixed the
fn.resizehandling of samples larger than 2GB (5306).Fixed support for multi-node JAX sharding (5242).
Fixed the handling of decorated callbacks and methods in
fn.external_source(5268).Fixed the insufficient synchronization that occurred when restoring random generators from a checkpoint (5273).
Breaking Changes
There are no breaking changes in this release.
Deprecated Features
There are no deprecated features in this release.
Known Issues
This DALI release includes the following known issues:
The
experimental.readers.fits,experimental.decoders.video,experimental.inputs.video, andexperimental.decoders.image_random_cropoperators do not currently support checkpointing.The video loader operator requires that the key frames occur, at a minimum, every 10 to 15 frames of the video stream.
If the key frames occur at a frequency that is less than 10-15 frames, the returned frames might be out of sync.
The experimental
VideoReaderDecoderdoes not support open GOP.It will not report an error and might produce invalid frames.
VideoReaderuses a heuristic approach to detect open GOP and should work in most common cases.In experimental debug and eager modes, the GPU external source is not properly synchronized with DALI internal streams.
As a workaround, you can manually synchronize the device before returning the data from the callback.
Due to some known issues with meltdown/spectra mitigations and DALI, DALI shows the best performance when running in Docker with escalated privileges, for example:
privileged=yesin Extra Settings for AWS data points--privilegedor--security-opt seccomp=unconfinedfor bare Docker