Partilhar via


Interface IntraopNumThreads

Fornece uma capacidade de alterar o número de threads usados no threadpool para Intra Operator Execution para operadores de CPU por meio de 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 mais alto do que o número de núcleos lógicos na CPU pode resultar em um threadpool 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));
}

Requerimentos

Requisito
Cliente mínimo suportado Windows 10, compilação 17763
Servidor mínimo suportado Windows Server 2019 com Experiência Desktop
Cabeçalho windows.ai.machinelearning.native.h

Observação

Use os seguintes recursos para obter ajuda com o Windows ML:

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