Skip to content

Commit ea0c612

Browse files
authored
QNN Backend: Add SM8350 Support (#15867)
### Summary Add support for Qualcomm Snapdragon 888 (SM8350) chipset to the QNN backend. This PR adds SM8350 to the list of supported Qualcomm SoCs for ExecuTorch's Qualcomm AI Engine Direct backend. The SM8350 uses HTP Architecture V68 with 4 cores, similar to the SA8295 but with fewer cores. - Added SM8350 = 35 to the QcomChipset enum in both FlatBuffer schema and Python definitions - Registered SM8350 with HTP V68 architecture and 4 cores in the SoC info table - Added SM8350 to the SoC-to-architecture and SoC-to-chipset mapping functions This enables users to compile and deploy ExecuTorch models on devices with Snapdragon 888 chipsets. ### Test plan Manually tested model compilation and execution on SM8350 device: ` python -m examples.qualcomm.scripts.deeplab_v3 -b build-android -m SM8350 --compile_only --ci ` The model compiled successfully and generated a valid .pte file for SM8350 target. Tested on: - Device: SM8350 (Snapdragon 888) - Model: DeepLabV3 ResNet101 - Quantization: INT8 (8a8w) - Build: Android (build-android)
1 parent 529a265 commit ea0c612

File tree

3 files changed

+5
-0
lines changed

3 files changed

+5
-0
lines changed

backends/qualcomm/serialization/qc_compiler_spec.fbs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ table HtpInfo {
3434
enum QcomChipset: int {
3535
UNKNOWN_SM = 0,
3636
SA8295 = 39,
37+
SM8350 = 35,
3738
SM8450 = 36,
3839
SM8475 = 42,
3940
SM8550 = 43,

backends/qualcomm/serialization/qc_schema.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ class HtpInfo:
4040
class QcomChipset(IntEnum):
4141
UNKNOWN_SM = 0
4242
SA8295 = 39 # v68
43+
SM8350 = 35 # v68
4344
SM8450 = 36 # v69
4445
SM8475 = 42 # v69
4546
SM8550 = 43 # v73
@@ -63,6 +64,7 @@ class SocInfo:
6364

6465
_soc_info_table = {
6566
QcomChipset.SA8295: SocInfo(QcomChipset.SA8295, HtpInfo(HtpArch.V68, 8)),
67+
QcomChipset.SM8350: SocInfo(QcomChipset.SM8350, HtpInfo(HtpArch.V68, 4)),
6668
QcomChipset.SM8450: SocInfo(QcomChipset.SM8450, HtpInfo(HtpArch.V69, 8)),
6769
QcomChipset.SM8475: SocInfo(QcomChipset.SM8475, HtpInfo(HtpArch.V69, 8)),
6870
QcomChipset.SM8550: SocInfo(QcomChipset.SM8550, HtpInfo(HtpArch.V73, 8)),

backends/qualcomm/utils/utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1090,6 +1090,7 @@ def generate_qnn_executorch_compiler_spec(
10901090
def get_soc_to_arch_map():
10911091
return {
10921092
"SA8295": HtpArch.V68,
1093+
"SM8350": HtpArch.V68,
10931094
"SM8450": HtpArch.V69,
10941095
"SM8475": HtpArch.V69,
10951096
"SM8550": HtpArch.V73,
@@ -1109,6 +1110,7 @@ def get_soc_to_arch_map():
11091110
def get_soc_to_chipset_map():
11101111
return {
11111112
"SA8295": QcomChipset.SA8295,
1113+
"SM8350": QcomChipset.SM8350,
11121114
"SM8450": QcomChipset.SM8450,
11131115
"SM8475": QcomChipset.SM8475,
11141116
"SM8550": QcomChipset.SM8550,

0 commit comments

Comments
 (0)