Enable QNN unit tests on Linux ARM64 internal-symbol builds - #861
Draft
tzuhsuanwei wants to merge 3 commits into
Draft
tzuhsuanwei wants to merge 3 commits into
tzuhsuanwei wants to merge 3 commits into
Conversation
tzuhsuanwei
force-pushed
the
dev/tzuhwei/linux-arm64-qnn-ut-internal-symbols
branch
10 times, most recently
from
September 29, 2026 05:33
b811408 to
a9efeeb
Compare
tzuhsuanwei
force-pushed
the
dev/tzuhwei/linux-arm64-qnn-ut-internal-symbols
branch
from
September 29, 2026 09:48
a9efeeb to
e49e26b
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Enable the QNN internal-symbol unit-test build on Linux ARM64 (HTP V68) without coverage instrumentation.
This adds a Linux ARM64 Draft-PR workflow that builds and runs the tier-first QNN flow, followed by the existing legacy QNN catch-all path.
CI scope
QnnUnit_*/QnnInteg_*, plus the legacy*Qnn*catch-all pathRebase, Accuracy, and Snapshot validation
This branch includes the Phase 3 tier infrastructure from #831 (
160e747423), which enablesQNN_EP_ACCURACY_UTfor internal-symbol builds.The supplied-golden validation (run 36551633453) reused the Linux ARM64 build artifact and passed:
QnnUnit_Clip_AccuracyTest(7),QnnUnit_Clip_Accuracy_QDQFloatTest(5),QnnUnit_Clip_Accuracy_QDQQuantTest(4), andQnnUnit_Clip_Accuracy_FoldedConstTest(2).Clip_int32and all 9 QDQ Accuracy cases run and pass. The remaining 8 float/FP16-path cases are explicit V68 capability skips.QNN_SNAPSHOT_DRIFT; none wereQNN_GOLDEN_ABSENT.The supplied golden was produced from a different source baseline, so this result validates the drift-to-Accuracy route rather than snapshot equality. A Linux ARM64 golden generated from the matching source/config is required before the 18 snapshot comparisons can be expected to match exactly.
Linux ARM64 coverage
onnxruntime_provider_testwith the QNN EP and enables internal symbol access only in this test mode.QnnInteg_OrtApiTestcases run and pass. Conv and ConvTranspose use their existing float path on non-ARM64 and a V68-compatible U8 QDQ path on Linux ARM64.