Прочитать на английском

Поделиться через


DirectML

Обзор технологии DirectML.

Для разработки DirectML вам потребуются следующие заголовки:

Рекомендации по программированию для этой технологии см. в следующих руководствах.

Перечисления

 
DML_AXIS_DIRECTION

Определяет константы, указывающие направление операции вдоль заданной оси для оператора (например, суммирование, выбор элементов top-k, выбор минимального элемента).
DML_BINDING_TYPE

Определяет константы, указывающие характер ресурсов, на которые ссылается описание привязки (структура DML_BINDING_DESC).
DML_CONVOLUTION_DIRECTION

Определяет константы, указывающие направление для оператора свертки DirectML (как описано в структуре DML_CONVOLUTION_OPERATOR_DESC).
DML_CONVOLUTION_MODE

Определяет константы, определяющие режим для оператора сверток DirectML (как описано в структуре DML_CONVOLUTION_OPERATOR_DESC).
DML_CREATE_DEVICE_FLAGS

Предоставляет дополнительные параметры создания устройств В DMLCreateDevice. Значения могут быть битовой или вместе.
DML_DEPTH_SPACE_ORDER

Определяет константы, управляющие преобразованием, примененным в операторах DirectML DML_OPERATOR_DEPTH_TO_SPACE1 и DML_OPERATOR_SPACE_TO_DEPTH1.
DML_EXECUTION_FLAGS

Предоставляет параметры DirectML для управления выполнением операторов. Эти флаги могут быть битовой или совместно указывать несколько флагов одновременно.
DML_FEATURE

Определяет набор необязательных функций и возможностей, которые можно запрашивать с устройства DirectML.
DML_FEATURE_LEVEL

Определяет константы, указывающие уровень компонентов DirectML . Уровень функций определяет широкий спектр функций, поддерживаемых DirectML.
DML_GRAPH_EDGE_TYPE

Определяет константы, указывающие тип края графа. Сведения об использовании этого перечисления см. в DML_GRAPH_EDGE_DESC.
DML_GRAPH_NODE_TYPE

Определяет константы, указывающие тип узла графа. Сведения об использовании этого перечисления см. в DML_GRAPH_NODE_DESC.
DML_INTERPOLATION_MODE

Определяет константы, определяющие режим для оператора DirectML upsample 2-D (как описано в структуре DML_UPSAMPLE_2D_OPERATOR_DESC).
DML_IS_INFINITY_MODE

Определяет константы, указывающие знак бесконечности.
DML_MATRIX_TRANSFORM

Определяет константы, которые указывают преобразование матрицы для применения к тензору DirectML.
DML_OPERATOR_TYPE

Определяет тип описания оператора.
DML_PADDING_MODE

Определяет константы, определяющие режим для оператора панели DirectML (как описано в структуре DML_PADDING_OPERATOR_DESC).
DML_RANDOM_GENERATOR_TYPE

Определяет константы, определяющие типы генератора случайных случайных чисел.
DML_RECURRENT_NETWORK_DIRECTION

Определяет константы, указывающие направление для повторяющегося оператора DirectML.
DML_REDUCE_FUNCTION

Определяет константы, определяющие конкретный алгоритм сокращения, используемый для оператора сокращения DirectML (как описано в структуре DML_REDUCE_OPERATOR_DESC).
DML_ROUNDING_MODE

Определяет константы, указывающие режим округления.
DML_TENSOR_DATA_TYPE

Указывает тип данных значений в тензоре. Операторы DirectML могут не поддерживать все типы данных; См. документацию для каждого конкретного оператора, чтобы найти поддерживаемые типы данных.
DML_TENSOR_FLAGS

Указывает дополнительные параметры в описании tensor. Значения могут быть битовой или вместе.
DML_TENSOR_TYPE

Определяет тип описания тензора.

Функции

 
BindInputs

Привязывает набор ресурсов в качестве входных тензоров.
BindOutputs

Привязывает набор ресурсов в виде выходных тензоров.
BindPersistentResource

Привязывает буфер как постоянный ресурс. Чтобы определить требуемый размер этого диапазона буфера, вызовите IDMLDispatchable::GetBindingProperties.
BindTemporaryResource

Привязывает буфер к использованию в качестве временной памяти с нуля. Чтобы определить требуемый размер этого диапазона буфера, вызовите IDMLDispatchable::GetBindingProperties.
CheckFeatureSupport

Получает сведения о необязательных функциях и возможностях, поддерживаемых устройством DirectML.
Компиляция

Компилирует граф операторов DirectML в объект, который можно отправить в GPU.
КомпиляцияOperator

Компилирует оператор в объект, который можно отправить в GPU.
CreateBindingTable

Создает таблицу привязки, которая является объектом, который можно использовать для привязки ресурсов (например, тензоров) к конвейеру.
CreateCommandRecorder

Создает средство записи команд DirectML.
CreateOperator

Создает оператор DirectML.
CreateOperatorInitializer

Создает объект, который можно использовать для инициализации скомпилированных операторов.
DMLCreateDevice

