Skip to content

P1-EP-QNN-ADRENO: QNN Adreno (GPU) — Enablement #148

Description

@DingmaomaoBJTU

Summary

Enable the QNN Adreno GPU backend as a new execution provider in ModelKit, collecting op coverage data and implementing the device preset.

Context

QNN supports both the Hexagon HTP (NPU) and Adreno GPU backends. The Adreno backend targets mobile/edge GPU inference and extends ModelKit's Qualcomm coverage beyond NPU-only. This is a new EP target for the May 1 delivery.

From plans/release/0501_release_plan/P0_CHECKLIST.md (P1-EP-004).

Current State

Desired State

  • QNN Adreno GPU backend enabled via wmk build --device adreno
  • Op coverage data collected for Adreno backend (distinct from HTP)
  • Device preset configured for Adreno GPU backend selection

Acceptance Criteria

  • QNN Adreno GPU backend selection implemented in EP preset (--device adreno)
  • Adreno GPU op coverage data collected and integrated into EP registry
  • At least 5 P0 built-in models pass E2E pipeline on Adreno GPU
  • Differences between HTP and Adreno op support documented
  • All existing tests pass

Technical Notes

  • QNN SDK backend selection: set backend_path to Adreno GPU library (QnnHtp.dll vs QnnAdreno.dll)
  • Adreno GPU may support subset of HTP ops — collect delta from shared QNN SDK docs
  • Risk: Qualcomm partner SDK access needed to confirm Adreno backend library availability
  • Hardware: Snapdragon device with Adreno GPU (Snapdragon X Elite / Snapdragon 8 Gen series)

Related Files

  • plans/release/0501_release_plan/ep-scale.md — QNN Adreno section (P0.4)
  • plans/release/0501_release_plan/P0_CHECKLIST.md — P1-EP-004
  • Fix unhashable cache key error. #365 — QNN HTP op coverage (reference)

Metadata

Metadata

Labels

EP scaleEP scale work itemGPUGPU specificNPUNPU specific

Type

No fields configured for Task.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions