Compartilhar via


Interface IntraopNumThreads

Fornece uma capacidade de alterar o número de threads usados no ThreadPool para a execução de operador Intra para operadores de CPU por meio do parâmetro LearningModelSessionOptions. Por padrão, o WinML define o valor como o número máximo de threads, que é o mesmo número de núcleos lógicos na CPU do usuário. Definir esse valor acima do número de núcleos lógicos na CPU pode resultar em um pool de threads ineficiente e uma avaliação mais lenta.

Código de exemplo

void SetIntraOpNumThreads(LearningModel model) {
    // Create LearningModelSessionOptions
    auto options = LearningModelSessionOptions();
    auto nativeOptions = options.as<ILearningModelSessionOptionsNative>();
 
    // Set the number of intra op threads to half of logical cores.
    uint32_t desiredThreads = std::thread::hardware_concurrency() / 2;
    nativeOptions->SetIntraOpNumThreadsOverride(desiredThreads);
 
    // Create session
    LearningModelSession session = nullptr;
    WINML_EXPECT_NO_THROW(session = LearningModelSession(model, LearningModelDeviceKind::Cpu, options));
}

Requisitos

Requisito
Cliente mínimo com suporte Windows 10, build 17763
Servidor mínimo com suporte Windows Server 2019 com Desktop Experience
Cabeçalho windows.ai.machinelearning.native.h

Observação

Use os recursos a seguir para obter ajuda com o Windows ML:

  • Para fazer perguntas ou responder a perguntas técnicas sobre o Windows ML, use a marca windows-machine-learning no Stack Overflow.
  • Para relatar um bug, registre um problema no nosso GitHub.