Bug Bash - EP+Performance compile paths and fixes - #634
Conversation
| CppConsoleDesktop.exe [options] | ||
| Options: | ||
| --ep_policy <policy> Set execution provider policy (NPU, CPU, GPU, DEFAULT, DISABLE). Default: DISABLE | ||
| --ep_policy <policy> Set execution provider policy (NPU, CPU, GPU, DEFAULT) |
There was a problem hiding this comment.
I see that there's an open PR for addressing the issue w/ the DISABLE option: (#620). How would you all like to reconcile this? mahabayana Gordon Lam (@yeelam-gordon)
There was a problem hiding this comment.
adrastogi Gordon Lam (@yeelam-gordon)
The samples require either --ep_policy or --ep_name to be set. The following scenarios fail due to DISABLE:
Scenario 1 : User explicitly passes DISABLE: The user runs --ep_policy DISABLE. The parser sets ep_policy = null and ep_name remains empty. Validation sees neither is set and throws: "Missing EP selection" - even though the user did specify a policy.
Scenario 2 : User passes an invalid value (e.g., a typo): The user runs --ep_policy NPUU. The parser prints "Unknown EP policy: NPUU, using default (DISABLE)" and silently sets ep_policy = null. Validation again throws "Missing EP selection" : masking the real error (an invalid value)
Thus I would propose this resolution
- Removed DISABLE as a valid --ep_policy option. If the user's intention is to default to CPU behavior, they can use DEFAULT instead, making DISABLE redundant.
- Unknown values now throw immediately with the list of valid options (NPU, CPU, GPU, DEFAULT), so typos and invalid inputs are caught at parse time rather than falling through to a incorrect validation error
|
@microsoft-github-policy-service agree company="Microsoft" |
Align the WindowsML central package set with stable Windows App SDK 2.1.3 and port the main-only EP performance chain from PRs #588, #634, #635, #629, #642, and #643. Preserve release Central Package Management, defer the PR #643 legacy sample removals to final integration review, and record the x64 Release validation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Changes
Bug 1 – Missing ready state output after EnsureReadyAsync
Bug 2 – Remove DISABLE from ep_policy options
Bug 3 – EP+Performance-specific compiled model paths