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® X Elite 11.17 ms 170 - 170 MB NPU
VIT ONNX float Snapdragon® 8 Gen 3 Mobile 7.17 ms 0 - 379 MB NPU
VIT ONNX float Qualcomm® QCS8550 (Proxy) 10.473 ms 0 - 195 MB NPU
VIT ONNX float Qualcomm® QCS9075 14.319 ms 0 - 4 MB NPU
VIT ONNX float Snapdragon® 8 Elite For Galaxy Mobile 4.984 ms 0 - 347 MB NPU
VIT ONNX float Snapdragon® 8 Elite Gen 5 Mobile 3.665 ms 1 - 355 MB NPU
VIT ONNX float Snapdragon® X2 Elite 3.869 ms 170 - 170 MB NPU
VIT ONNX w8a16 Snapdragon® X Elite 11.274 ms 86 - 86 MB NPU
VIT ONNX w8a16 Snapdragon® 8 Gen 3 Mobile 7.368 ms 0 - 377 MB NPU
VIT ONNX w8a16 Qualcomm® QCS6490 1117.365 ms 39 - 56 MB CPU
VIT ONNX w8a16 Qualcomm® QCS8550 (Proxy) 10.702 ms 0 - 6 MB NPU
VIT ONNX w8a16 Qualcomm® QCS9075 13.211 ms 0 - 3 MB NPU
VIT ONNX w8a16 Qualcomm® QCM6690 620.244 ms 68 - 84 MB CPU
VIT ONNX w8a16 Snapdragon® 8 Elite For Galaxy Mobile 5.297 ms 0 - 301 MB NPU
VIT ONNX w8a16 Snapdragon® 7 Gen 4 Mobile 593.006 ms 61 - 77 MB CPU
VIT ONNX w8a16 Snapdragon® 8 Elite Gen 5 Mobile 3.799 ms 0 - 304 MB NPU
VIT ONNX w8a16 Snapdragon® X2 Elite 3.896 ms 86 - 86 MB NPU
VIT ONNX w8a8 Snapdragon® X Elite 13.615 ms 85 - 85 MB NPU
VIT ONNX w8a8 Snapdragon® 8 Gen 3 Mobile 8.822 ms 0 - 469 MB NPU
VIT ONNX w8a8 Qualcomm® QCS6490 332.509 ms 20 - 69 MB CPU
VIT ONNX w8a8 Qualcomm® QCS8550 (Proxy) 12.949 ms 0 - 108 MB NPU
VIT ONNX w8a8 Qualcomm® QCS9075 13.705 ms 0 - 3 MB NPU
VIT ONNX w8a8 Qualcomm® QCM6690 135.965 ms 22 - 43 MB CPU
VIT ONNX w8a8 Snapdragon® 8 Elite For Galaxy Mobile 7.278 ms 0 - 324 MB NPU
VIT ONNX w8a8 Snapdragon® 7 Gen 4 Mobile 129.433 ms 13 - 34 MB CPU
VIT ONNX w8a8 Snapdragon® 8 Elite Gen 5 Mobile 4.584 ms 0 - 350 MB NPU
VIT ONNX w8a8 Snapdragon® X2 Elite 5.104 ms 85 - 85 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® X Elite 178.34 ms 79 - 79 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 8 Gen 3 Mobile 83.083 ms 67 - 435 MB NPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCS6490 711.851 ms 96 - 126 MB CPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCS8550 (Proxy) 99.555 ms 0 - 84 MB NPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCS9075 130.215 ms 68 - 71 MB NPU
VIT ONNX w8a8_mixed_int16 Qualcomm® QCM6690 386.713 ms 99 - 119 MB CPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 8 Elite For Galaxy Mobile 72.628 ms 68 - 339 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 7 Gen 4 Mobile 372.159 ms 43 - 63 MB CPU
VIT ONNX w8a8_mixed_int16 Snapdragon® 8 Elite Gen 5 Mobile 63.104 ms 0 - 268 MB NPU
VIT ONNX w8a8_mixed_int16 Snapdragon® X2 Elite 53.294 ms 79 - 79 MB NPU
VIT QNN_DLC float Snapdragon® X Elite 11.844 ms 1 - 1 MB NPU
VIT QNN_DLC float Snapdragon® 8 Gen 3 Mobile 7.724 ms 0 - 371 MB NPU
VIT QNN_DLC float Qualcomm® QCS8275 (Proxy) 40.618 ms 1 - 339 MB NPU
VIT QNN_DLC float Qualcomm® QCS8550 (Proxy) 11.199 ms 1 - 3 MB NPU
VIT QNN_DLC float Qualcomm® SA8775P 13.884 ms 1 - 339 MB NPU
VIT QNN_DLC float Qualcomm® QCS9075 15.555 ms 1 - 3 MB NPU
VIT QNN_DLC float Qualcomm® QCS8450 (Proxy) 19.128 ms 0 - 348 MB NPU
VIT QNN_DLC float Qualcomm® SA7255P 40.618 ms 1 - 339 MB NPU
VIT QNN_DLC float Qualcomm® SA8295P 17.176 ms 1 - 332 MB NPU
VIT QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 5.287 ms 1 - 339 MB NPU
VIT QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 4.051 ms 1 - 346 MB NPU
VIT QNN_DLC float Snapdragon® X2 Elite 4.466 ms 1 - 1 MB NPU
VIT TFLITE float Snapdragon® 8 Gen 3 Mobile 5.878 ms 0 - 324 MB NPU
VIT TFLITE float Qualcomm® QCS8275 (Proxy) 35.879 ms 0 - 288 MB NPU
VIT TFLITE float Qualcomm® QCS8550 (Proxy) 8.023 ms 0 - 3 MB NPU
VIT TFLITE float Qualcomm® SA8775P 11.125 ms 0 - 288 MB NPU
VIT TFLITE float Qualcomm® QCS9075 11.565 ms 0 - 174 MB NPU
VIT TFLITE float Qualcomm® QCS8450 (Proxy) 13.831 ms 0 - 291 MB NPU
VIT TFLITE float Qualcomm® SA7255P 35.879 ms 0 - 288 MB NPU
VIT TFLITE float Qualcomm® SA8295P 13.322 ms 0 - 261 MB NPU
VIT TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 3.959 ms 0 - 293 MB NPU
VIT TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 3.091 ms 0 - 278 MB NPU
VIT TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 4.742 ms 0 - 184 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS6490 60.229 ms 1 - 99 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS8275 (Proxy) 14.331 ms 0 - 85 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS8550 (Proxy) 6.781 ms 0 - 3 MB NPU
VIT TFLITE w8a8 Qualcomm® SA8775P 7.06 ms 0 - 86 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS9075 7.563 ms 0 - 89 MB NPU
VIT TFLITE w8a8 Qualcomm® QCM6690 96.938 ms 2 - 185 MB NPU
VIT TFLITE w8a8 Qualcomm® QCS8450 (Proxy) 8.769 ms 0 - 180 MB NPU
VIT TFLITE w8a8 Qualcomm® SA7255P 14.331 ms 0 - 85 MB NPU
VIT TFLITE w8a8 Qualcomm® SA8295P 9.674 ms 0 - 89 MB NPU
VIT TFLITE w8a8 Snapdragon® 8 Elite For Galaxy Mobile 3.364 ms 0 - 85 MB NPU
VIT TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 20.391 ms 1 - 74 MB NPU
VIT TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 2.293 ms 0 - 89 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