Создает устройство DirectML для данного устройства Direct3D 12. (DMLCreateDevice)
DMLCreateDevice1

Создает устройство DirectML для данного устройства Direct3D 12. (DMLCreateDevice1)
вытеснения

Вытеснение одного или нескольких страничных объектов из памяти GPU. См. также раздел IDMLDevice::MakeResident.
GetBindingProperties

Извлекает свойства привязки для объекта с возможностью отправки (инициализатор оператора или скомпилированный оператор).
GetDevice

Извлекает устройство DirectML, которое использовалось для создания этого объекта.
GetDeviceRemovedReason

Извлекает причину удаления устройства DirectML.
GetParentDevice

Извлекает устройство Direct3D 12, которое использовалось для создания этого устройства DirectML.
GetPrivateData

Возвращает определяемые приложением данные из объекта устройства DirectML.
MakeResident

Приводит к тому, что один или несколько страничных объектов становятся резидентами в памяти GPU. См. также раздел IDMLDevice::Evict.
RecordDispatch

Записывает выполнение диспетчера объекта (инициализатора оператора или скомпилированного оператора) в список команд.
сброс

Сбрасывает таблицу привязки для упаковки нового диапазона дескрипторов, потенциально для другого оператора или инициализатора. Это позволяет динамическое повторное использование таблицы привязки.
сброс

Сбрасывает инициализатор для обработки инициализации нового набора операторов.
SetMuteDebugOutput

Определите, следует ли отключить directML от отправки сообщений в ID3D12InfoQueue.
SetName

Связывает имя с объектом устройства DirectML. Это имя предназначено для использования в диагностике отладки и средствах.
SetPrivateData

Задает определяемые приложением данные объекту устройства DirectML и связывает эти данные с определяемым приложением GUID.
SetPrivateDataInterface

Связывает интерфейс, производный от IUnknown, с объектом устройства DirectML, и связывает интерфейс с определяемым приложением GUID.

Интерфейсы

 
IDMLBindingTable

Упаковывает диапазон кучи дескриптора, управляемого приложением, и используется DirectML для создания привязок для ресурсов. Чтобы создать этот объект, вызовите IDMLDevice::CreateBindingTable.
IDMLCommandRecorder

Записи, отправляемые DirectML, работают в списке команд Direct3D 12.
IDMLCompiledOperator

Представляет скомпилированную, эффективную форму оператора, подходящую для выполнения на GPU. Чтобы создать этот объект, вызовите IDMLDevice::CompileOperator.
IDMLDebugDevice

Управляет уровнями отладки DirectML.
IDMLDevice

Представляет устройство DirectML, которое используется для создания операторов, таблиц привязки, записей команд и других объектов. (IDMLDevice)
IDMLDevice1

Представляет устройство DirectML, которое используется для создания операторов, таблиц привязки, записей команд и других объектов. (IDMLDevice1)
IDMLDeviceChild

Интерфейс, реализованный всеми объектами, созданными на устройстве DirectML.
IDMLDispatchable

Реализованы объектами, которые можно записать в список команд для отправки на GPU с помощью IDMLCommandRecorder::RecordDispatch.
IDMLObject

Интерфейс, из которого IDMLDevice и IDMLDeviceChild наследуются напрямую (и все остальные интерфейсы, косвенно).
IDMLOperator

Представляет оператор DirectML.
IDMLOperatorInitializer

Представляет специализированный объект, цель которого — инициализировать скомпилированные операторы. Чтобы создать экземпляр этого объекта, вызовите IDMLDevice::CreateOperatorInitializer.
IDMLPageable

Реализованы объектами, которые можно вытеснить из памяти GPU, и поэтому их можно предоставить idMLDevice::Evict и IDMLDevice::MakeResident.

Структуры

 
DML_ACTIVATION_CELU_OPERATOR_DESC

