# DirectML structures

The following structures are declared in `DirectML.h`

.

## In this section

Topic and description |
---|

DML_ACTIVATION_CELU_OPERATOR_DESC. Performs the continuously differentiable exponential linear unit (CELU) activation function on every element in InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_ELU_OPERATOR_DESC. Describes a DirectML operator that performs an exponential linear unit (ELU) activation function on every element in the input. |

DML_ACTIVATION_GELU_OPERATOR_DESC. Performs the gaussian error linear unit (GELU) activation function on every element in InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_HARD_SWISH_OPERATOR_DESC. Performs a hard swish activation function on every element in InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_HARDMAX_OPERATOR_DESC. Describes a DirectML activation operator that performs a hardmax function on the input. |

DML_ACTIVATION_HARDMAX1_OPERATOR_DESC. Performs a hardmax function on each element of InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_HARD_SIGMOID_OPERATOR_DESC. Describes a DirectML activation operator that performs a hard sigmoid function on every element in the input. |

DML_ACTIVATION_IDENTITY_OPERATOR_DESC. Describes a DirectML activation operator that performs the identity function. |

DML_ACTIVATION_LEAKY_RELU_OPERATOR_DESC. Describes a DirectML operator that performs a leaky rectified linear unit (ReLU) activation function on every element in the input. |

DML_ACTIVATION_LINEAR_OPERATOR_DESC. Describes a DirectML operator that performs a linear activation function on every element in the input. |

DML_ACTIVATION_LOG_SOFTMAX_OPERATOR_DESC. Describes a DirectML operator that performs a log-of-softmax activation function on the input. |

DML_ACTIVATION_LOG_SOFTMAX1_OPERATOR_DESC. Performs a natural log-of-softmax activation function on each element of InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_PARAMETERIZED_RELU_OPERATOR_DESC. Describes a DirectML operator that performs a parameterized rectified linear unit (ReLU) activation function on every element in the input. |

DML_ACTIVATION_PARAMETRIC_SOFTPLUS_OPERATOR_DESC. Describes a DirectML operator that performs a parametric softplus activation function on every element in the input. |

DML_ACTIVATION_RELU_GRAD_OPERATOR_DESC. Computes backpropagation gradients for a rectified linear unit (ReLU). |

DML_ACTIVATION_RELU_OPERATOR_DESC. Describes a DirectML operator that performs a rectified linear unit (ReLU) activation function on every element in the input. |

DML_ACTIVATION_SCALED_ELU_OPERATOR_DESC. Describes a DirectML operator that performs a scaled exponential linear unit (ELU) activation function on every element in the input. |

DML_ACTIVATION_SCALED_TANH_OPERATOR_DESC. Describes a DirectML operator that performs a scaled hyperbolic tangent activation function on every element in the input. |

DML_ACTIVATION_SHRINK_OPERATOR_DESC. Describes a DirectML operator that performs an elementwise shrink activation function on the input. |

DML_ACTIVATION_SIGMOID_OPERATOR_DESC. Describes a DirectML operator that performs a sigmoid activation function on every element in the input. |

DML_ACTIVATION_SOFTMAX_OPERATOR_DESC. Describes a DirectML operator that performs a softmax activation function on the input. |

DML_ACTIVATION_SOFTMAX1_OPERATOR_DESC. Performs a softmax activation function on InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_SOFTPLUS_OPERATOR_DESC. Describes a DirectML operator that performs a softplus activation function on every element in the input. |

DML_ACTIVATION_SOFTSIGN_OPERATOR_DESC. Describes a DirectML operator that performs a softsign activation function on every element in the input. |

DML_ACTIVATION_SWISH_OPERATOR_DESC. Performs a swish activation function on every element in InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ACTIVATION_TANH_OPERATOR_DESC. Describes a DirectML operator that performs a hyperbolic tangent activation function on every element in the input. |

DML_ACTIVATION_THRESHOLDED_RELU_OPERATOR_DESC. Describes a DirectML operator that performs a thresholded rectified linear unit (ReLU) activation function on every element in the input. |

DML_ADAM_OPTIMIZER_OPERATOR_DESC. Computes updated weights (parameters) using the supplied gradients, based on the Adam (ADAptive Moment estimation) algorithm. This operator is an optimizer, and is typically used in the weight update step of a training loop to perform gradient descent. |

