NVIDIA DALI
1.30.0 -12a2d1d
Version select:
  • Home

Getting Started

  • Installation
    • Prerequisites
    • DALI in NGC Containers
    • pip - Official Releases
      • nvidia-dali
      • nvidia-dali-tf-plugin
    • pip - Nightly and Weekly Releases
      • Nightly Builds
      • Weekly Builds
    • pip - Legacy Releases
    • Open Cognitive Environment (Open-CE)
  • Platform Support
  • Getting Started Tutorial
    • Overview
    • Pipeline
      • Defining the Pipeline
      • Building the Pipeline
      • Running the Pipeline
    • Adding Augmentations
      • Random Shuffle
      • Augmentations
      • Tensors as Arguments and Random Number Generation
    • Adding GPU Acceleration
      • Copying Tensors to GPU
        • Important Notice
      • Hybrid Decoding
  • Reporting vulnerabilities
    • Reporting Potential Security Vulnerability in an NVIDIA Product

Python API Documentation

  • Pipeline
    • Data Processing Graphs
      • Processing Graph Structure
    • Current Pipeline
    • Pipeline Decorator
      • pipeline_def()
    • Conditional Execution
    • Pipeline class
      • Pipeline
        • Pipeline.__enter__()
        • Pipeline.__exit__()
        • Pipeline.add_sink()
        • Pipeline.batch_size
        • Pipeline.build()
        • Pipeline.cpu_queue_size
        • Pipeline.current()
        • Pipeline.default_cuda_stream_priority
        • Pipeline.define_graph()
        • Pipeline.deserialize()
        • Pipeline.deserialize_and_build()
        • Pipeline.device_id
        • Pipeline.empty()
        • Pipeline.enable_api_check()
        • Pipeline.enable_memory_stats
        • Pipeline.epoch_size()
        • Pipeline.exec_async
        • Pipeline.exec_pipelined
        • Pipeline.exec_separated
        • Pipeline.executor_statistics()
        • Pipeline.external_source_shm_statistics()
        • Pipeline.feed_input()
        • Pipeline.gpu_queue_size
        • Pipeline.iter_setup()
        • Pipeline.max_batch_size
        • Pipeline.max_streams
        • Pipeline.num_threads
        • Pipeline.output_dtype()
        • Pipeline.output_ndim()
        • Pipeline.outputs()
        • Pipeline.pop_current()
        • Pipeline.prefetch_queue_depth
        • Pipeline.push_current()
        • Pipeline.py_num_workers
        • Pipeline.py_start_method
        • Pipeline.reader_meta()
        • Pipeline.release_outputs()
        • Pipeline.reset()
        • Pipeline.run()
        • Pipeline.save_graph_to_dot_file()
        • Pipeline.schedule_run()
        • Pipeline.seed
        • Pipeline.serialize()
        • Pipeline.set_affinity
        • Pipeline.set_outputs()
        • Pipeline.share_outputs()
        • Pipeline.start_py_workers()
    • DataNode
      • DataNode
    • Experimental Pipeline Features
      • pipeline_def()
      • Pipeline Debug Mode (experimental)
        • Notice
  • Types
    • TensorList
      • TensorListCPU
        • TensorListCPU
      • TensorListGPU
        • TensorListGPU
    • Tensor
      • TensorCPU
        • TensorCPU
      • TensorGPU
        • TensorGPU
    • Data Layouts
      • Tensor Layout String format
      • Interpreting Tensor Layout Strings
    • Constant wrapper
      • Constant
        • Constant()
        • ScalarConstant
    • Enums
      • DALIDataType
        • DALIDataType
      • DALIIterpType
        • to_numpy_type()
        • DALIInterpType
      • DALIImageType
        • DALIImageType
      • SampleInfo
        • SampleInfo
      • BatchInfo
        • BatchInfo
      • TensorLayout
        • TensorLayout
      • PipelineAPIType
        • PipelineAPIType
  • Mathematical Expressions
    • Type Promotion Rules
    • Supported Arithmetic Operations
    • Broadcasting
      • Shape extension
      • Limitations
    • Mathematical Functions
      • abs()
      • fabs()
      • floor()
      • ceil()
      • pow()
      • fpow()
      • min()
      • max()
      • clamp()
      • Exponents and logarithms
        • sqrt()
        • rsqrt()
        • cbrt()
        • exp()
        • log()
        • log2()
        • log10()
      • Trigonometric Functions
        • sin()
        • cos()
        • tan()
        • asin()
        • acos()
        • atan()
        • atan2()
      • Hyperbolic Functions
        • sinh()
        • cosh()
        • tanh()
        • asinh()
        • acosh()
        • atanh()
  • Indexing and Slicing
    • Indexing
    • Indexing from the end
    • Indexing with run-time values
    • Slicing
    • Multidimensional selection
    • Strided slices
    • Adding dimensions
    • Layout specifiers
  • Operation Reference
    • nvidia.dali.fn
      • nvidia.dali.fn.audio_decoder
        • audio_decoder()
      • nvidia.dali.fn.audio_resample
        • audio_resample()
      • nvidia.dali.fn.batch_permutation
        • batch_permutation()
      • nvidia.dali.fn.bb_flip
        • bb_flip()
      • nvidia.dali.fn.bbox_paste
        • bbox_paste()
      • nvidia.dali.fn.box_encoder
        • box_encoder()
      • nvidia.dali.fn.brightness
        • brightness()
      • nvidia.dali.fn.brightness_contrast
        • brightness_contrast()
      • nvidia.dali.fn.caffe2_reader
        • caffe2_reader()
      • nvidia.dali.fn.caffe_reader
        • caffe_reader()
      • nvidia.dali.fn.cast
        • cast()
      • nvidia.dali.fn.cast_like
        • cast_like()
      • nvidia.dali.fn.cat
        • cat()
      • nvidia.dali.fn.coco_reader
        • coco_reader()
      • nvidia.dali.fn.coin_flip
        • coin_flip()
      • nvidia.dali.fn.color_space_conversion
        • color_space_conversion()
      • nvidia.dali.fn.color_twist
        • color_twist()
      • nvidia.dali.fn.constant
        • constant()
      • nvidia.dali.fn.contrast
        • contrast()
      • nvidia.dali.fn.coord_flip
        • coord_flip()
      • nvidia.dali.fn.coord_transform
        • coord_transform()
      • nvidia.dali.fn.copy
        • copy()
      • nvidia.dali.fn.crop
        • crop()
      • nvidia.dali.fn.crop_mirror_normalize
        • crop_mirror_normalize()
      • nvidia.dali.fn.dl_tensor_python_function
        • dl_tensor_python_function()
      • nvidia.dali.fn.dump_image
        • dump_image()
      • nvidia.dali.fn.element_extract
        • element_extract()
      • nvidia.dali.fn.erase
        • erase()
      • nvidia.dali.fn.expand_dims
        • expand_dims()
      • nvidia.dali.fn.external_source
        • external_source()
      • nvidia.dali.fn.fast_resize_crop_mirror
        • fast_resize_crop_mirror()
      • nvidia.dali.fn.file_reader
        • file_reader()
      • nvidia.dali.fn.flip
        • flip()
      • nvidia.dali.fn.gaussian_blur
        • gaussian_blur()
      • nvidia.dali.fn.get_property
        • get_property()
      • nvidia.dali.fn.grid_mask
        • grid_mask()
      • nvidia.dali.fn.hsv
        • hsv()
      • nvidia.dali.fn.hue
        • hue()
      • nvidia.dali.fn.image_decoder
        • image_decoder()
      • nvidia.dali.fn.image_decoder_crop
        • image_decoder_crop()
      • nvidia.dali.fn.image_decoder_random_crop
        • image_decoder_random_crop()
      • nvidia.dali.fn.image_decoder_slice
        • image_decoder_slice()
      • nvidia.dali.fn.jitter
        • jitter()
      • nvidia.dali.fn.jpeg_compression_distortion
        • jpeg_compression_distortion()
      • nvidia.dali.fn.laplacian
        • laplacian()
      • nvidia.dali.fn.lookup_table
        • lookup_table()
      • nvidia.dali.fn.mel_filter_bank
        • mel_filter_bank()
      • nvidia.dali.fn.mfcc
        • mfcc()
      • nvidia.dali.fn.multi_paste
        • multi_paste()
      • nvidia.dali.fn.mxnet_reader
        • mxnet_reader()
      • nvidia.dali.fn.nemo_asr_reader
        • nemo_asr_reader()
      • nvidia.dali.fn.nonsilent_region
        • nonsilent_region()
      • nvidia.dali.fn.normal_distribution
        • normal_distribution()
      • nvidia.dali.fn.normalize
        • normalize()
      • nvidia.dali.fn.numpy_reader
        • numpy_reader()
      • nvidia.dali.fn.one_hot
        • one_hot()
      • nvidia.dali.fn.optical_flow
        • optical_flow()
      • nvidia.dali.fn.pad
        • pad()
      • nvidia.dali.fn.paste
        • paste()
      • nvidia.dali.fn.peek_image_shape
        • peek_image_shape()
      • nvidia.dali.fn.per_frame
        • per_frame()
      • nvidia.dali.fn.permute_batch
        • permute_batch()
      • nvidia.dali.fn.power_spectrum
        • power_spectrum()
      • nvidia.dali.fn.preemphasis_filter
        • preemphasis_filter()
      • nvidia.dali.fn.python_function
        • python_function()
      • nvidia.dali.fn.random_bbox_crop
        • random_bbox_crop()
      • nvidia.dali.fn.random_resized_crop
        • random_resized_crop()
      • nvidia.dali.fn.reinterpret
        • reinterpret()
      • nvidia.dali.fn.reshape
        • reshape()
      • nvidia.dali.fn.resize
        • resize()
      • nvidia.dali.fn.resize_crop_mirror
        • resize_crop_mirror()
      • nvidia.dali.fn.roi_random_crop
        • roi_random_crop()
      • nvidia.dali.fn.rotate
        • rotate()
      • nvidia.dali.fn.saturation
        • saturation()
      • nvidia.dali.fn.sequence_reader
        • sequence_reader()
      • nvidia.dali.fn.sequence_rearrange
        • sequence_rearrange()
      • nvidia.dali.fn.shapes
        • shapes()
      • nvidia.dali.fn.slice
        • slice()
      • nvidia.dali.fn.spectrogram
        • spectrogram()
      • nvidia.dali.fn.sphere
        • sphere()
      • nvidia.dali.fn.squeeze
        • squeeze()
      • nvidia.dali.fn.ssd_random_crop
        • ssd_random_crop()
      • nvidia.dali.fn.stack
        • stack()
      • nvidia.dali.fn.tfrecord_reader
        • tfrecord_reader()
      • nvidia.dali.fn.to_decibels
        • to_decibels()
      • nvidia.dali.fn.transpose
        • transpose()
      • nvidia.dali.fn.uniform
        • uniform()
      • nvidia.dali.fn.video_reader
        • video_reader()
      • nvidia.dali.fn.video_reader_resize
        • video_reader_resize()
      • nvidia.dali.fn.warp_affine
        • warp_affine()
      • nvidia.dali.fn.water
        • water()
    • nvidia.dali.fn.decoders
      • nvidia.dali.fn.decoders.audio
        • audio()
      • nvidia.dali.fn.decoders.image
        • image()
      • nvidia.dali.fn.decoders.image_crop
        • image_crop()
      • nvidia.dali.fn.decoders.image_random_crop
        • image_random_crop()
      • nvidia.dali.fn.decoders.image_slice
        • image_slice()
    • nvidia.dali.fn.experimental
      • nvidia.dali.fn.experimental.audio_resample
        • audio_resample()
      • nvidia.dali.fn.experimental.debayer
        • debayer()
      • nvidia.dali.fn.experimental.equalize
        • equalize()
      • nvidia.dali.fn.experimental.filter
        • filter()
      • nvidia.dali.fn.experimental.inflate
        • inflate()
      • nvidia.dali.fn.experimental.median_blur
        • median_blur()
      • nvidia.dali.fn.experimental.peek_image_shape
        • peek_image_shape()
      • nvidia.dali.fn.experimental.remap
        • remap()
      • nvidia.dali.fn.experimental.tensor_resize
        • tensor_resize()
    • nvidia.dali.fn.experimental.decoders
      • nvidia.dali.fn.experimental.decoders.image
        • image()
      • nvidia.dali.fn.experimental.decoders.image_crop
        • image_crop()
      • nvidia.dali.fn.experimental.decoders.image_random_crop
        • image_random_crop()
      • nvidia.dali.fn.experimental.decoders.image_slice
        • image_slice()
      • nvidia.dali.fn.experimental.decoders.video
        • video()
    • nvidia.dali.fn.experimental.inputs
      • nvidia.dali.fn.experimental.inputs.video
        • video()
    • nvidia.dali.fn.experimental.readers
      • nvidia.dali.fn.experimental.readers.fits
        • fits()
      • nvidia.dali.fn.experimental.readers.video
        • video()
    • nvidia.dali.fn.noise
      • nvidia.dali.fn.noise.gaussian
        • gaussian()
      • nvidia.dali.fn.noise.salt_and_pepper
        • salt_and_pepper()
      • nvidia.dali.fn.noise.shot
        • shot()
    • nvidia.dali.fn.random
      • nvidia.dali.fn.random.coin_flip
        • coin_flip()
      • nvidia.dali.fn.random.normal
        • normal()
      • nvidia.dali.fn.random.uniform
        • uniform()
    • nvidia.dali.fn.readers
      • nvidia.dali.fn.readers.caffe
        • caffe()
      • nvidia.dali.fn.readers.caffe2
        • caffe2()
      • nvidia.dali.fn.readers.coco
        • coco()
      • nvidia.dali.fn.readers.file
        • file()
      • nvidia.dali.fn.readers.mxnet
        • mxnet()
      • nvidia.dali.fn.readers.nemo_asr
        • nemo_asr()
      • nvidia.dali.fn.readers.numpy
        • numpy()
      • nvidia.dali.fn.readers.sequence
        • sequence()
      • nvidia.dali.fn.readers.tfrecord
        • tfrecord()
      • nvidia.dali.fn.readers.video
        • video()
      • nvidia.dali.fn.readers.video_resize
        • video_resize()
      • nvidia.dali.fn.readers.webdataset
        • webdataset()
    • nvidia.dali.fn.reductions
      • nvidia.dali.fn.reductions.max
        • max()
      • nvidia.dali.fn.reductions.mean
        • mean()
      • nvidia.dali.fn.reductions.mean_square
        • mean_square()
      • nvidia.dali.fn.reductions.min
        • min()
      • nvidia.dali.fn.reductions.rms
        • rms()
      • nvidia.dali.fn.reductions.std_dev
        • std_dev()
      • nvidia.dali.fn.reductions.sum
        • sum()
      • nvidia.dali.fn.reductions.variance
        • variance()
    • nvidia.dali.fn.segmentation
      • nvidia.dali.fn.segmentation.random_mask_pixel
        • random_mask_pixel()
      • nvidia.dali.fn.segmentation.random_object_bbox
        • random_object_bbox()
      • nvidia.dali.fn.segmentation.select_masks
        • select_masks()
    • nvidia.dali.fn.transforms
      • nvidia.dali.fn.transforms.combine
        • combine()
      • nvidia.dali.fn.transforms.crop
        • crop()
      • nvidia.dali.fn.transforms.rotation
        • rotation()
      • nvidia.dali.fn.transforms.scale
        • scale()
      • nvidia.dali.fn.transforms.shear
        • shear()
      • nvidia.dali.fn.transforms.translation
        • translation()
    • nvidia.dali.plugin.numba.fn.experimental
      • nvidia.dali.plugin.numba.fn.experimental.numba_function
        • numba_function()
    • nvidia.dali.plugin.pytorch.fn
      • nvidia.dali.plugin.pytorch.fn.torch_python_function
        • torch_python_function()
  • Automatic Augmentations
    • AutoAugment
      • Invoking predefined AutoAugment policies
        • auto_augment()
        • auto_augment_image_net()
      • Building and invoking custom policies
        • Policy
        • apply_auto_augment()
      • Accessing predefined policies
        • get_image_net_policy()
        • get_reduced_cifar10_policy()
        • get_svhn_policy()
        • get_reduced_image_net_policy()
    • RandAugment
      • Invoking predefined RandAugment policies
        • rand_augment()
      • Invoking custom RandAugment policies
        • apply_rand_augment()
      • Accessing predefined policies
        • get_rand_augment_suite()
        • get_rand_augment_non_monotonic_suite()
    • TrivialAugment
      • TrivialAugment API
        • trivial_augment_wide()
        • apply_trivial_augment()
        • get_trivial_augment_wide_suite()
    • Augmentations reference
      • Decorator
        • augmentation()
        • nvidia.dali.auto_aug.core._augmentation.Augmentation
      • Augmentations
        • shear_x()
        • shear_y()
        • translate_x()
        • translate_x_no_shape()
        • translate_y()
        • translate_y_no_shape()
        • rotate()
        • brightness()
        • contrast()
        • color()
        • sharpness()
        • posterize()
        • solarize()
        • solarize_add()
        • invert()
        • equalize()
        • auto_contrast()
        • identity()
    • Automatic Augmentation Library Structure
  • Operator Objects (Legacy)
    • Mapping to Functional API
    • Modules
      • nvidia.dali.ops
        • AudioDecoder
        • AudioResample
        • BBoxPaste
        • BatchPermutation
        • BbFlip
        • BoxEncoder
        • Brightness
        • BrightnessContrast
        • COCOReader
        • Caffe2Reader
        • CaffeReader
        • Cast
        • CastLike
        • Cat
        • CoinFlip
        • ColorSpaceConversion
        • ColorTwist
        • Constant
        • Contrast
        • CoordFlip
        • CoordTransform
        • Copy
        • Crop
        • CropMirrorNormalize
        • DumpImage
        • ElementExtract
        • Erase
        • ExpandDims
        • ExternalSource
        • FastResizeCropMirror
        • FileReader
        • Flip
        • GaussianBlur
        • GetProperty
        • GridMask
        • Hsv
        • Hue
        • ImageDecoder
        • ImageDecoderCrop
        • ImageDecoderRandomCrop
        • ImageDecoderSlice
        • Jitter
        • JpegCompressionDistortion
        • Laplacian
        • LookupTable
        • MFCC
        • MXNetReader
        • MelFilterBank
        • MultiPaste
        • NemoAsrReader
        • NonsilentRegion
        • NormalDistribution
        • Normalize
        • NumpyReader
        • OneHot
        • OpticalFlow
        • Pad
        • Paste
        • PeekImageShape
        • PerFrame
        • PermuteBatch
        • PowerSpectrum
        • PreemphasisFilter
        • ROIRandomCrop
        • RandomBBoxCrop
        • RandomResizedCrop
        • Reinterpret
        • Reshape
        • Resize
        • ResizeCropMirror
        • Rotate
        • SSDRandomCrop
        • Saturation
        • SequenceReader
        • SequenceRearrange
        • Shapes
        • Slice
        • Spectrogram
        • Sphere
        • Squeeze
        • Stack
        • TFRecordReader
        • ToDecibels
        • Transpose
        • Uniform
        • VideoReader
        • VideoReaderResize
        • WarpAffine
        • Water
      • nvidia.dali.ops._conditional
      • nvidia.dali.ops._docs
      • nvidia.dali.ops._names
      • nvidia.dali.ops._operator_utils
      • nvidia.dali.ops._operators
      • nvidia.dali.ops._operators.compose
        • Compose()
      • nvidia.dali.ops._operators.math
      • nvidia.dali.ops._operators.python_function
        • DLTensorPythonFunction
        • PythonFunction
        • PythonFunctionBase
      • nvidia.dali.ops._operators.tfrecord
        • tfrecord_enabled()
      • nvidia.dali.ops._registry
        • cpu_ops()
        • gpu_ops()
        • mixed_ops()
        • register_cpu_op()
        • register_gpu_op()
      • nvidia.dali.ops.decoders
        • Audio
        • Image
        • ImageCrop
        • ImageRandomCrop
        • ImageSlice
      • nvidia.dali.ops.experimental
        • AudioResample
        • Debayer
        • Equalize
        • Filter
        • Inflate
        • MedianBlur
        • PeekImageShape
        • Remap
        • TensorResize
      • nvidia.dali.ops.experimental.decoders
        • Image
        • ImageCrop
        • ImageRandomCrop
        • ImageSlice
        • Video
      • nvidia.dali.ops.experimental.inputs
        • Video
      • nvidia.dali.ops.experimental.readers
        • Fits
        • Video
      • nvidia.dali.ops.noise
        • Gaussian
        • SaltAndPepper
        • Shot
      • nvidia.dali.ops.random
        • CoinFlip
        • Normal
        • Uniform
      • nvidia.dali.ops.readers
        • COCO
        • Caffe
        • Caffe2
        • File
        • MXNet
        • NemoAsr
        • Numpy
        • Sequence
        • TFRecord
        • Video
        • VideoResize
        • Webdataset
      • nvidia.dali.ops.reductions
        • Max
        • Mean
        • MeanSquare
        • Min
        • RMS
        • StdDev
        • Sum
        • Variance
      • nvidia.dali.ops.segmentation
        • RandomMaskPixel
        • RandomObjectBBox
        • SelectMasks
      • nvidia.dali.ops.transforms
        • Combine
        • Crop
        • Rotation
        • Scale
        • Shear
        • Translation
      • nvidia.dali.plugin.numba.experimental
        • NumbaFunction
      • nvidia.dali.plugin.pytorch
        • TorchPythonFunction
  • DL Framework Plugins
    • MXNet
      • MXNet Plugin API reference
        • DALIClassificationIterator
        • DALIGenericIterator
        • DALIGluonIterator
        • feed_ndarray()
        • get_mx_array()
      • MXNet Framework
        • Gluon example with DALI
        • ExternalSource operator
        • Using MXNet DALI plugin: using various readers
    • PyTorch
      • PyTorch Plugin API reference
        • DALIClassificationIterator
        • DALIGenericIterator
        • DALIRaggedIterator
        • feed_ndarray()
      • Pytorch Framework
        • Using DALI in PyTorch
        • ExternalSource operator
        • Using PyTorch DALI plugin: using various readers
        • Using DALI in PyTorch Lightning
    • TensorFlow
      • TensorFlow Plugin API reference
        • DALIDataset
        • DALIIterator()
        • DALIIteratorWrapper()
        • DALIRawIterator()
        • dataset_compatible_tensorflow()
        • dataset_distributed_compatible_tensorflow()
        • dataset_inputs_compatible_tensorflow()
        • dataset_options()
        • serialize_pipeline()
        • Experimental
      • Tensorflow Framework
        • Using Tensorflow DALI plugin: DALI and tf.data
        • Using Tensorflow DALI plugin: DALI tf.data.Dataset with multiple GPUs
        • Inputs to DALI Dataset with External Source
        • Using Tensorflow DALI plugin with sparse tensors
        • Using Tensorflow DALI plugin: simple example
        • Using Tensorflow DALI plugin: using various readers
    • PaddlePaddle
      • PaddlePaddle Plugin API reference
      • PaddlePaddle Framework
        • Using DALI in PaddlePaddle
        • ExternalSource operator
        • Using Paddle DALI plugin: using various readers
    • JAX
      • JAX Plugin API reference
        • DALIGenericIterator
      • JAX Framework
        • Training neural network with DALI and JAX
        • Training with multiple GPUs
        • Automatic parallelization
        • Training neural network with DALI and Flax
        • Multiple GPUs with DALI and FLAX

Examples and Tutorials

  • Data Loading
    • External Source Operator - basic usage
      • Define the Data Source
      • Defining the Pipeline
      • Using the Pipeline
        • Interacting with the GPU Input
    • Parallel External Source
      • Accepted source
      • Principle of Operation
      • Example Pipeline and source
        • Adjusting to Callable Object
        • Pipeline Definition
        • Testing the Pipelines
      • Going Parallel
        • Starting Python Workers
      • Running the Pipeline with Spawned Python Workers
        • Serialization of Functions
        • Customizing Serialization
        • Serialization and heavy setup
      • Shuffling and sharding
        • Shuffling dataset between epochs
        • Sharding
      • Parallel external source in containers
    • Parallel External Source - Fork
      • Steps to Start with Fork
      • Example Pipeline and source
        • Callable Object
        • Pipeline Definition
        • Displaying the Results
      • Starting Python Workers
        • Running the Pipelines
    • Data Loading: LMDB Database
      • Overview
      • Caffe LMDB Format
      • Caffe 2 LMDB Format
    • Data loading: MXNet recordIO
      • Overview
      • Creating an Index
      • Defining and Running the Pipeline
    • Data Loading: TensorFlow TFRecord
      • Overview
      • Creating index
      • Defining and Running the Pipeline
    • Data Loading: Webdataset
      • Overview
      • Using readers.webdataset operator
      • Creating an index
      • Defining and running the pipeline
    • COCO Reader
    • Numpy Reader
      • Overview
      • Test data
      • Usage
        • Glob filter
        • Text file with a list of file paths
        • List of file paths
        • Higher dimensionality
      • Region-of-interest (ROI) API
        • ROI start and end, in absolute coordinates
        • ROI start and end, in relative coordinates
        • Specifying a subset of the array’s axes
        • Out of bounds access
      • GPUDirect Storage Support
  • Operations
    • General Purpose
      • DALI Expressions and Arithmetic Operations
        • DALI Expressions and Arithmetic Operators
        • DALI Binary Arithmetic Operators - Type Promotions
        • Custom Augmentations with Arithmetic Operations
        • Conditional-Like Execution and Masking
      • Reduction Operators
      • Tensor Joining
        • Concatenation
        • Stacking
      • Reinterpreting Tensors
        • Fixed Output Shape
        • Reshape with Wildcards
        • Removing and Adding Unit Dimensions
        • Rearranging Dimensions
        • Adding and Removing Dimensions
        • Relative Shape
        • Reinterpreting Data Type
      • Normalize Operator
        • Introduction
        • Using the Normalize Operator
        • Adjusting Output Dynamic Range
        • Externally Provided Parameters
        • Batch Normalization
      • Geometric Transforms
        • Affine Transform
        • Transform Catalogue
        • Case Study: Transforming Keypoints
        • Adding Transforms to the Pipeline
        • Combining Transforms
        • Keypoint Cropping
        • Transform Gallery
      • Erase Operator
    • Image Processing
      • Augmentation Gallery
      • BrightnessContrast Example
        • Brighness and Contrast Adjustment
        • Step-by-Step Guide
      • Color Space Conversion
        • Defining the Pipeline
        • Building and Running the Pipeline
        • Visualizing the Results
      • Image Decoder examples
        • Common code
        • Image Decoder (CPU)
        • Image Decoder (CPU) with Random Cropping Window Size and Anchor
        • Image Decoder with Fixed Cropping Window Size and External Anchor
        • Image Decoder (CPU) with External Window Size and Anchor
        • Image Decoder (Hybrid)
        • Image Decoder (Hybrid) with Random Cropping Window Size and Anchor
        • Image Decoder (Hybrid) with Fixed Cropping Window Size and External Anchor
        • Image Decoder (Hybrid) with External Window Size and Anchor
      • HSV Example
        • Introduction
        • Step-by-Step Guide
      • Using HSV to implement RandomGrayscale operation
      • Interpolation methods
        • Downscaling
        • Upscaling
      • Resize operator
        • Output Size Parameters
        • Scaling Modes
        • Region of Interest (RoI) Processing
        • Fused Flip
        • Input and Output Types
        • Internal Conversion to float
        • Subpixel Scale
      • WarpAffine
        • Introduction
        • Usage Example
        • Example Output
      • 3D Transforms
        • Warp Operators
        • Usage Example
        • Example Output
    • Audio Processing
      • Audio Decoder in DALI
        • Step-by-Step Guide
        • Verification
      • Audio spectrogram
        • Background
        • Reference implementation
        • Calculating the Spectrogram using DALI
        • Mel Spectrogram
        • Mel-Frequency Cepstral Coefficients (MFCCs)
    • Video Processing
      • Simple Video Pipeline Reading From Multiple Files
        • Goal
        • Visualizing the Results
      • Video Pipeline Reading Labelled Videos from a Directory
        • Setting Up
        • Running the Pipeline
        • Visualizing the Results
      • Video Pipeline Demonstrating Applying Labels Based on Timestamps or Frame Numbers
        • Defining the Pipeline
        • Visualizing the Results
      • Reading Video Frames Stored as Images
        • Preparing the Data
        • Frame Sequence Reader
      • Processing video with image processing operators
      • Optical Flow
        • Using Dali
  • Use Cases
    • Video Super-Resolution
      • Dataloaders
      • Data Loader Performance
      • Requirements
      • FlowNet2-SD Implementation and Pre-trained Model
      • Data
      • Training
      • Results on Myanmar Validation Set
      • Reference
    • ImageNet Training in PyTorch
      • Requirements
      • Training
      • Usage
    • Single Shot MultiBox Detector Training in PyTorch
      • Requirements
      • Usage
    • EfficientNet for PyTorch with DALI and AutoAugment
      • Differences to the Deep Learning Examples configuration
      • Data backends
      • Setup
      • Running the model
        • Training
        • Training with standard configuration
        • Benchmarking
        • Inference
    • ResNet-N with TensorFlow and DALI
      • Training in Keras Fit/Compile mode
      • Predicting in Keras Fit/Compile mode
      • Training in CTL (Custom Training Loop) mode
      • Predicting in CTL (Custom Training Loop) mode
      • Other useful options
        • Requirements
    • You Only Look Once v4 with TensorFlow and DALI
      • Requirements
      • Usage
        • Training
        • Inference
        • Evaluation
    • EfficientDet with TensorFlow and DALI
      • Preparing data files from COCO dataset
      • Training in Keras Fit/Compile mode
      • Evaluation in Keras Fit/Compile mode
      • Usage
        • Requirements
    • PaddlePaddle Use-Cases
      • ResNet Training in PaddlePaddle
        • Training
        • Usage
      • Single Shot MultiBox Detector Training in PaddlePaddle
        • Requirements
        • Usage
      • Temporal Shift Module Inference in PaddlePaddle
        • Requirements
        • Usage
    • MXNet with DALI - ResNet 50 example
      • Overview
      • ResNet 50 Pipeline
        • The Training Pipeline
        • Using the MXNet Plugin
      • Training with MXNet
    • COCO Reader with Augmentations
    • WebDataset integration using External Source
      • Introduction
        • Data Representation
        • Sharding
      • Sample Implementation
        • Keyword Arguments:
      • Usage presentation
      • Checking consistency
  • Other
    • Multiple GPU Support
      • Overview
      • Run Pipeline on Selected GPU
      • Sharding
    • Conditional execution in DALI
      • Simple example
      • Semantics
        • Requirements
      • Technical details
        • Equivalent pipeline
        • Generators
        • Functions
        • Python statements and tracing
    • Custom Operations
      • Create a Custom Operator in C++
        • Prerequisites
        • Operator Definition
        • CPU Operator Implementation
        • GPU operator implementation
        • Building the Plugin
        • Importing the Plugin
      • Python Operators
        • Defining an Operation
        • Defining a Pipeline
        • Running the Pipeline and Visualizing the Results
        • Variety of Python Operators
        • Limitations of Python Operators
      • Processing GPU Data with Python Operators
        • CuPy Operations
        • Defining a Pipeline
        • Running the Pipeline and Visualizing the Results
        • Advanced: Device Synchronization in the DLTensorPythonFunction
      • Numba Function - Running a Compiled C Callback Function
        • Define the shape function swapping the width and height
        • Define the processing function that fills the output sample based on the input sample
        • Define the Pipeline
    • Serialization
      • Overview
      • Serialization
    • Operator Objects (Legacy)
      • Overview
        • Defining the Pipeline
        • Building the Pipeline
        • Running the Pipeline
      • Adding Augmentations
        • Random Shuffle
        • Augmentations
        • Tensors as Arguments and Random Number Generation
      • Adding GPU Acceleration
        • Copying Tensors to GPU
        • Hybrid Decoding
    • Pipeline Debug Mode (experimental)
      • Overview
      • Notice
      • Defining debug pipeline
      • Additional features
        • Data access
        • Data modification
      • Warning

