IDMLOperatorInitializer 인터페이스(directml.h)
컴파일된 연산자를 초기화하는 특수 개체를 나타냅니다. 이 개체의 인스턴스를 만들려면 IDMLDevice::CreateOperatorInitializer를 호출합니다. IDMLOperatorInitializer 인터페이스는 IDMLDispatchable에서 상속됩니다.
연산자 이니셜라이저는 하나 이상의 컴파일된 연산자(초기화 대상)와 연결됩니다. IDMLCommandRecorder::RecordDispatch를 사용하여 명령 목록에 연산자 초기화를 기록할 수 있습니다. GPU에서 초기화가 완료되면 모든 대상 연산자가 초기화된 상태로 들어갑니다. 모든 연산자를 실행하기 전에 정확히 한 번 초기화해야 합니다.
상속
IDMLOperatorInitializer 인터페이스는 IDMLDispatchable 인터페이스에서 상속됩니다.
메서드
IDMLOperatorInitializer 인터페이스에는 이러한 메서드가 있습니다.
IDMLOperatorInitializer::Reset 새 연산자 집합의 초기화를 처리하도록 이니셜라이저를 다시 설정합니다. |
설명
연산자 이니셜라이저를 다시 사용할 수 있습니다. 인스턴스를 사용하여 연산자 집합을 초기화하면 다른 컴파일된 연산자 집합을 대상으로 사용하여 다시 설정할 수 있습니다.
이니셜라이저를 실행할 때 예상되는 바인딩은 다음과 같습니다.
- 입력은 이니셜라이저를 만들거나 초기화할 때 원래 연산자를 지정한 순서대로 각 대상 연산자에 대해 하나의 버퍼 배열 바인딩이어야 합니다. 각 버퍼 배열 바인딩 자체의 크기는 해당 연산자의 입력과 같아야 합니다. 또는 바인딩에 NONE을 지정하여 해당 대상 연산자의 초기화를 위한 입력을 바인딩하지 않을 수 있습니다.
- 출력은 이니셜라이저를 만들거나 초기화할 때 원래 연산자를 지정한 순서대로 각 대상 연산자에 대한 영구 리소스여야 합니다.
- 디스패치 가능한 개체(연산자 이니셜라이저 또는 컴파일된 연산자)와 마찬가지로 이니셜라이저에는 임시 리소스가 필요할 수 있습니다. IDMLDispatchable::GetBindingProperties를 호출하여 임시 리소스의 필요한 크기를 확인합니다.
- 운영자 이니셜라이저에는 영구 리소스가 필요하지 않습니다. 따라서 연산자 이니셜라이저에서 IDMLDispatchable::GetBindingProperties 를 호출하면 항상 PersistentResourceSize 가 0으로 반환됩니다.
연산자 이니셜라이저 자체는 초기화할 필요가 없습니다. GPU 초기화는 컴파일된 연산자에만 적용됩니다.
요구 사항
대상 플랫폼 | Windows |
헤더 | directml.h |