DML_AVERAGE_POOLING_OPERATOR_DESC. Describes a DirectML operator that performs an average pooling function on the input. |

DML_AVERAGE_POOLING1_OPERATOR_DESC. Averages values across the elements within the sliding window over the input tensor. |

DML_ARGMAX_OPERATOR_DESC. Outputs the indices of the maximum-valued elements within one or more dimensions of the input tensor. |

DML_ARGMIN_OPERATOR_DESC. Outputs the indices of the minimum-valued elements within one or more dimensions of the input tensor. |

DML_AVERAGE_POOLING_GRAD_OPERATOR_DESC. Computes backpropagation gradients for average pooling (see DML_AVERAGE_POOLING_OPERATOR_DESC). |

DML_BATCH_NORMALIZATION_GRAD_OPERATOR_DESC. Computes backpropagation gradients for batch normalization. |

DML_BATCH_NORMALIZATION_OPERATOR_DESC. Describes a DirectML operator that performs a batch normalization function on the input. |

DML_BATCH_NORMALIZATION_TRAINING_GRAD_OPERATOR_DESC. Computes backpropagation gradients for batch normalization training. |

DML_BATCH_NORMALIZATION_TRAINING_OPERATOR_DESC. Performs a batch normalization on the input. |

DML_BINDING_DESC. Contains the description of a binding so that you can add it to the binding table via a call to one of the IDMLBindingTable methods. |

DML_BINDING_PROPERTIES. Contains information about the binding requirements of a particular compiled operator, or operator initializer. |

DML_BINDING_TABLE_DESC. Specifies parameters to IDMLDevice::CreateBindingTable and IDMLBindingTable::Reset. |

DML_BUFFER_ARRAY_BINDING. Specifies a resource binding that is an array of individual buffer bindings. |

DML_BUFFER_BINDING. Specifies a resource binding described by a range of bytes in a Direct3D 12 buffer, represented by an offset and size into an ID3D12Resource. |

DML_BUFFER_TENSOR_DESC. Describes a tensor that will be stored in a Direct3D 12 buffer resource. |

DML_CAST_OPERATOR_DESC. Describes a DirectML data reorganization operator that performs the cast function f(x) = cast(x), casting each element in the input to the data type of the output tensor, and storing the result in the corresponding element in the output. |

DML_CONVOLUTION_INTEGER_OPERATOR_DESC. Performs a convolution of the FilterTensor with the InputTensor. This operator performs forward convolution on integer data. |

DML_CONVOLUTION_OPERATOR_DESC. Describes a DirectML matrix multiplication operator that performs a convolution function on the input. |

DML_CUMULATIVE_PRODUCT_OPERATOR_DESC. Multiplies the elements of a tensor along an axis, writing the running tally of the product into the output tensor. |

DML_CUMULATIVE_SUMMATION_OPERATOR_DESC. Sums the elements of a tensor along an axis, writing the running tally of the summation into the output tensor. |

DML_DEPTH_TO_SPACE_OPERATOR_DESC. Describes a DirectML data reorganization operator that rearranges (permutes) data from depth into blocks of spatial data. |

DML_DEPTH_TO_SPACE1_OPERATOR_DESC. Rearranges (permutes) data from depth into blocks of spatial data. The operator outputs a copy of the input tensor where values from the depth dimension are moved in spatial blocks to the height and width dimensions. |

DML_DIAGONAL_MATRIX_OPERATOR_DESC. Describes a DirectML math operator that generates an identity-like matrix with ones on the major diagonal and zeros everywhere else. |

DML_DIAGONAL_MATRIX1_OPERATOR_DESC. Generates an identity-like matrix with ones (or other explicit value) along the given diagonal span, with other elements being filled with either the input values or zeros (if no InputTensor is passed). |

DML_DYNAMIC_QUANTIZE_LINEAR_OPERATOR_DESC. Calculates the quantization scale and zero point values necessary to quantize the InputTensor, then applies that quantization, writing the result to OutputTensor. |