Advanced

  • Performance Tuning
    • Thread Affinity
    • Memory Consumption
    • Allocator Configuration
    • Memory Pool Preallocation
      • PreallocateDeviceMemory()
      • PreallocatePinnedMemory()
    • Freeing Memory Pools
      • ReleaseUnusedMemory()
    • Operator Buffer Presizing
    • Prefetching Queue Depth
    • Readers fine-tuning
  • Sharding
    • Framework iterator configuration
      • Enums
        • LastBatchPolicy
    • Shard calculation
  • Pipeline Run Methods
  • Experimental
    • C++ API
  • Compiling DALI from Source
    • Using Docker builder - recommended
      • Prerequisites
      • Building Python Wheel
    • Bare Metal build
      • Prerequisites
      • Build DALI
        • Install Python Bindings
      • Verify the Build (Optional)
        • Obtain Test Data
        • Set Test Data Path
        • Run Tests
      • Building DALI with Clang (Experimental)
      • Optional CMake Build Parameters
    • Cross-compiling for aarch64 Jetson Linux (Docker)
      • Build the aarch64 Jetson Linux Build Container
      • Compile

Frequently Asked Questions

  • Q&A
    • Q: How do I know if DALI can help me?
    • Q: What data formats does DALI support?
    • Q: How does DALI differ from TF, PyTorch, MXNet, or other FWs
    • Q: What to do if DALI doesn’t cover my use case?
    • Q: How to use DALI for inference?
    • Q: How big is the speedup of using DALI compared to loading using OpenCV? Especially for JPEG images.
    • Q: Can you use DALI with DeepStream?
    • Q: How to control the number of frames in a video reader in DALI?
    • Q: Can DALI volumetric data processing work with ultrasound scans?
    • Q: How to debug a DALI pipeline?
    • Q: Can I access the contents of intermediate data nodes in the pipeline?
    • Q: When will DALI support the XYZ operator?
    • Q: How should I know if I should use a CPU or GPU operator variant?
    • Q: How can I provide a custom data source/reading pattern to DALI?
    • Q: Does DALI have any profiling capabilities?
    • Q: Does DALI support multi GPU/node training?
    • Q: How to report an issue/RFE or get help with DALI usage?
    • Q: Can DALI accelerate the loading of the data, not just processing?
    • Q: How can I obtain DALI?
    • Q: Which OS does DALI support?
    • Q: Where can I find the list of operations that DALI supports?
    • Q: Can I send a request to the Triton server with a batch of samples of different shapes (like files with different lengths)?
    • Q: I have heard about the new data processing framework XYZ, how is DALI better than it?
    • Q: Is DALI compatible with other GPUs?
    • Q: When to use DALI and when RAPIDS?
    • Q: Is Triton + DALI still significantly better than preprocessing on CPU, when minimum latency i.e. batch_size=1 is desired?
    • Q: Are there any examples of using DALI for volumetric data?
    • Q: Where can I find more details on using the image decoder and doing image processing?
    • Q: Does DALI utilize any special NVIDIA GPU functionalities?
    • Q: Can DALI operate without GPU?
    • Q: Can I use DALI in the Triton server through a Python model?
    • Q: Can the Triton model config be auto-generated for a DALI pipeline?
    • Q: How easy is it to integrate DALI with existing pipelines such as PyTorch Lightning?
    • Q: Does DALI typically result in slower throughput using a single GPU versus using multiple PyTorch worker threads in a data loader?
    • Q: Will labels, for example, bounding boxes, be adapted automatically when transforming the image data? For example when rotating/cropping, etc. If so how?
    • Q: How easy is it, to implement custom processing steps? In the past, I had issues with calculating 3D Gaussian distributions on the CPU. Would this be possible using a custom DALI function?
    • Q: Is DALI available in Jetson platforms such as the Xavier AGX or Orin?
    • Q: Is it possible to get data directly from real-time camera streams to the DALI pipeline?
    • Q: What is the advantage of using DALI for the distributed data-parallel batch fetching, instead of the framework-native functions?

Reference

  • Release Notes
  • GitHub
  • Roadmap
NVIDIA DALI
  • DL Framework Plugins
  • PaddlePaddle
  • View page source

PaddlePaddle¶

  • PaddlePaddle Plugin API reference
  • PaddlePaddle Framework
    • Using DALI in PaddlePaddle
    • ExternalSource operator
    • Using Paddle DALI plugin: using various readers
Previous Next

© Copyright 2018-2023, NVIDIA Corporation.

Built with Sphinx using a theme provided by Read the Docs.