You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Hexagon][QNN] Improve performance wo QNN canonicalization (#13734)
This commit improves performance of different models tuned with
MetaScheduler for Hexagon target and without QNN canonicalization.
Benchmarking of several models on Snapdragon 8gen1 and tuned with MS:
shape | QNN canon enabled, ms | QNN canon disabled, ms | speedup |
-----------------|-----------------------|------------------------|-------------|
ResNet, int8 | 50 | 48 | +4.2% |
Inception, int8 | 103 | 106 | -2.8% |
SRGAN, int8 | 348 | 431 | -19.3% |
--------------------------------------------------------------------------------|
What was done:
1) Added 2 new passes: QnnLegalize and QnnCanonicalize. But this is just
wrappers for Legalize("FTVMQnnLegalize") and
Legalize("FTVMQnnCanonicalize").
2) Added ability to disable inline for specific blocks in MetaSchedule
AutoInline rule. For example, it can be done through the
T.block_attr({"meta_schedule.inline_rule": "disable"}).
3) Implemented compute, alter op and legalization functions for
qnn.conv2d operation (for Hexagon target).
0 commit comments