DenseNet-121: Optimized for Qualcomm Devices

Densenet 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 DenseNet-121 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
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 DenseNet-121 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 DenseNet-121 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: 7.99M
  • Model size (float): 30.5 MB
  • Model size (w8a16): 8.72 MB
  • Model size (w8a8): 8.30 MB

Performance Summary

Model Runtime Precision Chipset Inference Time (ms) Peak Memory Range (MB) Primary Compute Unit
DenseNet-121 ONNX float Snapdragon® 8 Elite Gen 5 Mobile 0.682 ms 0 - 46 MB NPU
DenseNet-121 ONNX float Snapdragon® X2 Elite 0.743 ms 16 - 16 MB NPU
DenseNet-121 ONNX float Snapdragon® X Elite 1.733 ms 15 - 15 MB NPU
DenseNet-121 ONNX float Snapdragon® 8 Gen 3 Mobile 1.071 ms 0 - 93 MB NPU
DenseNet-121 ONNX float Qualcomm® QCS8550 (Proxy) 1.524 ms 0 - 26 MB NPU
DenseNet-121 ONNX float Qualcomm® QCS9075 2.611 ms 1 - 3 MB NPU
DenseNet-121 ONNX float Snapdragon® 8 Elite For Galaxy Mobile 0.784 ms 0 - 46 MB NPU
DenseNet-121 ONNX w8a16 Snapdragon® 8 Elite Gen 5 Mobile 1.117 ms 0 - 79 MB NPU
DenseNet-121 ONNX w8a16 Snapdragon® X2 Elite 1.236 ms 27 - 27 MB NPU
DenseNet-121 ONNX w8a16 Snapdragon® X Elite 2.579 ms 25 - 25 MB NPU
DenseNet-121 ONNX w8a16 Snapdragon® 8 Gen 3 Mobile 1.719 ms 0 - 106 MB NPU
DenseNet-121 ONNX w8a16 Qualcomm® QCS6490 244.564 ms 32 - 35 MB CPU
DenseNet-121 ONNX w8a16 Qualcomm® QCS8550 (Proxy) 2.342 ms 0 - 34 MB NPU
DenseNet-121 ONNX w8a16 Qualcomm® QCS9075 2.928 ms 0 - 3 MB NPU
DenseNet-121 ONNX w8a16 Qualcomm® QCM6690 114.861 ms 22 - 32 MB CPU
DenseNet-121 ONNX w8a16 Snapdragon® 8 Elite For Galaxy Mobile 1.325 ms 0 - 77 MB NPU
DenseNet-121 ONNX w8a16 Snapdragon® 7 Gen 4 Mobile 103.712 ms 30 - 42 MB CPU
DenseNet-121 QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 0.708 ms 1 - 43 MB NPU
DenseNet-121 QNN_DLC float Snapdragon® X2 Elite 0.94 ms 1 - 1 MB NPU
DenseNet-121 QNN_DLC float Snapdragon® X Elite 2.041 ms 1 - 1 MB NPU
DenseNet-121 QNN_DLC float Snapdragon® 8 Gen 3 Mobile 1.198 ms 0 - 79 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® QCS8275 (Proxy) 7.766 ms 1 - 39 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® QCS8550 (Proxy) 1.795 ms 1 - 2 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® SA8775P 2.694 ms 1 - 43 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® QCS9075 2.768 ms 3 - 5 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® QCS8450 (Proxy) 3.283 ms 0 - 77 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® SA7255P 7.766 ms 1 - 39 MB NPU
DenseNet-121 QNN_DLC float Qualcomm® SA8295P 3.046 ms 0 - 36 MB NPU
DenseNet-121 QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 0.865 ms 1 - 43 MB NPU
DenseNet-121 QNN_DLC w8a16 Snapdragon® 8 Elite Gen 5 Mobile 1.215 ms 0 - 72 MB NPU
DenseNet-121 QNN_DLC w8a16 Snapdragon® X2 Elite 1.571 ms 0 - 0 MB NPU
DenseNet-121 QNN_DLC w8a16 Snapdragon® X Elite 3.445 ms 0 - 0 MB NPU
DenseNet-121 QNN_DLC w8a16 Snapdragon® 8 Gen 3 Mobile 2.147 ms 0 - 88 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® QCS8275 (Proxy) 6.274 ms 0 - 62 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® QCS8550 (Proxy) 3.126 ms 0 - 2 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® SA8775P 3.498 ms 0 - 65 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® QCS9075 3.41 ms 2 - 4 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® QCS8450 (Proxy) 5.009 ms 0 - 86 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® SA7255P 6.274 ms 0 - 62 MB NPU
DenseNet-121 QNN_DLC w8a16 Qualcomm® SA8295P 5.599 ms 0 - 60 MB NPU
DenseNet-121 QNN_DLC w8a16 Snapdragon® 8 Elite For Galaxy Mobile 1.76 ms 0 - 60 MB NPU
DenseNet-121 QNN_DLC w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.901 ms 0 - 65 MB NPU
DenseNet-121 QNN_DLC w8a8 Snapdragon® X2 Elite 1.151 ms 0 - 0 MB NPU
DenseNet-121 QNN_DLC w8a8 Snapdragon® X Elite 2.639 ms 0 - 0 MB NPU
DenseNet-121 QNN_DLC w8a8 Snapdragon® 8 Gen 3 Mobile 1.695 ms 0 - 77 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® QCS8275 (Proxy) 4.915 ms 0 - 57 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® QCS8550 (Proxy) 2.376 ms 0 - 2 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® SA8775P 2.694 ms 0 - 60 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® QCS9075 2.573 ms 2 - 4 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® QCS8450 (Proxy) 2.955 ms 0 - 80 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® SA7255P 4.915 ms 0 - 57 MB NPU
DenseNet-121 QNN_DLC w8a8 Qualcomm® SA8295P 3.464 ms 0 - 55 MB NPU
DenseNet-121 QNN_DLC w8a8 Snapdragon® 8 Elite For Galaxy Mobile 1.051 ms 0 - 59 MB NPU
DenseNet-121 TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 0.708 ms 0 - 59 MB NPU
DenseNet-121 TFLITE float Snapdragon® 8 Gen 3 Mobile 1.199 ms 0 - 97 MB NPU
DenseNet-121 TFLITE float Qualcomm® QCS8275 (Proxy) 7.75 ms 0 - 55 MB NPU
DenseNet-121 TFLITE float Qualcomm® QCS8550 (Proxy) 1.794 ms 0 - 6 MB NPU
DenseNet-121 TFLITE float Qualcomm® SA8775P 2.715 ms 0 - 57 MB NPU
DenseNet-121 TFLITE float Qualcomm® QCS9075 2.831 ms 0 - 18 MB NPU
DenseNet-121 TFLITE float Qualcomm® QCS8450 (Proxy) 3.292 ms 0 - 92 MB NPU
DenseNet-121 TFLITE float Qualcomm® SA7255P 7.75 ms 0 - 55 MB NPU
DenseNet-121 TFLITE float Qualcomm® SA8295P 3.055 ms 0 - 53 MB NPU
DenseNet-121 TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 0.857 ms 0 - 60 MB NPU
DenseNet-121 TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.858 ms 0 - 65 MB NPU
DenseNet-121 TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 1.583 ms 0 - 79 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® QCS6490 62.588 ms 6 - 33 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® QCS8275 (Proxy) 4.572 ms 0 - 58 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® QCS8550 (Proxy) 2.231 ms 0 - 3 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® SA8775P 2.585 ms 0 - 60 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® QCS9075 2.428 ms 0 - 11 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® QCS8450 (Proxy) 2.646 ms 0 - 81 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® SA7255P 4.572 ms 0 - 58 MB NPU
DenseNet-121 TFLITE w8a8 Qualcomm® SA8295P 3.311 ms 0 - 57 MB NPU
DenseNet-121 TFLITE w8a8 Snapdragon® 8 Elite For Galaxy Mobile 1.005 ms 0 - 56 MB NPU
DenseNet-121 TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 26.662 ms 6 - 171 MB NPU

License

  • The license for the original implementation of DenseNet-121 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/DenseNet-121