DML_ELEMENT_WISE_ABS_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise absolute value function f(x) = abs(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ACOS_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise arccosine function f(x) = acos(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ACOSH_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise inverse hyperbolic cosine function f(x) = log(x + sqrt(x * x - 1)) * scale + bias, where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ADD_OPERATOR_DESC. Describes a DirectML math operator that performs the function of adding every element in ATensor to its corresponding element in BTensor. |

DML_ELEMENT_WISE_ADD1_OPERATOR_DESC. Describes a DirectML math operator that performs the function of adding every element in ATensor to its corresponding element in BTensor, f(a, b) = a + b, with the option for fused activation. |

DML_ELEMENT_WISE_ASIN_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise arcsine function f(x) = asin(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ASINH_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise inverse hyperbolic sine function f(x) = log(x + sqrt(x * x + 1)) * scale + bias, where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ATAN_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise arctangent function f(x) = atan(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ATANH_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise inverse hyperbolic tangent function f(x) = (log((1 + x) / (1 - x)) / 2) * scale + bias, where the scale and bias terms are optional. |

DML_ELEMENT_WISE_ATAN_YX_OPERATOR_DESC. Computes the 2-argument arctangent for each element of ATensor and BTensor, where ATensor is the Y-axis and BTensor is the X-axis, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_BIT_AND_OPERATOR_DESC. Computes the bitwise AND between each corresponding element of the input tensors, and writes the result into the output tensor. |

DML_ELEMENT_WISE_BIT_COUNT_OPERATOR_DESC. Computes the bitwise NOT for each element of the input tensor, and writes the result into the output tensor. |

DML_ELEMENT_WISE_BIT_NOT_OPERATOR_DESC. Computes the bitwise population count (the number of bits set to 1) for each element of the input tensor, and writes the result into the output tensor. |

DML_ELEMENT_WISE_BIT_OR_OPERATOR_DESC. Computes the bitwise OR between each corresponding element of the input tensors, and writes the result into the output tensor. |

DML_ELEMENT_WISE_BIT_SHIFT_LEFT_OPERATOR_DESC. Performs a logical left shift of each element of ATensor by a number of bits given by the corresponding element of BTensor, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_BIT_SHIFT_RIGHT_OPERATOR_DESC. Performs a logical right shift of each element of ATensor by a number of bits given by the corresponding element of BTensor, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_BIT_XOR_OPERATOR_DESC. Computes the bitwise XOR (eXclusive OR) between each corresponding element of the input tensors, and writes the result into the output tensor. |

DML_ELEMENT_WISE_CEIL_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise ceiling function f(x) = ceil(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_CLIP_GRAD_OPERATOR_DESC. Computes backpropagation gradients for element-wise clip. |

DML_ELEMENT_WISE_CLIP_GRAD1_OPERATOR_DESC. Computes backpropagation gradients for DML_ELEMENT_WISE_CLIP1_OPERATOR_DESC. |

DML_ELEMENT_WISE_CLIP_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise clip function f(x) = clamp(x * scale + bias, minValue, maxValue), where the scale and bias terms are optional, and where clamp(x) = min(maxValue, max(minValue, x)). |

DML_ELEMENT_WISE_CLIP1_OPERATOR_DESC. Performs a clamping (or limiting) operation for each element of InputTensor, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_CONSTANT_POW_OPERATOR_DESC. Describes a DirectML operator that performs the element-wise constant power function f(x) = pow(x * scale + bias, exponent), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_COS_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise cosine function f(x) = cos(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_COSH_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise hyperbolic cosine function f(x) = ((e^x + e^-x) / 2) * scale + bias, where the scale and bias terms are optional. |

DML_ELEMENT_WISE_DEQUANTIZE_LINEAR_OPERATOR_DESC. Describes a DirectML operator that performs the linear dequantize function on every element in `InputTensor` with respect to its corresponding element in `ScaleTensor` and `ZeroPointTensor` . |

DML_ELEMENT_WISE_DIFFERENCE_SQUARE_OPERATOR_DESC. Subtracts each element of BTensor from the corresponding element of ATensor, multiplies the result by itself, and places the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_DIVIDE_OPERATOR_DESC. Describes a DirectML math operator that performs the function of dividing every element in `ATensor` by its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_ERF_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise natural exponential function f(x) = exp(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_EXP_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise natural exponential function f(x) = exp(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_FLOOR_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise floor function f(x) = floor(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_IDENTITY_OPERATOR_DESC. Describes a DirectML generic operator that performs the element-wise identity function f(x) = x * scale + bias. |

DML_ELEMENT_WISE_IF_OPERATOR_DESC. Describes a DirectML math operator that essentially performs a ternary `if` statement. |

DML_ELEMENT_WISE_IS_INFINITY_OPERATOR_DESC. Checks each element of InputTensor for IEEE-754 -inf, inf, or both, depending on the given InfinityMode, and places the result (1 for true, 0 for false) into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_IS_NAN_OPERATOR_DESC. Describes a DirectML math operator that determines, elementwise, whether the input is NaN. |

DML_ELEMENT_WISE_LOGICAL_AND_OPERATOR_DESC. Describes a DirectML math operator that performs a logical AND function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_LOGICAL_EQUALS_OPERATOR_DESC. Describes a DirectML math operator that performs a logical equality function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_LOGICAL_GREATER_THAN_OPERATOR_DESC. Describes a DirectML math operator that performs a logical greater-than function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_LOGICAL_GREATER_THAN_OR_EQUAL_OPERATOR_DESC. Performs a logical greater than or equal to on each pair of corresponding elements of the input tensors, placing the result (1 for true, 0 for false) into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_LOGICAL_LESS_THAN_OPERATOR_DESC. Describes a DirectML math operator that performs a logical less-than function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_LOGICAL_LESS_THAN_OR_EQUAL_OPERATOR_DESC. Performs a logical less than or equal to on each pair of corresponding elements of the input tensors, placing the result (1 for true, 0 for false) into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_LOGICAL_NOT_OPERATOR_DESC. Describes a DirectML math operator that performs a logical NOT function on every element in the input. |

DML_ELEMENT_WISE_LOGICAL_OR_OPERATOR_DESC. Describes a DirectML math operator that performs a logical OR function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_LOGICAL_XOR_OPERATOR_DESC. Describes a DirectML math operator that performs a logical exclusive OR (XOR) function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_LOG_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise natural logarithm function f(x) = log(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_MAX_OPERATOR_DESC. Describes a DirectML math reduction operator that performs a maximum function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_MEAN_OPERATOR_DESC. Describes a DirectML math reduction operator that performs an arithmetic mean function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_MIN_OPERATOR_DESC. Describes a DirectML math reduction operator that performs a minimum function between every element in `ATensor` and its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_MODULUS_FLOOR_OPERATOR_DESC. Computes the modulus, with the same results as the Python modulus, for each pair of corresponding elements from the input tensors, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_MODULUS_TRUNCATE_OPERATOR_DESC. Computes the C modulus operator for each pair of corresponding elements of the input tensors, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_MULTIPLY_OPERATOR_DESC. Describes a DirectML math operator that performs the function of multiplying every element in `ATensor` by its corresponding element in `BTensor` . |

DML_ELEMENT_WISE_NEGATE_OPERATOR_DESC. Negates each element of InputTensor, storing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_POW_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise power function f(x, exponent) = pow(x * scale + bias, exponent), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_QUANTIZE_LINEAR_OPERATOR_DESC. Describes a DirectML operator that performs the linear quantize function on every element in `InputTensor` with respect to its corresponding element in `ScaleTensor` and ZeroPointTensor. |

DML_ELEMENT_WISE_QUANTIZED_LINEAR_ADD_OPERATOR_DESC. Adds every element in ATensor to its corresponding element in BTensor, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_RECIP_OPERATOR_DESC. Describes a DirectML math operator that performs a reciprocal function on every element in the input. |

DML_ELEMENT_WISE_ROUND_OPERATOR_DESC. Rounds each element of InputTensor to an integer value, placing the result into the corresponding element of OutputTensor. |

DML_ELEMENT_WISE_SIGN_OPERATOR_DESC. Describes a DirectML operator that performs an elementwise shrink activation function on the input. |

DML_ELEMENT_WISE_SIN_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise sine function f(x) = sin(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_SINH_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise hyperbolic sine function f(x) = ((e^x - e^-x) / 2) * scale + bias, where the scale and bias terms are optional. |

DML_ELEMENT_WISE_SQRT_OPERATOR_DESC. Describes a DirectML math operator that performs a square root function on every element in the input. |

DML_ELEMENT_WISE_SUBTRACT_OPERATOR_DESC. Describes a DirectML math operator that performs the function of subtracting every element in `BTensor` from its corresponding element in `ATensor` . |

DML_ELEMENT_WISE_TAN_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise tangent function f(x) = tan(x * scale + bias), where the scale and bias terms are optional. |

DML_ELEMENT_WISE_TANH_OPERATOR_DESC. Describes a DirectML trigonometric operator that performs the element-wise inverse hyperbolic tangent function f(x) = tanh(x) * scale + bias, where the scale and bias terms are optional. |

DML_ELEMENT_WISE_THRESHOLD_OPERATOR_DESC. Describes a DirectML math operator that performs the element-wise threshold function f(x) = max(x * scale + bias, min), where the scale and bias terms are optional. |

DML_FEATURE_DATA_TENSOR_DATA_TYPE_SUPPORT. Provides detail about whether a DirectML device supports a particular data type within tensors. |

DML_FEATURE_QUERY_TENSOR_DATA_TYPE_SUPPORT. Used to query a DirectML device for its support for a particular data type within tensors. |

DML_FILL_VALUE_CONSTANT_OPERATOR_DESC. Fills a tensor with the given constant Value. |

DML_FILL_VALUE_SEQUENCE_OPERATOR_DESC. Fills a tensor with a sequence. |

DML_GATHER_ELEMENTS_OPERATOR_DESC. Gathers elements from the input tensor along the given axis using the indices tensor to remap into the input. |

DML_GATHER_ND_OPERATOR_DESC. Gathers elements from the input tensor, using the indices tensor to remap indices to entire subblocks of the input. |

DML_GATHER_ND1_OPERATOR_DESC. Gathers elements from the input tensor, using the indices tensor to remap indices to entire subblocks of the input. |

DML_GATHER_OPERATOR_DESC. Describes a DirectML data reorganization operator which, when given a data tensor of rank r >= 1, and an indices tensor of rank q, gathers the entries in the axis dimension of the data (by default, the outermost one is axis == 0) indexed by indices, and concatenates them in an output tensor of rank q + (r - 1). |

DML_GEMM_OPERATOR_DESC. Describes a DirectML operator that performs a general matrix multiplication function on the input, y = alpha * transposeA(A) * transposeB(B) + beta * C. |

DML_GRAPH_DESC. Describes a graph of DirectML operators used to compile a combined, optimized operator. |

DML_GRAPH_EDGE_DESC. A generic container for a connection within a graph of DirectML operators defined by DML_GRAPH_DESC and passed to IDMLDevice1::CompileGraph. |

DML_GRAPH_NODE_DESC. A generic container for a node within a graph of DirectML operators defined by DML_GRAPH_DESC and passed to IDMLDevice1::CompileGraph. |

DML_GRU_OPERATOR_DESC. Describes a DirectML deep learning operator that performs a (standard layers) one-layer gated recurrent unit (GRU) function on the input. |

DML_INPUT_GRAPH_EDGE_DESC. Describes a connection within a graph of DirectML operators defined by DML_GRAPH_DESC and passed to IDMLDevice1::CompileGraph. This structure is used to define a connection from a graph input to an input of an internal node. |

DML_INTERMEDIATE_GRAPH_EDGE_DESC. Describes a connection within a graph of DirectML operators defined by DML_GRAPH_DESC and passed to IDMLDevice1::CompileGraph. This structure is used to define a connection between internal nodes. |

DML_JOIN_OPERATOR_DESC. Describes a DirectML operator that performs a join function on an array of input tensors. |

DML_LOCAL_RESPONSE_NORMALIZATION_GRAD_OPERATOR_DESC. Computes backpropagation gradients for local response normalization. |

DML_LOCAL_RESPONSE_NORMALIZATION_OPERATOR_DESC. Describes a DirectML operator that performs a local response normalization (LRN) function on the input. |

DML_LP_NORMALIZATION_OPERATOR_DESC. Describes a DirectML operator that performs an Lp-normalization function along the specified axis of the input tensor. |

DML_LP_POOLING_OPERATOR_DESC. Describes a DirectML operator that performs an Lp pooling function across the input tensor. |

DML_LP_POOLING1_OPERATOR_DESC. Computes the LP normalized value across the elements within the sliding window over the input tensor. |

DML_LSTM_OPERATOR_DESC. Describes a DirectML deep learning operator that performs a one-layer long short term memory (LSTM) function on the input. |

DML_MATRIX_MULTIPLY_INTEGER_OPERATOR_DESC. Performs a matrix multiplication function on integer data. |

DML_MATRIX_MULTIPLY_INTEGER_TO_FLOAT_OPERATOR_DESC. Performs a matrix multiplication function on integer input tensor data, and produces floating point output. |

DML_MAX_POOLING_GRAD_OPERATOR_DESC. Computes backpropagation gradients for max pooling (see DML_MAX_POOLING2_OPERATOR_DESC). |

DML_MAX_POOLING_OPERATOR_DESC. Describes a DirectML operator that performs a max pooling function across the input tensor. |

DML_MAX_POOLING1_OPERATOR_DESC. Describes a DirectML operator that performs a max pooling function across the input tensor (according to kernel sizes, stride sizes, and pad lengths), y = max(x1 + x2 + â€¦ x_pool_size). |

DML_MAX_POOLING2_OPERATOR_DESC. Computes the maximum value across the elements within the sliding window over the input tensor, and optionally returns the indices of the maximum values selected. |

DML_MAX_UNPOOLING_OPERATOR_DESC. Describes a DirectML operator that fills the output tensor of the given shape (either explicit, or the input shape plus padding) with zeros, then writes each value from the input tensor into the output tensor at the element offset from the corresponding indices array. |

DML_MEAN_VARIANCE_NORMALIZATION_OPERATOR_DESC. Describes a DirectML operator that performs a mean variance normalization function on the input tensor. |

DML_MEAN_VARIANCE_NORMALIZATION1_OPERATOR_DESC. Performs a mean variance normalization function on the input tensor. This operator will calculate the mean and variance of the input tensor to perform normalization. |

DML_MULTIHEAD_ATTENTION_OPERATOR_DESC. Performs a multi-head attention operation. |

DML_NONZERO_COORDINATES_OPERATOR_DESC. Computes the N-dimensional coordinates of all non-zero elements of the input tensor. |

DML_ONE_HOT_OPERATOR_DESC. Describes a DirectML operator that generates a tensor with each element filled with two valuesâ€”either an 'on' or an 'off' value. |

DML_OPERATOR_DESC. A generic container for an operator description. You construct DirectML operators using the parameters specified in this struct. |

DML_OPERATOR_GRAPH_NODE_DESC. Decribes a node within a graph of DirectML operators defined by DML_GRAPH_DESC and passed to IDMLDevice1::CompileGraph. |

DML_OUTPUT_GRAPH_EDGE_DESC. Describes a connection within a graph of DirectML operators defined by DML_GRAPH_DESC and passed to IDMLDevice1::CompileGraph. This structure is used to define a connection from an output of an internal node to a graph output. |

DML_PADDING_OPERATOR_DESC. Describes a DirectML data reorganization operator that inflates the input tensor with zeroes (or some other value) on the edges. |

DML_PADDING1_OPERATOR_DESC. Inflates the input tensor with constant or mirrored values on the edges, and writes the result to the output. |

DML_QUANTIZED_LINEAR_AVERAGE_POOLING_OPERATOR_DESC. Averages quantized values across the elements within the sliding window over the input tensor. This operator is mathematically equivalent to dequantizing the inputs, then performing average pooling, and then quantizing the output. |

DML_QUANTIZED_LINEAR_CONVOLUTION_OPERATOR_DESC. Performs a convolution of the FilterTensor with the InputTensor. This operator performs forward convolution on quantized data. This operator is mathematically equivalent to dequantizing the inputs, convolving, and then quantizing the output. |

DML_QUANTIZED_LINEAR_MATRIX_MULTIPLY_OPERATOR_DESC. Performs a matrix multiplication function on quantized data. This operator is mathematically equivalent to dequantizing the inputs, then performing matrix multiply, and then quantizing the output. |

DML_RANDOM_GENERATOR_OPERATOR_DESC. Fills an output tensor with deterministically-generated, pseudo-random, uniformly-distributed bits. This operator optionally may also output an updated internal generator state, which can be used during subsequent executions of the operator. |

DML_REDUCE_OPERATOR_DESC. Describes a DirectML operator that performs the specified reduction function on the input. |

DML_RESAMPLE_GRAD_OPERATOR_DESC. Computes backpropagation gradients for Resample (see DML_RESAMPLE1_OPERATOR_DESC). |

DML_RESAMPLE_GRAD1_OPERATOR_DESC. Computes backpropagation gradients for DML_RESAMPLE2_OPERATOR_DESC. |

DML_RESAMPLE_OPERATOR_DESC. Describes a DirectML operator that resamples elements from the source to the destination tensor, using the scale factors to compute the destination tensor size. |

DML_RESAMPLE1_OPERATOR_DESC. Resamples elements from the source to the destination tensor, using the scale factors to compute the destination tensor size. You can use a linear or nearest-neighbor interpolation mode. |

DML_RESAMPLE2_OPERATOR_DESC. Resamples elements from the source to the destination tensor, using the scale factors to compute the destination tensor size. |

DML_REVERSE_SUBSEQUENCES_OPERATOR_DESC. Reverses the elements of one or more subsequences of a tensor. The set of subsequences to be reversed is chosen based on the provided axis and sequence lengths. |

DML_RNN_OPERATOR_DESC. Describes a DirectML deep learning operator that performs a one-layer simple recurrent neural network (RNN) function on the input. |

DML_ROI_ALIGN_GRAD_OPERATOR_DESC. Computes backpropagation gradients for ROI_ALIGN and ROI_ALIGN1. |

DML_ROI_ALIGN_OPERATOR_DESC. Performs an ROI align operation, as described in the Mask R-CNN paper. In summary, the operation extracts crops from the input image tensor and resizes them to a common output size specified by the last 2 dimensions of OutputTensor using the specified InterpolationMode. |

DML_ROI_ALIGN1_OPERATOR_DESC. Performs an ROI align operation, as described in the Mask R-CNN paper. In summary, the operation extracts cropped windows from the input image tensor, and resizes them to a common output size specified by the last 2 dimensions of OutputTensor using the specified InterpolationMode. |

DML_ROI_POOLING_OPERATOR_DESC. Describes a DirectML operator that performs a pooling function across the input tensor (according to regions of interest, or ROIs). |

DML_SCALAR_UNION. A union of scalar types. |

DML_SCALE_BIAS. Contains the values of scale and bias terms supplied to a DirectML operator. |

DML_SCATTER_ND_OPERATOR_DESC. Copies the whole input tensor to the output, then overwrites selected indices with corresponding values from the updates tensor. |

DML_SCATTER_OPERATOR_DESC. Describes a DirectML operator that copies the whole input tensor to the output, then overwrites selected indices with corresponding values from the updates tensor. |

DML_SIZE_2D. Contains values that can represent the size (as supplied to a DirectML operator) of a 2-D plane of elements within a tensor, or a 2-D scale, or any 2-D width/height value. |

DML_SLICE_GRAD_OPERATOR_DESC. Computes backpropagation gradients for Slice (see DML_SLICE1_OPERATOR_DESC). |

DML_SLICE_OPERATOR_DESC. Describes a DirectML data reorganization operator that produces a slice of the input tensor along multiple axes. |

DML_SLICE1_OPERATOR_DESC. Extracts a single subregion (a "slice") of an input tensor. |

DML_SPACE_TO_DEPTH_OPERATOR_DESC. Describes a DirectML data reorganization operator that rearranges blocks of spatial data into depth. |

DML_SPACE_TO_DEPTH1_OPERATOR_DESC. Rearranges blocks of spatial data into depth. The operator outputs a copy of the input tensor where values from the height and width dimensions are moved to the depth dimension. |

DML_SPLIT_OPERATOR_DESC. Describes a DirectML data reorganization operator that splits the input tensor into multiple output tensors, along the specified axis. |

DML_TENSOR_DESC. A generic container for a DirectML tensor description. |

DML_TILE_OPERATOR_DESC. Describes a DirectML data reorganization operator that constructs an output tensor by tiling the input tensor. |

DML_TOP_K_OPERATOR_DESC. Describes a DirectML reduction operator that retrieves the top K elements along a specified axis. |

DML_TOP_K1_OPERATOR_DESC. Selects the largest or smallest K elements from each sequence along an axis of the InputTensor, and returns the values and indices of those elements in the OutputValueTensor and OutputIndexTensor, respectively. |

DML_UPSAMPLE_2D_OPERATOR_DESC. Describes a DirectML imaging operator that upsamples the image contained in the input tensor. |

DML_VALUE_SCALE_2D_OPERATOR_DESC. Describes a DirectML operator that performs an element-wise scale-and-bias function on the values in the input tensor. |

## Related topics

## Feedback

https://aka.ms/ContentUserFeedback.

Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for