Skip to content

QNN EP: Add MaxPool and AveragePool tier-based tests - #879

Draft
yuhuchua-qti wants to merge 3 commits into
mainfrom
dev/yuhuchua/qnn-maxpool-tier-migration
Draft

yuhuchua-qti wants to merge 3 commits into
mainfrom
dev/yuhuchua/qnn-maxpool-tier-migration

Conversation

@yuhuchua-qti

@yuhuchua-qti yuhuchua-qti commented Sep 29, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Migrate enabled QNN HTP MaxPool legacy coverage to tier-based tests with a 1:1 mapping.
  • Add paired session-snapshot and accuracy coverage for 14 HTP AveragePool-family cases: 12 AveragePool and 2 GlobalAveragePool.
  • Generate and review 14 AveragePool-family session snapshot goldens locally; generated JSON goldens are intentionally not included in this PR.
  • Preserve all legacy integration tests. CPU and GPU legacy cases remain unchanged; this PR neither disables legacy tests nor relocates GPU coverage.

Test Structure

  • Pool is layout-sensitive, so the operator coverage uses session snapshots plus paired accuracy tests.
  • averagepool_specs.h provides shared specs that distinguish AveragePool and GlobalAveragePool through op_type.
  • Shared support-boundary contracts live in pool_op_builder_test.cc: invalid auto_pad, non-unit dilations, rank-2 inputs, and multiple outputs.
  • maxpool_test.cc retains the MaxPool-specific HTP rank-5 rejection.
  • The shared component checks are supplemental; they are not replacements for legacy integration mappings.

Validation

  • python qcom/build_and_test.py lint --target-py-version 3.12
  • python qcom/build_and_test.py test --target-py-version 3.12
  • Focused PoolOpBuilder and MaxPool component tests: 5/5 passed.
  • AveragePool snapshots: 14/14 passed; forced accuracy: 14/14 passed.
  • Linux coverage for pool_op_builder.cc: 100% line coverage and 52.64% branch coverage.

Follow-up

  • No enabled HTP legacy ceil_mode case is currently mapped for AveragePool; retain it as a session-level follow-up.

@yuhuchua-qti
yuhuchua-qti force-pushed the dev/yuhuchua/qnn-maxpool-tier-migration branch from 981ce86 to 6d3c2fc Compare September 30, 2026 01:56
@yuhuchua-qti yuhuchua-qti changed the title [QNN EP] Migrate MaxPool to tier-based tests QNN EP: Add Pool operator tier-based tests Oct 1, 2026
@yuhuchua-qti
yuhuchua-qti force-pushed the dev/yuhuchua/qnn-maxpool-tier-migration branch from d75890d to 9024f90 Compare October 1, 2026 09:53
@yuhuchua-qti yuhuchua-qti changed the title QNN EP: Add Pool operator tier-based tests QNN EP: Add MaxPool and AveragePool tier-based tests Oct 1, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant