DALI Release 0.19.0 Beta

The DALI 0.19.0 is a beta release, therefore, all features, functionality, and performance will likely be limited.

Using DALI 0.19.0 Beta

To upgrade to DALI 0.19.0 beta from an older version of DALI, follow the installation instructions in the DALI Quick Start Guide.

Refer to the DALI Developer Guide for usage details.

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.

  • Reduced the size of the underlying allocation for non-pinned host buffers when the new size is less than 90% of current allocation size. Added several options for memory usage configuration (#1712, #1719) - up to 50% reduction in some cases.

  • New Operators:
    • Erase CPU (#1609)
    • Transpose CPU (#1677)
    • Audio non silence CPU (#1701)
    • Constant CPU & GPU (#1699)
    • Normalize (sample/batch wide) (#1670)
  • Improved Operators:
  • Python operators for GPU with examples (#1655, #1681, #1685, #1715)

  • Mitigate the OS file-mhax limit in the VideoReader (#1659)

  • Support for array subscript operator [] for TensorList in Python API (#1682)

Fixed Issues

This DALI release includes the following fixes.

  • Updated examples with COCO data set and fix reader behavior for padding (#1557)

  • Fixed formatting of the example in the FW iterators docs (#1649)

  • Fixed torch stream initialization in TorchPythonFunction (#1681)
  • Fixed multi-channel fill value check in Erase operator (#1675)

  • Added synchronization to read/write operations in image decoder cache (#1702)

  • Fixed Buffer linkage and Reshape bug (#1714)

  • Fixed Pad operator bug (#1713)

Deprecated Features

  • CUDA 9 support will end in several releases (#1684)

  • Access to Tensors of TensorListCPU and TensorListGPU with at was replaced by array subscript operator. (#1682)

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 may not be compatible with TensorFlow versions 1.15.0 and/or later. If the user wants to use DALI with the TensorFlow version which doesn’t have prebuilt plugin binary shipped with DALI it requires the gcc compiler that matches the one used to build TensorFlow (gcc 4.8.4 or gcc, 4.8.5 or 5.4, depending on the particular version) is present on the system.

  • Due to some known issues with meltdown/spectra mitigations and DALI, DALI shows best performance when running 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