Issue: NVIDIA NPU EP Download Error
Env:
NVIDIA GeForce RTX 3060 Laptop GPU, driver version 32.0.15.7324, cuda version 12.5
windows 11 Pro, 24H2
windows Update to KB5065789(2025-09 D)
To test whether CppConsoleDesktop can automatically call the NVIDIA execution provider on a clean PC, I ran the original sample (with only minor debug prints added):
std::cout << "Getting available providers..." << std::endl;
auto catalog = winrt::Microsoft::Windows::AI::MachineLearning::ExecutionProviderCatalog::GetDefault();
auto providers = catalog.FindAllProviders();
for (const auto& provider : providers)
{
std::wcout << L"Provider: " << provider.Name().c_str() << std::endl;
try
{
auto readyState = provider.ReadyState();
std::wcout << L" Ready state: " << static_cast<int>(readyState) << std::endl;
// Only call EnsureReadyAsync if we allow downloads or if the provider is already ready
if (allowDownload || readyState != winrt::Microsoft::Windows::AI::MachineLearning::ExecutionProviderReadyState::NotPresent)
{
std::wcout << L" Ensuring ready..." << std::endl;
provider.EnsureReadyAsync().get();
}
if (!provider.TryRegister())
{
std::wcout << L" Failed to register provider!" << std::endl;
}
else
{
std::wcout << L" Successfully registered." << std::endl;
}
}
catch (...)
{
// Continue if provider fails to initialize
}
}
The app detects NvTensorRtRtxExecutionProvider in the catalog, but TryRegister() fails, and the EP is never actually downloaded or becomes usable.
Getting available providers...
Provider: NvTensorRTRTXExecutionProvider
Ready state: 2
Ensuring ready...
Failed to register provider!
ONNX Runtime Version: 1.23.2
According to the official documentation, NvTensorRtRtxExecutionProvider was released in version 1.8.14.0 via Windows Update in "2025 9D."
However, why am I not getting the execution provider (EP) properly, even though I'm using the corresponding system version?
Issue: NVIDIA NPU EP Download Error
Env:
NVIDIA GeForce RTX 3060 Laptop GPU, driver version 32.0.15.7324, cuda version 12.5
windows 11 Pro, 24H2
windows Update to KB5065789(2025-09 D)
To test whether CppConsoleDesktop can automatically call the NVIDIA execution provider on a clean PC, I ran the original sample (with only minor debug prints added):
The app detects NvTensorRtRtxExecutionProvider in the catalog, but TryRegister() fails, and the EP is never actually downloaded or becomes usable.
According to the official documentation, NvTensorRtRtxExecutionProvider was released in version 1.8.14.0 via Windows Update in "2025 9D."
However, why am I not getting the execution provider (EP) properly, even though I'm using the corresponding system version?