VIT: Optimized for Qualcomm Devices

VIT is a machine learning model that can classify images from the Imagenet dataset. It can also be used as a backbone in building more complex models for specific use cases.

This is based on the implementation of VIT found here. This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the Qualcomm® AI Hub Models library to export with custom configurations. More details on model performance across various devices, can be found here.

Qualcomm AI Hub Models uses Qualcomm AI Hub Workbench to compile, profile, and evaluate this model. Sign up to run these models on a hosted Qualcomm® device.

Getting Started

There are two ways to deploy this model on your device:

Option 1: Download Pre-Exported Models

Below are pre-exported model assets ready for deployment.

Runtime Precision Chipset SDK Versions Download
ONNX float Universal QAIRT 2.42, ONNX Runtime 1.24.1 Download
ONNX w8a16 Universal QAIRT 2.42, ONNX Runtime 1.24.1 Download
ONNX w8a8 Universal QAIRT 2.42, ONNX Runtime 1.24.1 Download
ONNX w8a8_mixed_int16 Universal QAIRT 2.42, ONNX Runtime 1.24.1 Download
QNN_DLC float Universal QAIRT 2.43 Download
QNN_DLC w8a16 Universal QAIRT 2.43 Download
QNN_DLC w8a8 Universal QAIRT 2.43 Download
TFLITE float Universal QAIRT 2.43, TFLite 2.17.0 Download
TFLITE w8a8 Universal QAIRT 2.43, TFLite 2.17.0 Download

For more device-specific assets and performance metrics, visit VIT on Qualcomm® AI Hub.

Option 2: Export with Custom Configurations

Use the Qualcomm® AI Hub Models Python library to compile and export the model with your own:

  • Custom weights (e.g., fine-tuned checkpoints)
  • Custom input shapes
  • Target device and runtime configurations

This option is ideal if you need to customize the model beyond the default configuration provided here.

See our repository for VIT on GitHub for usage instructions.

Model Details

Model Type: Model_use_case.image_classification

Model Stats:

  • Model checkpoint: Imagenet
  • Input resolution: 224x224
  • Number of parameters: 86.6M
  • Model size (float): 330 MB
  • Model size (w8a16): 86.2 MB
  • Model size (w8a8): 83.2 MB

Performance Summary

