Compartir a través de


Interfaz IDMLCompiledOperator (directml.h)

Representa una forma compilada y eficaz de un operador adecuado para su ejecución en la GPU. Para crear este objeto, llame a IDMLDevice::CompileOperator. La interfaz IDMLCompiledOperator hereda de IDMLDispatchable.

A diferencia de IDMLOperator, los operadores compilados son "baked" y se pueden ejecutar directamente mediante la GPU. Una vez compilado un operador, debe inicializarlo exactamente una vez antes de poder ejecutarse. Es un error inicializar un operador más de una vez. Los inicializadores de operador se usan para inicializar operadores compilados. Puede usar IDMLCommandRecorder::RecordDispatch para registrar el envío de un inicializador de operador que, cuando se ejecute en la GPU, inicializará uno o varios operadores.

Además de los tensores de entrada y salida, los operadores pueden requerir memoria adicional para su ejecución. La aplicación debe proporcionar esta memoria adicional en forma de recursos temporales y persistentes.

Un recurso temporal es la memoria temporal que solo se usa durante la ejecución del operador y no necesita conservarse después de que la llamada a IDMLCommandRecorder::RecordDispatch se complete en la GPU. Esto significa que la aplicación puede liberar o sobrescribir el recurso temporal entre envíos del operador compilado. Por el contrario, el recurso persistente debe residir al menos hasta que se haya completado la última ejecución del operador en la GPU. Además, el contenido del recurso persistente es opaco y se debe conservar entre las ejecuciones del operador.

El tamaño de los recursos temporales y persistentes varía por operador. Llame a IDMLDispatchable::GetBindingProperties para consultar el tamaño necesario, en bytes, de los recursos persistentes y temporales para este operador compilado. Consulte IDMLBindingTable::BindTemporaryResource e IDMLBindingTable::BindPersistentResource para obtener más información sobre el enlace de recursos temporales y persistentes.

Todos los métodos de esta interfaz son seguros para subprocesos.

Herencia

La interfaz IDMLCompiledOperator hereda de la interfaz IDMLDispatchable.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado directml.h

Consulte también

Enlaces en DirectML

IDMLDispatchable