Today at Computer Vision and Pattern Recognition (CVPR) conference, we’re making available new libraries for data augmentation and image decoding.
- NVIDIA DALI: A GPU-accelerated data augmentation and image loading library for optimizing data pipelines of deep learning frameworks
- NVIDIA nvJPEG: A high-performance GPU-accelerated library for JPEG decoding
Computer vision applications powered by deep learning include complex, multi-stage preprocessing data pipelines that includes compute-intensive steps such as loading and extracting data from disk, decoding, crop and resize, color and spatial transforms and format conversions.
By accelerating data augmentations using GPUs, NVIDIA DALI addresses performance bottlenecks in today’s computer vision deep learning applications that include complex, multi-stage data augmentation steps. With DALI, deep learning researchers can scale training performance on image classification models such as ResNet-50 with MXNet, TensorFlow , and PyTorch across Amazon Web Services P3 8 GPU instances or DGX-1 systems with Volta GPUs. Framework users will have lesser code duplication due to consistent high-performance data loading and augmentation across frameworks.
DALI relies on the new NVIDIA nvJPEG library for high-performance GPU-accelerated decoding. nvJPEG supports decoding of single and batched images, color space conversion, multiple phase decoding, and hybrid decoding using both CPU and GPU. Applications that rely on nvJPEG for decoding deliver higher throughput and lower latency JPEG decode compared CPU-only decoding.
DALI benefits include:
- Easy framework integration with direct plugins for MxNet, TensorFlow and PyTorch
- Portable training workflows with multiple supported data formats such as JPEG, raw format, LMDB, RecordIO and TFRecord
- Custom data pipelines with configurable graphs and custom operators
- High-performance single and batched JPEG decoding using nvJPEG
nvJPEG benefits include:
- Hybrid decoding using both the CPU and the GPU
- Single image and batched image decoding
- Color space conversion to RGB, BGR, RGBI, BGRI, and YUV
- Single and multi phase decoding