Model Runtime Precision Chipset Inference Time (ms) Peak Memory Range (MB) Primary Compute Unit
VIT ONNX float Snapdragon® X2 Elite 3.862 ms 170 - 170 MB NPU
VIT ONNX float Snapdragon® X Elite 11.125 ms 170 - 170 MB NPU
VIT ONNX float Snapdragon® 8 Gen 3 Mobile 7.176 ms 0 - 379 MB NPU
VIT ONNX float Qualcomm® QCS8550 (Proxy) 10.443 ms 0 - 198 MB NPU
VIT ONNX float Qualcomm® QCS9075 14.381 ms 1 - 4 MB NPU
VIT ONNX float Snapdragon® 8 Elite For Galaxy Mobile 5.0 ms 0 - 347 MB NPU
VIT ONNX float Snapdragon® 8 Elite Gen 5 Mobile 3.655 ms 1 - 356 MB NPU
VIT ONNX w8a16 Snapdragon® X2 Elite 3.889 ms 86 - 86 MB NPU
VIT ONNX w8a16 Snapdragon® X Elite 11.271 ms 86 - 86 MB NPU
VIT ONNX w8a16 Snapdragon® 8 Gen 3 Mobile 7.346 ms 0 - 375 MB NPU
VIT ONNX w8a16 Qualcomm® QCS6490 1121.601 ms 43 - 59 MB CPU
VIT ONNX w8a16 Qualcomm® QCS8550 (Proxy) 10.685 ms 0 - 5 MB NPU
VIT ONNX w8a16 Qualcomm® QCS9075 13.06 ms 0 - 3 MB NPU
VIT ONNX w8a16 Qualcomm® QCM6690 619.324 ms 68 - 83 MB CPU
VIT ONNX w8a16 Snapdragon® 8 Elite For Galaxy Mobile 5.263 ms 0 - 295 MB NPU
VIT ONNX w8a16 Snapdragon® 7 Gen 4 Mobile 595.167 ms 85 - 103 MB CPU
VIT ONNX w8a16 Snapdragon® 8 Elite Gen 5 Mobile 3.798 ms 0 - 303 MB NPU
VIT ONNX w8a8 Snapdragon® X2 Elite 5.096 ms 85 - 85 MB NPU
VIT ONNX w8a8 Snapdragon® X Elite 13.639 ms 85 - 85 MB NPU
VIT ONNX w8a8 Snapdragon® 8 Gen 3 Mobile 8.828 ms 0 - 464 MB NPU
VIT ONNX w8a8 Qualcomm® QCS6490 312.895 ms 20 - 60 MB CPU
VIT ONNX w8a8 Qualcomm® QCS8550 (Proxy) 12.938 ms 0 - 107 MB NPU
VIT ONNX w8a8 Qualcomm® QCS9075 13.258 ms 0 - 3 MB NPU
VIT ONNX w8a8 Qualcomm® QCM6690 134.641 ms 13 - 31 MB CPU
VIT ONNX w8a8 Snapdragon® 8 Elite For Galaxy Mobile 7.25 ms 0 - 321 MB NPU
VIT ONNX w8a8 Snapdragon® 7 Gen 4 Mobile 129.747 ms 12 - 33 MB CPU
VIT ONNX w8a8 Snapdragon® 8 Elite Gen 5 Mobile 4.584 ms 0 - 350 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® X2 Elite 55.106 ms 79 - 79 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® X Elite 203.253 ms 79 - 79 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 8 Gen 3 Mobile 82.072 ms 69 - 445 MB NPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCS6490 720.944 ms 96 - 124 MB CPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCS8550 (Proxy) 105.062 ms 10 - 95 MB NPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCS9075 131.1 ms 68 - 71 MB NPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCM6690 389.169 ms 44 - 63 MB CPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 8 Elite For Galaxy Mobile 73.051 ms 68 - 338 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 7 Gen 4 Mobile 372.237 ms 92 - 114 MB CPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 8 Elite Gen 5 Mobile 62.988 ms 0 - 268 MB NPU
VIT QNN_DLC float Snapdragon® X2 Elite 4.494 ms 1 - 1 MB NPU
VIT QNN_DLC float Snapdragon® X Elite 11.849 ms 1 - 1 MB NPU
VIT QNN_DLC float Snapdragon® 8 Gen 3 Mobile 7.714 ms 1 - 371 MB NPU
VIT QNN_DLC float Qualcomm® QCS8275 (Proxy) 40.621 ms 1 - 340 MB NPU
VIT QNN_DLC float Qualcomm® QCS8550 (Proxy) 11.137 ms 1 - 3 MB NPU
VIT QNN_DLC float Qualcomm® SA8775P 13.894 ms 1 - 339 MB NPU
VIT QNN_DLC float Qualcomm® QCS9075 15.323 ms 1 - 3 MB NPU
VIT QNN_DLC float Qualcomm® QCS8450 (Proxy) 19.175 ms 0 - 351 MB NPU
VIT QNN_DLC float Qualcomm® SA7255P 40.621 ms 1 - 340 MB NPU
VIT QNN_DLC float Qualcomm® SA8295P 17.18 ms 1 - 333 MB NPU
VIT QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 5.303 ms 1 - 339 MB NPU
VIT QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 4.048 ms 0 - 345 MB NPU
VIT TFLITE float Snapdragon® 8 Gen 3 Mobile 5.872 ms 0 - 319 MB NPU
VIT TFLITE float Qualcomm® QCS8275 (Proxy) 35.901 ms 0 - 288 MB NPU
VIT TFLITE float Qualcomm® QCS8550 (Proxy) 8.009 ms 0 - 3 MB NPU
VIT TFLITE float Qualcomm® SA8775P 11.166 ms 0 - 288 MB NPU
VIT TFLITE float Qualcomm® QCS9075 11.738 ms 0 - 174 MB NPU
VIT TFLITE float Qualcomm® QCS8450 (Proxy) 13.889 ms 0 - 291 MB NPU
VIT TFLITE float Qualcomm® SA7255P 35.901 ms 0 - 288 MB NPU
VIT TFLITE float Qualcomm® SA8295P 13.347 ms 0 - 261 MB NPU
VIT TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 3.933 ms 0 - 288 MB NPU
VIT TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 3.092 ms 0 - 279 MB NPU
VIT TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 4.722 ms 0 - 185 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS6490 66.292 ms 1 - 99 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS8275 (Proxy) 14.352 ms 0 - 85 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS8550 (Proxy) 6.76 ms 0 - 3 MB NPU
VIT TFLITE w8a8 Qualcomm® SA8775P 7.083 ms 0 - 86 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS9075 7.561 ms 0 - 89 MB NPU
VIT TFLITE w8a8 Qualcomm® QCM6690 97.501 ms 2 - 185 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS8450 (Proxy) 8.757 ms 0 - 180 MB NPU
VIT TFLITE w8a8 Qualcomm® SA7255P 14.352 ms 0 - 85 MB NPU
VIT TFLITE w8a8 Qualcomm® SA8295P 9.687 ms 0 - 89 MB NPU
VIT TFLITE w8a8 Snapdragon® 8 Elite For Galaxy Mobile 3.365 ms 0 - 86 MB NPU
VIT TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 20.163 ms 2 - 75 MB NPU
VIT TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 2.29 ms 0 - 90 MB NPU

License

  • The license for the original implementation of VIT can be found here.

References

Community

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Paper for qualcomm/VIT