Skip to content

[Tracking] NPU/GPU models missing or silently falling back to CPU β€” EP download failing on WindowsΒ #792

@samuel100

Description

@samuel100

πŸ‘‹ If you're hitting this on a Windows device that has an NPU (Snapdragon X / X2 Elite, Intel Core Ultra, AMD Ryzen AI) or GPU (Nvidia TRT-RTX), please react with πŸ‘ on this issue so we can gauge impact. Only add a comment if the fixes below don't resolve it for you.

Symptoms

Any of the following on a device with a working NPU:

  • CLI β€” foundry model list shows only CPU variants; foundry model run <…-npu…> fails with "Model … was not found in the catalog or local cache".
  • SDK (Python / C# / JS / Rust) β€” list_catalog_models() / equivalent returns no NPU variants. The CLI now consumes the SDK, so the CLI and SDK results are always consistent.
  • Silent CPU fallback β€” running a model by alias (e.g. phi-3.5-mini) without explicitly listing first appears to "work", but inference runs on CPU because the NPU variant was filtered out of the catalog. Look for the chosen variant ending in -cpu / -generic-cpu rather than -qnn-npu / -vitis-npu / -openvino-npu.
  • Logs may include "Failed to download or register the following EPs: QNNExecutionProvider / VitisAIExecutionProvider / OpenVINOExecutionProvider".

Root cause

Foundry Local relies on Windows ML to download and register the per-vendor Execution Provider (QNN for Qualcomm, VitisAI for AMD, OpenVINO for Intel, TensorRT-RTX on Nvidia). EP download uses the Windows Update delivery channel, so anything blocking Windows Update blocks the EP. When the EP isn't registered, Foundry Local filters NPU variants out of the catalog β€” so both CLI and SDK stop listing them, and model run resolves to the next-best (usually CPU) variant.

The three most common causes (per the official Windows ML troubleshooting guide):

  1. Pending Windows Update reboot β€” Restart the device and retry.
  2. Windows Updates paused β€” Settings β†’ Windows Update β†’ Resume updates.
  3. Managed device / enterprise policy blocking Windows Update or component downloads β€” Contact your IT admin; the EP cannot be sideloaded.

Full guidance: https://learn.microsoft.com/windows/ai/new-windows-ml/execution-provider-errors

Quick verification

foundry cache ls               # do EPs appear?
foundry model ls --device npu  # filter to NPU only

To confirm a silent CPU fallback, check which variant got resolved β€” the variant ID in the run output will end in -cpu rather than -npu.

If none of the above helps β€” file a Feedback Hub report

This is important: a Feedback Hub report automatically captures the WinML EP-download logs the team needs. Please route it to the WinML team by selecting the correct category:

  1. Launch Feedback Hub β€” Select Start, type Feedback Hub in the search bar, and open the Feedback Hub app.
  2. Select Report a problem.
  3. Describe your issue (e.g. "NPU execution provider failed to download / register; NPU models missing from Foundry Local catalog").
  4. For the category, select Developer Platform β†’ Windows Machine Learning.
  5. Follow the prompts to reproduce the problem and submit.

Then comment on this issue with:

  • the Feedback Hub link to your report,
  • NPU vendor + driver version,
  • Foundry Local version (foundry --version),
  • whether foundry cache ls shows any EP entries.

Related closed issues: #510, #393, #558, #584, #659.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions