DALI Release 0.15.0 Beta

The DALI 0.15.0 is a beta release. Hence, for all the features, the functionality and performance will likely be limited.

Using DALI 0.15.0 Beta

To upgrade to DALI 0.15.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 operators implementation, and the C++ API that enables using DALI as a library from native code, are 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.

  • New operators and extended functionality of the following:
    • CPU DLTensor operator (#1233)
    • Added Lookup table operator (#1251)
    • BrightnessContrast operator (#1188)
    • Added CropMirrorNormalize 3D support (#1326)
    • Added Reshape operator (#1327)
  • New kernels:
    • Linear transformation GPU kernel (#1262)
    • Linear Transformation kernel for CPU (#1300)
  • Video reader improvements:
    • Improved heuristic for variable frame rate detection (#1242)
    • Added support for decoding multiple resolution videos in the same pipeline (#1144)
  • Tensor layout (#1237) and Layout refactor (#1250) - new, domain agnostic, flexible description of a tensor layout that is compatible with string representation.
  • Multi channel image decoding - supporting more than 3 channels:
    • ImageDecoder libtiff implementation (#1264)
    • Handle nchannels>3 in ImageDecoder (#1285)
    • Parse number of channels in PNGImage::PeekShape (#1288)
    • TiffImage::PeekShapeImpl parse and return number of channels (#1304)
    • Add parsing of number of channels in JpegImage::PeekShapeImpl (#1306)
  • DALI TensorFlow plugin installation improvements.

Fixed Issues

This DALI release includes the following fixes.

  • Fixed Transpose operator when data shape with dimension of size 1 (#1244)
  • Fixed problems with seeking when stream start_time is != 0. (#1287)
  • Suppressed warning when FileReader encounters dot and dot-dot entries (#1318)
  • Fixed last_batch_padded docs (#1314)
  • Fixed DALI TensorFlow plugin CXX11 ABI issue (#1361)

Breaking Changes

  • Changed Outputs and SharedOuputs return type to tuple (#1243)

Known Issues

  • The new video reader operator requires NVIDIA VIDEO CODEC SDK support in the platform. Prior to 19.01, the NVIDIA GPU Cloud (NGC) optimized containers lack this functionality in the default configuration. To enable the functionality, run the container with the video capability enabled, as shown below:
    -e "NVIDIA_DRIVER_CAPABILITIES=compute,utility,video"
  • 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.
  • DALI TensorFlow plugin may not be compatible with TensorFlow versions 1.15.0 and/or later. If the user wants to use DALI with 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.