github NVIDIA/DALI v1.11.0
DALI v1.11.0

latest releases: v1.45.0-dev, v1.43.0, v1.44.0-dev...
2 years ago

Key Features and Enhancements

This DALI release includes the following key features and enhancements.

  • Added the GPU laplacian operator (#3644, #3618).
  • Updated the optical_flow operator to use the latest SDK capabilities (#3625).
  • Extended the readers.webdataset operator to support pax POSIX.1-2001 tar format. (#3645).
  • Improved the performance of the slice operator (#3604, #3600).
  • Improved the debug (immediate execution) mode:
    • Added the direct use of external sources (#3605).
    • Extended the API and added a string representation and the .shape method to data nodes (#3647, #3591).
    • Added support for deterministic seed generation (#3589).
    • Added a tutorial notebook (#3648).

Fixed Issues

  • Fixed the incorrect construction of TensorList from a list of tensors (#3626).
  • Fixed an issue in the CPU readers.video operator that prevented it from working in the CPU-only mode (#3660).

Improvements

  • Improve checking if it is safe to fork the DALI process (#3671)
  • Add debug mode tutorial notebook (#3648)
  • Dynamic & stream-aware scratchpad (#3667)
  • Use fn API in non-silent tests (#3666)
  • Frames decoder gpu (#3615)
  • Add Laplacian GPU operator (#3644)
  • Update third party (#3632)
  • Improve the documentation about CPU tensors and named arguments (#3655)
  • Update docs for the parallel option in external source (#3654)
  • Update optical flow operator to use the latest OF SDK capabilities (#3625)
  • Remove deprecated usage of .dtype() method (#3650)
  • Update pattern used to generate TFRecord idx files (#3653)
  • Add one_hot benchmark (#3553)
  • Add str and repr for Tensor, TensorList and DataNode[Debug] (#3647)
  • Relax test tolerance in DisplacementTest/Sphere and Water (#3649)
  • Update warp_affine test and docs (#3639)
  • Remove unnecessary Dockerfile.cuda116.x86_64deps file (#3642)
  • Updates FindNVJPEG.cmake (#3643)
  • Add JPEG compression distortion to augmentation gallery (#3633)
  • Use index slicing in geometric transformation notebook (#3635)
  • Add support for tar pax POSIX.1-2001 WebDataset (#3645)
  • Remove redundant tests (#3634)
  • Add dtype member for TensorList and modify dtype for Tensor (#3628)
  • Remove dependency between dali_test.bin and dali_operators lib (#3637)
  • Add Laplacian GPU kernel (#3618)
  • Updated PR template (#3619)
  • Remove synchronization from deallocate. (#3497)
  • ArgHelper tests to not depend on operators from dali_operators lib (#3631)
  • Add dtype argument to ExternalSource in examples (#3611)
  • Add CUDA 11.6 support (#3623)
  • Make data objects stream-aware (#3536)
  • Changing WDS Reader source_info property (#3614)
  • Relax test tolerance in DisplacementTest/Sphere (#3621)
  • Video tests utils and refactor (#3620)
  • Debug mode direct ExternalSource (#3605)
  • Remove Buffer inheritence from TensorList (#3576)
  • Relax test tolerance in DisplacementTest/Water (#3616)
  • Improve Slice's adaptive tiling (#3604)
  • Explicitly coalesce stores in Slice for smaller output types (#3600)
  • Add an upper bound for the video decoder workaround (#3609)
  • Deterministic seeds in debug mode (#3589)
  • Move from zlib to zlib-ng optimized fork (#3570)
  • TensorList shape (#3591)

Bug Fixes

  • Fix frames decoder destruction (#3662)
  • Removes check of CUDA runtime and linked libs from the backend (#3664)
  • Remove CUDA call from CUDAStreamPool's constructor (#3663)
  • Fix librosa bugs after 0.9 release (#3665)
  • Fix VideoReader CPU only variant (#3660)
  • Add a separate initialization method to OpticalFlowAdapter (#3657)
  • Fix get-pip.py for python 3.6 (#3652)
  • Fix sphinx warnings in the docs (#3651)
  • Fix synchronization bug in operator benchmark (#3638)
  • Replace calls to exp2 with std::exp2f (#3646)
  • Fix null_stream constant evaluation fallback (#3630)
  • Fix CVE-2021-4156 in libsnd (#3624)
  • Fix TensorList constructor from list of tensors. (#3626)
  • Fix CVE-2022-22844 in libtiff (#3612)
  • Fix dtype in external_source with multiple outputs. (#3608)

Breaking API changes

There are no breaking changes in this DALI release.

Deprecated features

There are no deprecated features in this DALI release.

Known issues:

  • 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 lesser frequency, then the returned frames may be out of sync.
  • The DALI TensorFlow plugin might not be compatible with TensorFlow versions 1.15.0 and later.
    To use DALI with the TensorFlow version that does not have a prebuilt plugin binary shipped with DALI, make sure that the compiler that is used to build TensorFlow exists on the system during the plugin installation. (Depending on the particular version, use GCC 4.8.4, GCC 4.8.5, or GCC 5.4.)
  • Due to some known issues with meltdown/spectra mitigations and DALI, DALI shows best performance when run in Docker with escalated privileges, for example:
    • privileged=yes in Extra Settings for AWS data points
    • --privileged or --security-opt seccomp=unconfined for bare Docker
  • The experimental.readers.video operator causes a crash during the process teardown with driver versions 460 to 470.21

Binary builds

Install via pip for CUDA 10.2:
pip install --extra-index-url https://developer.download.nvidia.com/compute/redist/ nvidia-dali-cuda102==1.11.0
pip install --extra-index-url https://developer.download.nvidia.com/compute/redist/ nvidia-dali-tf-plugin-cuda102==1.11.0

or for CUDA 11:

CUDA 11.0 build uses CUDA toolkit enhanced compatibility. It is built with the latest CUDA 11.x toolkit
while it can run on the latest, stable CUDA 11.0 capable drivers (450.80 or later). 
Using the latest driver may enable additional functionality. 
More details can be found in enhanced CUDA compatibility guide.

pip install --extra-index-url https://developer.download.nvidia.com/compute/redist/ nvidia-dali-cuda110==1.11.0
pip install --extra-index-url https://developer.download.nvidia.com/compute/redist/ nvidia-dali-tf-plugin-cuda110==1.11.0

Or use direct download links (CUDA 10.2):

Or use direct download links (CUDA 11.0):

FFmpeg source code:

  • This software uses code of FFmpeg licensed under the LGPLv2.1 and its source can be downloaded here

Libsndfile source code:

Don't miss a new DALI release

NewReleases is sending notifications on new releases.