ResNet-2Plus1D: Optimized for Qualcomm Devices
ResNet (2+1)D Convolutions is a network which explicitly factorizes 3D convolution into two separate and successive operations, a 2D spatial convolution and a 1D temporal convolution. It used for video understanding applications.
This is based on the implementation of ResNet-2Plus1D 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.45, ONNX Runtime 1.25.0 | Download |
| ONNX | w8a8 | Universal | QAIRT 2.45, ONNX Runtime 1.25.0 | Download |
| QNN_DLC | float | Universal | QAIRT 2.45 | Download |
| QNN_DLC | w8a8 | Universal | QAIRT 2.45 | Download |
| TFLITE | float | Universal | QAIRT 2.45 | Download |
| TFLITE | w8a8 | Universal | QAIRT 2.45 | Download |
For more device-specific assets and performance metrics, visit ResNet-2Plus1D 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 ResNet-2Plus1D on GitHub for usage instructions.
Model Details
Model Type: Model_use_case.video_classification
Model Stats:
- Model checkpoint: Kinetics-400
- Input resolution: 112x112
- Number of parameters: 31.5M
- Model size (float): 120 MB
- Model size (w8a8): 30.8 MB
Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit |
|---|---|---|---|---|---|---|
| ResNet-2Plus1D | ONNX | float | Snapdragon® X2 Elite | 33.884 ms | 201 - 201 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Snapdragon® X Elite | 66.954 ms | 170 - 170 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 52.837 ms | 12 - 762 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Snapdragon® 8 Gen 1 Mobile | 142.655 ms | 12 - 590 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Qualcomm® QCS8550 (Proxy) | 66.916 ms | 12 - 15 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Qualcomm® QCS8450 | 142.655 ms | 12 - 590 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Snapdragon® 8 Elite Mobile | 41.99 ms | 1 - 547 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 31.83 ms | 1 - 563 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Qualcomm® QCS9075 | 110.635 ms | 11 - 68 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Qualcomm® QCS8750 | 41.99 ms | 1 - 547 MB | NPU |
| ResNet-2Plus1D | ONNX | float | Qualcomm® QCS7181 | 66.954 ms | 170 - 170 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® X2 Elite | 11.915 ms | 210 - 210 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® X Elite | 25.073 ms | 179 - 179 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 19.795 ms | 3 - 458 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® 8 Gen 1 Mobile | 44.175 ms | 3 - 453 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Qualcomm® QCS8550 (Proxy) | 26.116 ms | 0 - 41 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Qualcomm® QCS8450 | 44.175 ms | 3 - 453 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 11.961 ms | 0 - 381 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® 7 Gen 4 Mobile | 41.321 ms | 3 - 383 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Qualcomm® QCS9075 | 23.235 ms | 3 - 48 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Snapdragon® 8 Elite Mobile | 15.452 ms | 2 - 372 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Qualcomm® QCS7790 | 41.321 ms | 3 - 383 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Qualcomm® QCS8750 | 15.452 ms | 2 - 372 MB | NPU |
| ResNet-2Plus1D | ONNX | w8a8 | Qualcomm® QCS7181 | 25.073 ms | 179 - 179 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Snapdragon® X2 Elite | 34.378 ms | 12 - 12 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Snapdragon® X Elite | 66.699 ms | 12 - 12 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 51.825 ms | 12 - 717 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Snapdragon® 8 Gen 1 Mobile | 144.3 ms | 4 - 593 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® QCS8275 | 424.679 ms | 1 - 493 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 67.62 ms | 12 - 15 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® QCS8450 | 144.3 ms | 4 - 593 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Snapdragon® 8 Elite Mobile | 42.075 ms | 0 - 487 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® SA8295P | 118.43 ms | 0 - 398 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 29.487 ms | 12 - 509 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® SA7255P | 424.679 ms | 1 - 493 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® QCS9075 | 112.074 ms | 12 - 25 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® QCS8750 | 42.075 ms | 0 - 487 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | float | Qualcomm® QCS7181 | 66.699 ms | 12 - 12 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 17.43 ms | 3 - 3 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® X Elite | 27.071 ms | 3 - 3 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® 8 Gen 3 Mobile | 21.462 ms | 3 - 468 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® 8 Gen 1 Mobile | 46.364 ms | 3 - 459 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS6490 | 87.877 ms | 5 - 9 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS8275 | 75.133 ms | 2 - 373 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS8550 (Proxy) | 26.852 ms | 3 - 6 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS8450 | 46.364 ms | 3 - 459 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 13.092 ms | 3 - 390 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 46.383 ms | 3 - 387 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS9075 | 23.942 ms | 3 - 7 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® SA7255P | 75.133 ms | 2 - 373 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Snapdragon® 8 Elite Mobile | 16.838 ms | 3 - 374 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCM6690 | 440.107 ms | 3 - 416 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® SA8295P | 41.916 ms | 0 - 367 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS7790 | 46.383 ms | 3 - 387 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS8750 | 16.838 ms | 3 - 374 MB | NPU |
| ResNet-2Plus1D | QNN_DLC | w8a8 | Qualcomm® QCS7181 | 27.071 ms | 3 - 3 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 1485.811 ms | 0 - 795 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Snapdragon® 8 Gen 1 Mobile | 2368.426 ms | 0 - 737 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® QCS8275 | 3630.664 ms | 1 - 581 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 1929.978 ms | 1 - 3 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® SA8775P | 3776.585 ms | 1392 - 1408 MB | CPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® SA8650P | 3776.585 ms | 1392 - 1408 MB | CPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® SA8255P | 3776.585 ms | 1392 - 1408 MB | CPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® QCS8450 | 2368.426 ms | 0 - 737 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Snapdragon® 8 Elite Mobile | 1347.963 ms | 0 - 572 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® SA8295P | 2463.021 ms | 1 - 540 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 1272.998 ms | 0 - 574 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® SA7255P | 3630.664 ms | 1 - 581 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® QCS9075 | 2052.77 ms | 0 - 81 MB | NPU |
| ResNet-2Plus1D | TFLITE | float | Qualcomm® QCS8750 | 1347.963 ms | 0 - 572 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 3088.485 ms | 3 - 1623 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Snapdragon® 8 Gen 1 Mobile | 4835.403 ms | 3 - 1340 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS6490 | 8632.096 ms | 1404 - 2196 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS8275 | 8124.22 ms | 3 - 1383 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 4138.462 ms | 1 - 5 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® SA8775P | 5023.53 ms | 1404 - 1419 MB | CPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® SA8650P | 5023.53 ms | 1404 - 1419 MB | CPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® SA8255P | 5023.53 ms | 1404 - 1419 MB | CPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS8450 | 4835.403 ms | 3 - 1340 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 3458.276 ms | 0 - 1452 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 6137.62 ms | 1363 - 1743 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS9075 | 2951.101 ms | 0 - 74 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® SA7255P | 8124.22 ms | 3 - 1383 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Snapdragon® 8 Elite Mobile | 2824.849 ms | 1 - 1677 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® SA8295P | 4661.786 ms | 2 - 1091 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS7790 | 6137.62 ms | 1363 - 1743 MB | NPU |
| ResNet-2Plus1D | TFLITE | w8a8 | Qualcomm® QCS8750 | 2824.849 ms | 1 - 1677 MB | NPU |
License
- The license for the original implementation of ResNet-2Plus1D can be found here.
References
Community
- Join our AI Hub Slack community to collaborate, post questions and learn more about on-device AI.
- For questions or feedback please reach out to us.