Выполняет функцию активации непрерывно различаемой линейной единицы (CELU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_ELU_OPERATOR_DESC

Выполняет функцию активации экспоненциальной линейной единицы (ELU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_HARD_SIGMOID_OPERATOR_DESC

Выполняет жесткую функцию sigmoid для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_HARDMAX_OPERATOR_DESC

Выполняет функцию hardmax для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_IDENTITY_OPERATOR_DESC

Выполняет активацию удостоверения, эффективно копируя каждый элемент InputTensor в соответствующий элемент OutputTensor.
DML_ACTIVATION_LEAKY_RELU_OPERATOR_DESC

Выполняет функцию активации повторной линейной единицы (ReLU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_LINEAR_OPERATOR_DESC

Выполняет функцию линейной активации для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_LOG_SOFTMAX_OPERATOR_DESC

Выполняет функцию активации softmax (естественно) для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_PARAMETERIZED_RELU_OPERATOR_DESC

Выполняет параметризованную функцию активации линейной единицы (ReLU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_PARAMETRIC_SOFTPLUS_OPERATOR_DESC

Выполняет функцию активации softplus для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor. (DML_ACTIVATION_PARAMETRIC_SOFTPLUS_OPERATOR_DESC)
DML_ACTIVATION_RELU_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для исправленной линейной единицы (ReLU).
DML_ACTIVATION_RELU_OPERATOR_DESC

Выполняет функцию активации линейной единицы (ReLU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_SCALED_ELU_OPERATOR_DESC

Выполняет функцию активации экспоненциальной линейной единицы (ELU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_SCALED_TANH_OPERATOR_DESC

Выполняет масштабируемую функцию гиперболической активации для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_SHRINK_OPERATOR_DESC

Выполняет функцию сжатия активации для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_SIGMOID_OPERATOR_DESC

Выполняет функцию sigmoid для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_SOFTMAX_OPERATOR_DESC

Выполняет функцию активации softmax в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_SOFTPLUS_OPERATOR_DESC

Выполняет функцию активации softplus для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor. (DML_ACTIVATION_SOFTPLUS_OPERATOR_DESC)
DML_ACTIVATION_SOFTSIGN_OPERATOR_DESC

Выполняет функцию softsign для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_TANH_OPERATOR_DESC

Выполняет функцию гиперболической активации для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ACTIVATION_THRESHOLDED_RELU_OPERATOR_DESC

Выполняет пороговую функцию активации линейной единицы (ReLU) для каждого элемента в InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ADAM_OPTIMIZER_OPERATOR_DESC

Вычисляет обновленные весы (параметры) с помощью предоставленных градиентов на основе алгоритма оценки адама (ADAptive Moment). Этот оператор является оптимизатором и обычно используется в шаге обновления веса цикла обучения для выполнения градиентного спуска.
DML_ARGMAX_OPERATOR_DESC

Выводит индексы элементов с максимальным значением в одном или нескольких измерениях входного тензора.
DML_ARGMIN_OPERATOR_DESC

Выводит индексы минимальных значений элементов в одном или нескольких измерениях входного тензора.
DML_AVERAGE_POOLING_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для среднего пула (см. DML_AVERAGE_POOLING_OPERATOR_DESC).
DML_AVERAGE_POOLING_OPERATOR_DESC

Среднее значение между элементами в скользящем окне по входной тензору.
DML_BATCH_NORMALIZATION_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для нормализации пакета.
DML_BATCH_NORMALIZATION_OPERATOR_DESC

Структура DML_BATCH_NORMALIZATION_OPERATOR_DESC (directml.h) выполняет пакетную нормализацию входных данных.
DML_BATCH_NORMALIZATION_TRAINING_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для обучения пакетной нормализации.
DML_BATCH_NORMALIZATION_TRAINING_OPERATOR_DESC

Структура DML_BATCH_NORMALIZATION_TRAINING_OPERATOR_DESC (directml.h) выполняет пакетную нормализацию входных данных.
DML_BINDING_DESC

Содержит описание привязки, чтобы добавить ее в таблицу привязки с помощью вызова одного из методов IDMLBindingTable.
DML_BINDING_PROPERTIES

Содержит сведения о требованиях к привязке определенного скомпилированного оператора или инициализатора оператора. Эта структура извлекается из IDMLDispatchable::GetBindingProperties.
DML_BINDING_TABLE_DESC

Задает параметры idMLDevice::CreateBindingTable и IDMLBindingTable::Reset.
DML_BUFFER_ARRAY_BINDING

Указывает привязку ресурсов, которая представляет собой массив отдельных привязок буфера.
DML_BUFFER_BINDING

Указывает привязку ресурсов, описанную диапазоном байтов в буфере Direct3D 12, представленной смещением и размером в ID3D12Resource.
DML_BUFFER_TENSOR_DESC

Описывает тензор, который будет храниться в ресурсе буфера Direct3D 12.
DML_CAST_OPERATOR_DESC

Приводит каждый элемент во входных данных к типу выходных тензоров и сохраняет результат в соответствующем элементе выходных данных.
DML_CONVOLUTION_INTEGER_OPERATOR_DESC

Выполняет свертку FilterTensor с InputTensor. Этот оператор выполняет переадресацию в целочисленных данных.
DML_CONVOLUTION_OPERATOR_DESC

Выполняет свертку FilterTensor с InputTensor. Этот оператор поддерживает ряд стандартных конфигураций свертки.
DML_CUMULATIVE_PRODUCT_OPERATOR_DESC

Умножает элементы тензора вдоль оси, записывая бегущий результат продукта в выходной тензор.
DML_CUMULATIVE_SUMMATION_OPERATOR_DESC

Суммирует элементы тензора вдоль оси, записывая бегущий суммирование в выходной тензор.
DML_DEPTH_TO_SPACE_OPERATOR_DESC

Переупорядочение (permutes) данных из глубины в блоки пространственных данных. Оператор выводит копию входного тензора, где значения из измерения глубины перемещаются в пространственные блоки в размеры высоты и ширины. (DML_DEPTH_TO_SPACE_OPERATOR_DESC)
DML_DEPTH_TO_SPACE1_OPERATOR_DESC

Переупорядочение (permutes) данных из глубины в блоки пространственных данных. Оператор выводит копию входного тензора, где значения из измерения глубины перемещаются в пространственные блоки в размеры высоты и ширины. (DML_DEPTH_TO_SPACE1_OPERATOR_DESC)
DML_DIAGONAL_MATRIX_OPERATOR_DESC

Создает матрицу, похожую на удостоверение, с теми (или другими явными значениями) на основной диагонали и нулями везде.
DML_DYNAMIC_QUANTIZE_LINEAR_OPERATOR_DESC

Вычисляет значения шкалы квантизации и нулевой точки, необходимые для квантизации InputTensor, а затем применяет этот квантизацию, записывая результат в OutputTensor.
DML_ELEMENT_WISE_ABS_OPERATOR_DESC

Вычисляет абсолютное значение для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ACOS_OPERATOR_DESC

Вычисляет arccosine для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ACOSH_OPERATOR_DESC

Вычисляет гиперболический arccosine для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ADD_OPERATOR_DESC

Добавляет каждый элемент в ATensor в соответствующий элемент в BTensor, помещая результат в соответствующий элемент OutputTensor. (DML_ELEMENT_WISE_ADD_OPERATOR_DESC)
DML_ELEMENT_WISE_ADD1_OPERATOR_DESC

Добавляет каждый элемент в ATensor в соответствующий элемент в BTensor и помещает результат в соответствующий элемент OutputTensorс параметром для сплавленной активации.
DML_ELEMENT_WISE_ASIN_OPERATOR_DESC

Вычисляет arcsine для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ASINH_OPERATOR_DESC

Вычисляет гиперболический arcsine для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ATAN_OPERATOR_DESC

Вычисляет arctangent для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ATAN_YX_OPERATOR_DESC

Вычисляет 2-аргументный arctangent для каждого элемента ATensor и BTensor, где ATensorявляется оси Y и BTensor является осью X, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ATANH_OPERATOR_DESC

Вычисляет гиперболический arctangent для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_BIT_AND_OPERATOR_DESC

Вычисляет битовую и между каждым соответствующим элементом входных тензоров и записывает результат в выходной тензор.
DML_ELEMENT_WISE_BIT_COUNT_OPERATOR_DESC

Вычисляет побитовое число популяций (число битов, заданное 1) для каждого элемента входного тензора, и записывает результат в выходной тензор.
DML_ELEMENT_WISE_BIT_NOT_OPERATOR_DESC

Вычисляет битовое значение NOT для каждого элемента входного тензора и записывает результат в выходной тензор.
DML_ELEMENT_WISE_BIT_OR_OPERATOR_DESC

Вычисляет битовую или между каждым соответствующим элементом входных тензоров и записывает результат в выходной тензор.
DML_ELEMENT_WISE_BIT_SHIFT_LEFT_OPERATOR_DESC

Выполняет логический сдвиг влево каждого элемента ATensor на несколько битов, заданных соответствующим элементом BTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_BIT_SHIFT_RIGHT_OPERATOR_DESC

Выполняет логический сдвиг вправо каждого элемента ATensor на несколько битов, заданных соответствующим элементом BTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_BIT_XOR_OPERATOR_DESC

Вычисляет побитовый XOR (eXclusive OR) между каждым соответствующим элементом входных тензоров и записывает результат в выходной тензор.
DML_ELEMENT_WISE_CEIL_OPERATOR_DESC

Вычисляет потолок для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor. Потолок x — это наименьшее целое число, которое больше или равно x.
DML_ELEMENT_WISE_CLIP_GRAD_OPERATOR_DESC

Вычисляет градиенты обратной распространения для клипа с использованием элементов.
DML_ELEMENT_WISE_CLIP_GRAD1_OPERATOR_DESC

Вычисляет градиенты обратной распространения для клипа с использованием элементов.
DML_ELEMENT_WISE_CLIP_OPERATOR_DESC

Выполняет следующую операцию для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor. Этот оператор зажимает (или ограничивает) каждый элемент в входных данных в пределах закрытого интервала [Min, Max].
DML_ELEMENT_WISE_CLIP1_OPERATOR_DESC

Выполняет операцию закрепления (или ограничения) для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_CONSTANT_POW_OPERATOR_DESC

Вызывает каждый элемент InputTensor в силу экспонентной, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_COS_OPERATOR_DESC

Вычисляет тригонометрический косинус каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_COSH_OPERATOR_DESC

Вычисляет гиперболический косинус каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_DEQUANTIZE_LINEAR_OPERATOR_DESC

Выполняет следующую линейную функцию деквантизации для каждого элемента в InputTensor относительно соответствующего элемента в ScaleTensor и ZeroPointTensor, помещая результаты в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_DIFFERENCE_SQUARE_OPERATOR_DESC

Вычитает каждый элемент BTensor из соответствующего элемента ATensor, умножает результат самостоятельно и помещает результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_DIVIDE_OPERATOR_DESC

Вычисляет кворот каждого элемента ATensor над соответствующим элементом BTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_ERF_OPERATOR_DESC

Выполняет функцию ошибки Gaussian (erf) для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_EXP_OPERATOR_DESC

Применяет функцию естественного экспоненциации к каждому элементу InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_FLOOR_OPERATOR_DESC

Вычисляет пол для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_IDENTITY_OPERATOR_DESC

Вычисляет удостоверение для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_IF_OPERATOR_DESC

Выбирает элементы из ATensor или BTensorв зависимости от значения соответствующего элемента в ConditionTensor. Ненулевых элементов ConditionTensor выбрать из ATensor, а элементы с нуля выбираются из BTensor.
DML_ELEMENT_WISE_IS_INFINITY_OPERATOR_DESC

Проверяет каждый элемент InputTensor для IEEE-754 -inf, inf или обоих, в зависимости от заданного InfinityMode, и помещает результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_IS_NAN_OPERATOR_DESC

Для каждого элемента входного тензора возвращается значение 1, если входные данные — NaN (как определено IEEE-754) и 0 в противном случае. Результат помещается в соответствующий элемент выходного тензора.
DML_ELEMENT_WISE_LOG_OPERATOR_DESC

Вычисляет логарифм базового e (естественного) каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_AND_OPERATOR_DESC

Выполняет логический И для каждой пары соответствующих элементов входных тензоров, помещая результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_EQUALS_OPERATOR_DESC

Выполняет логический равен для каждой пары соответствующих элементов входных тензоров, помещая результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_GREATER_THAN_OPERATOR_DESC

Выполняет логический больше для каждой пары соответствующих элементов входных тензоров, помещая результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_GREATER_THAN_OR_EQUAL_OPERATOR_DESC

Выполняет логический больше или равно для каждой пары соответствующих элементов входных тензоров, помещая результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_LESS_THAN_OPERATOR_DESC

Выполняет логический меньше для каждой пары соответствующих элементов входных тензоров, помещая результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_LESS_THAN_OR_EQUAL_OPERATOR_DESC

Выполняет логический меньше или равно для каждой пары соответствующих элементов входных тензоров, помещая результат (1 для true, 0 для false) в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_NOT_OPERATOR_DESC

Выполняет логический not для каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_OR_OPERATOR_DESC

Выполняет логический ИЛИ для каждой пары соответствующих элементов входных тензоров, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_LOGICAL_XOR_OPERATOR_DESC

Выполняет логический XOR (эксклюзивный или) для каждой пары соответствующих элементов входных тензоров, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_MAX_OPERATOR_DESC

Принимает больше двух соответствующих элементов из входных тензоров и помещает результат в соответствующий элемент выходного тензора.
DML_ELEMENT_WISE_MEAN_OPERATOR_DESC

Усредняет каждую пару соответствующих элементов входных тензоров, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_MIN_OPERATOR_DESC

Принимает меньше двух соответствующих элементов из входных тензоров и помещает результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_MODULUS_FLOOR_OPERATOR_DESC

Вычисляет модуль с теми же результатами, что и модуль Python, для каждой пары соответствующих элементов из входных тензоров, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_MODULUS_TRUNCATE_OPERATOR_DESC

Вычисляет оператор модуля C для каждой пары соответствующих элементов входных тензоров, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_MULTIPLY_OPERATOR_DESC

Вычисляет продукт каждой пары соответствующих элементов входных тензоров, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_NEGATE_OPERATOR_DESC

Отрицает каждый элемент InputTensor, сохраняя результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_POW_OPERATOR_DESC

Вычисляет каждый элемент InputTensor, поднятый в силу соответствующего элемента ExponentTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_QUANTIZE_LINEAR_OPERATOR_DESC

Выполняет следующую линейную функцию квантизации для каждого элемента в InputTensor относительно соответствующего элемента в ScaleTensor и ZeroPointTensor, помещая результаты в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_QUANTIZED_LINEAR_ADD_OPERATOR_DESC

Добавляет каждый элемент в ATensor в соответствующий элемент в BTensor, помещая результат в соответствующий элемент OutputTensor. (DML_ELEMENT_WISE_QUANTIZED_LINEAR_ADD_OPERATOR_DESC)
DML_ELEMENT_WISE_RECIP_OPERATOR_DESC

Вычисляет обратный для каждого элемента входного тензора, помещая результат в соответствующий элемент выходного тензора.
DML_ELEMENT_WISE_ROUND_OPERATOR_DESC

Округляет каждый элемент InputTensor целочисленным значением, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_SIGN_OPERATOR_DESC

Возвращает значение, представляющее знак каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_SIN_OPERATOR_DESC

Вычисляет тригонометрический синус каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_SINH_OPERATOR_DESC

Вычисляет гиперболический синус каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_SQRT_OPERATOR_DESC

Вычисляет квадратный корень каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_SUBTRACT_OPERATOR_DESC

Вычитает каждый элемент BTensor из соответствующего элемента ATensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_TAN_OPERATOR_DESC

Вычисляет тригонометрический тангенс каждого элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_TANH_OPERATOR_DESC

Вычисляет гиперболический тангенс элемента InputTensor, помещая результат в соответствующий элемент OutputTensor.
DML_ELEMENT_WISE_THRESHOLD_OPERATOR_DESC

Заменяет все элементы InputTensor ниже заданного порогового значения, min, Min. Результаты помещаются в соответствующий элемент OutputTensor.
DML_FEATURE_DATA_FEATURE_LEVELS

Содержит подробные сведения о уровнях функций, поддерживаемых устройством DirectML.
DML_FEATURE_DATA_TENSOR_DATA_TYPE_SUPPORT

Содержит сведения о том, поддерживает ли устройство DirectML определенный тип данных в тензорах.
DML_FEATURE_QUERY_FEATURE_LEVELS

Используется для запроса устройства DirectML для поддержки одного или нескольких уровней компонентов.
DML_FEATURE_QUERY_TENSOR_DATA_TYPE_SUPPORT

Используется для запроса устройства DirectML для поддержки определенного типа данных в тензорах.
DML_FILL_VALUE_CONSTANT_OPERATOR_DESC

Заполняет тензор заданной константой значение.
DML_FILL_VALUE_SEQUENCE_OPERATOR_DESC

Заполняет тензор последовательностью.
DML_GATHER_ELEMENTS_OPERATOR_DESC

Собирает элементы из входного тензора вдоль заданной оси с помощью тензора индексов для повторного сопоставления входных данных.
DML_GATHER_ND_OPERATOR_DESC

Собирает элементы из входного тензора, используя тензор индексов для переназначения индексов ко всем подблокам входных данных. (DML_GATHER_ND_OPERATOR_DESC)
DML_GATHER_ND1_OPERATOR_DESC

Собирает элементы из входного тензора, используя тензор индексов для переназначения индексов ко всем подблокам входных данных. (DML_GATHER_ND1_OPERATOR_DESC)
DML_GATHER_OPERATOR_DESC

Собирает элементы из входного тензора вдольоси , используя IndicesTensor для переназначений индексов.
DML_GEMM_OPERATOR_DESC

Выполняет общую функцию умножения матрицы формы Output = FusedActivation(Alpha * TransA(A) x TransB(B) + Beta * C), где x обозначает умножение матрицы и * обозначает умножение скалярным.
DML_GRAPH_DESC

Описывает граф операторов DirectML, используемых для компиляции объединенного оптимизированного оператора.
DML_GRAPH_EDGE_DESC

Универсальный контейнер для подключения в графе операторов DirectML, определенных DML_GRAPH_DESC и передаваемый в IDMLDevice1::CompileGraph.
DML_GRAPH_NODE_DESC

Универсальный контейнер для узла в графе операторов DirectML, определенных DML_GRAPH_DESC и переданный в IDMLDevice1::CompileGraph.
DML_GRU_OPERATOR_DESC

Выполняет одноуровневую функцию одноуровневой повторяющейся единицы (GRU) (цен. категория "Стандартный") для входных данных. Этот оператор использует несколько шлюзов для выполнения этого слоя. Эти шлюзы выполняются несколько раз в цикле, определяемом измерением длины последовательности и SequenceLengthsTensor.
DML_INPUT_GRAPH_EDGE_DESC

Описывает подключение в графе операторов DirectML, определенных DML_GRAPH_DESC и передаваемых в IDMLDevice1::CompileGraph. Эта структура используется для определения соединения из входных данных графа к входным данным внутреннего узла.
DML_INTERMEDIATE_GRAPH_EDGE_DESC

Описывает подключение в графе операторов DirectML, определенных DML_GRAPH_DESC и передаваемых в IDMLDevice1::CompileGraph. Эта структура используется для определения соединения между внутренними узлами.
DML_JOIN_OPERATOR_DESC

Объединяет массив входных тензоров вдоль указанной оси.
DML_LOCAL_RESPONSE_NORMALIZATION_GRAD_OPERATOR_DESC

Вычисляет градиенты обратной распространения для нормализации локальных ответов.
DML_LOCAL_RESPONSE_NORMALIZATION_OPERATOR_DESC

Выполняет функцию нормализации локального отклика (LRN) для входных данных.
DML_LP_NORMALIZATION_OPERATOR_DESC

Выполняет функцию нормализации Lp вдоль указанной оси входного тензора.
DML_LP_POOLING_OPERATOR_DESC

Вычисляет нормализованное значение Lp между элементами в скользящем окне через входной тензор.
DML_LSTM_OPERATOR_DESC

Выполняет одноуровневую функцию краткосрочной памяти (LSTM) для входных данных. Этот оператор использует несколько шлюзов для выполнения этого слоя. Эти шлюзы выполняются несколько раз в цикле, в зависимости от измерения длины последовательности и SequenceLengthsTensor.
DML_MATRIX_MULTIPLY_INTEGER_OPERATOR_DESC

Выполняет функцию умножения матрицы для целых данных.
DML_MAX_POOLING_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для максимального пула (см. DML_MAX_POOLING2_OPERATOR_DESC).
DML_MAX_POOLING_OPERATOR_DESC

Вычисляет максимальное значение между элементами в скользящем окне над входным тензором.
DML_MAX_POOLING1_OPERATOR_DESC

Вычисляет максимальное значение между элементами в скользящем окне по входной тензору и при необходимости возвращает индексы выбранных максимальных значений. (DML_MAX_POOLING1_OPERATOR_DESC)
DML_MAX_POOLING2_OPERATOR_DESC

Вычисляет максимальное значение между элементами в скользящем окне по входной тензору и при необходимости возвращает индексы выбранных максимальных значений. (DML_MAX_POOLING2_OPERATOR_DESC)
DML_MAX_UNPOOLING_OPERATOR_DESC

Инвертирует операцию максимального пула (см. DML_MAX_POOLING_OPERATOR1_DESC подробных сведений), заполнив выходной тензор OutputTensor значениями входных тензоров InputTensor, как показано из операции максимального пула, в соответствии со значениями индекса, указанными в IndexsTensor. Элементы в выходных тензорах, не тронутых этим процессом, остаются с нулевыми значениями.
DML_MEAN_VARIANCE_NORMALIZATION_OPERATOR_DESC

Выполняет функцию нормализации средней дисперсии для входного тензора. Этот оператор вычисляет среднее и дисперсию входного тензора для нормализации. (DML_MEAN_VARIANCE_NORMALIZATION_OPERATOR_DESC)
DML_MEAN_VARIANCE_NORMALIZATION1_OPERATOR_DESC

Выполняет функцию нормализации средней дисперсии для входного тензора. Этот оператор вычисляет среднее и дисперсию входного тензора для нормализации. (DML_MEAN_VARIANCE_NORMALIZATION1_OPERATOR_DESC)
DML_NONZERO_COORDINATES_OPERATOR_DESC

Вычисляет N-мерные координаты всех ненулевых элементов входного тензора.
DML_ONE_HOT_OPERATOR_DESC

Создает тензор, заполненный одно-горячими значениями. Этот оператор создает выходной тензор, где для всех последовательностей в выбранной оси все, кроме одного элемента в этой последовательности, задано значение OffValue, а остальный один элемент имеет значение OnValue.
DML_OPERATOR_DESC

Универсальный контейнер для описания оператора. Операторы DirectML создаются с помощью параметров, указанных в этой структуре. Дополнительные сведения см. в разделе IDMLDevice::CreateOperator.
DML_OPERATOR_GRAPH_NODE_DESC

Декрибирует узел в графе операторов DirectML, определенных DML_GRAPH_DESC, и передается в IDMLDevice1::CompileGraph.
DML_OUTPUT_GRAPH_EDGE_DESC

Описывает подключение в графе операторов DirectML, определенных DML_GRAPH_DESC и передаваемых в IDMLDevice1::CompileGraph. Эта структура используется для определения подключения из выходных данных внутреннего узла к выходным данным графа.
DML_PADDING_OPERATOR_DESC

Структура DML_PADDING_OPERATOR_DESC (directml.h) увеличивает входной тензор с константными или зеркальными значениями на краях и записывает результат в выходные данные.
DML_PADDING1_OPERATOR_DESC

Структура DML_PADDING1_OPERATOR_DESC (directml.h) увеличивает входной тензор с константными или зеркальными значениями на краях и записывает результат в выходные данные.
DML_QUANTIZED_LINEAR_CONVOLUTION_OPERATOR_DESC

Выполняет свертку FilterTensor с InputTensor. Этот оператор выполняет переадресацию в квантизованных данных. Этот оператор математически эквивалентен деквиализации входных данных, сверток, а затем квантизации выходных данных.
DML_QUANTIZED_LINEAR_MATRIX_MULTIPLY_OPERATOR_DESC

Выполняет функцию умножения матрицы для квантизованных данных. Этот оператор математически эквивалентен деквализовать входные данные, а затем умножить матрицу, а затем квалифицировать выходные данные.
DML_RANDOM_GENERATOR_OPERATOR_DESC

Заполняет выходной тензор детерминированным, псевдо-случайным, равномерно распределенным битами. Этот оператор также может выводить обновленное внутреннее состояние генератора, которое можно использовать во время последующих выполнения оператора.
DML_REDUCE_OPERATOR_DESC

Выводит сокращение элементов (суммы, продукта, минимума и т. д.) в пределах одного или нескольких измерений входного тензора.
DML_RESAMPLE_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для Resample (см. DML_RESAMPLE1_OPERATOR_DESC).
DML_RESAMPLE_OPERATOR_DESC

Повторное использование элементов из источника в тензор назначения с помощью коэффициентов масштабирования для вычисления размера тензора назначения. Можно использовать режим интерполяции линейного или ближайшего соседа. (DML_RESAMPLE_OPERATOR_DESC)
DML_RESAMPLE1_OPERATOR_DESC

Повторное использование элементов из источника в тензор назначения с помощью коэффициентов масштабирования для вычисления размера тензора назначения. Можно использовать режим интерполяции линейного или ближайшего соседа. (DML_RESAMPLE1_OPERATOR_DESC)
DML_REVERSE_SUBSEQUENCES_OPERATOR_DESC

Изменяет элементы одного или нескольких дочерних параметров тензора. Набор вложенных параметров, которые необходимо изменить, выбирается на основе предоставленной оси и длины последовательности.
DML_RNN_OPERATOR_DESC

Выполняет функцию одноуровневой простой повторяющейся нейронной сети (RNN) для входных данных. Эта функция часто называется входными воротами. Этот оператор выполняет эту функцию несколько раз в цикле, определяемую измерением длины последовательности и SequenceLengthsTensor.
DML_ROI_ALIGN_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для ROI_ALIGN и ROI_ALIGN1.
DML_ROI_ALIGN_OPERATOR_DESC

Выполняет операцию выравнивания roI, как описано в документе Mask R-CNN. В целом операция извлекает культуры из тензора входного изображения и изменяет их размер до общего размера выходных данных, указанных в последних 2 измерениях OutputTensor с помощью указанного ИнтерполяцииMode.
DML_ROI_ALIGN1_OPERATOR_DESC

Выполняет операцию выравнивания roI, как описано в документе Mask R-CNN. В сводке операция извлекает обрезанные окна из тензора входного образа и изменяет их размер на общий размер выходных данных, указанный в последних 2 измерениях OutputTensor с помощью указанного ИнтерполяцииMode.
DML_ROI_POOLING_OPERATOR_DESC

Выполняет функцию MaxPool в входном тензоре (в соответствии с интересующими регионами или roIs).
DML_SCALAR_UNION

Объединение скалярных типов.
DML_SCALE_BIAS

Содержит значения терминов масштабирования и смещения, предоставленных оператору DirectML. Масштабирование и смещение влияют на применение функции g(x) = x * Scale + Bias.
DML_SCATTER_ND_OPERATOR_DESC

Копирует весь входной тензор в выходные данные, а затем перезаписывает выбранные индексы с соответствующими значениями из тензора обновлений. (DML_SCATTER_ND_OPERATOR_DESC)
DML_SCATTER_OPERATOR_DESC

Копирует весь входной тензор в выходные данные, а затем перезаписывает выбранные индексы с соответствующими значениями из тензора обновлений. (DML_SCATTER_OPERATOR_DESC)
DML_SIZE_2D

Содержит значения, которые могут представлять размер (как указано оператору DirectML) 2-D плоскости элементов в тензоре или 2-D или любое значение ширины или высоты 2-D.
DML_SLICE_GRAD_OPERATOR_DESC

Вычисляет градиенты обратного распространения для среза (см. DML_SLICE1_OPERATOR_DESC).
DML_SLICE_OPERATOR_DESC

Извлекает один зарез (срез) входного тензора. (DML_SLICE_OPERATOR_DESC)
DML_SLICE1_OPERATOR_DESC

Извлекает один зарез (срез) входного тензора. (DML_SLICE1_OPERATOR_DESC)
DML_SPACE_TO_DEPTH_OPERATOR_DESC

Переупорядочение блоков пространственных данных в глубину. Оператор выводит копию входного тензора, где значения из измерений высоты и ширины перемещаются в измерение глубины. (DML_SPACE_TO_DEPTH_OPERATOR_DESC)
DML_SPACE_TO_DEPTH1_OPERATOR_DESC

Переупорядочение блоков пространственных данных в глубину. Оператор выводит копию входного тензора, где значения из измерений высоты и ширины перемещаются в измерение глубины. (DML_SPACE_TO_DEPTH1_OPERATOR_DESC)
DML_SPLIT_OPERATOR_DESC

Разделяет входной тензор вдоль оси на несколько выходных тензоров.
DML_TENSOR_DESC

Универсальный контейнер для описания тензора DirectML.
DML_TILE_OPERATOR_DESC

Создает выходной тензор путем наварки входного тензора. Элементы в каждом измерении входного тензора повторяются несколькими в массиве Повторения.
DML_TOP_K_OPERATOR_DESC

Выбирает самые большие элементы K из каждой последовательности вдоль оси InputTensor, а также возвращает значения и индексы этих элементов в OutputValueTensor и OutputIndexTensorсоответственно.
DML_TOP_K1_OPERATOR_DESC

Выбирает самые крупные или наименьшие элементы K из каждой последовательности вдоль осиinputTensor , а также возвращает значения и индексы этих элементов в OutputValueTensor и OutputIndexTensorсоответственно.
DML_UPSAMPLE_2D_OPERATOR_DESC

Upsamples входной образ, записывая результат в выходной тензор. Порядок измерений должен быть NCHW (BatchSize, ChannelCount, Height, Width) или NCDHW (BatchSize, ChannelCount, Depth, Height, Width), но шаги можно использовать, если данные хранятся в другом формате.
DML_VALUE_SCALE_2D_OPERATOR_DESC

Выполняет функцию масштабирования и предвзятости элементов, Output = Scale * Input + Bias.