v0.32.0
Browse filesSee https://github.com/quic/ai-hub-models/releases/v0.32.0 for changelog.
LICENSE
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
The license of the original trained model can be found at https://github.com/CompVis/stable-diffusion/blob/main/LICENSE.
|
| 2 |
+
The license for the deployable model files (.tflite, .onnx, .dlc, .bin, etc.) can be found at https://github.com/CompVis/stable-diffusion/blob/main/LICENSE.
|
README.md
CHANGED
|
@@ -29,58 +29,54 @@ More details on model performance across various devices, can be found
|
|
| 29 |
- **Model Type:** Model_use_case.image_generation
|
| 30 |
- **Model Stats:**
|
| 31 |
- Input: Text prompt to generate image
|
| 32 |
-
- Text Encoder Number of parameters: 340M
|
| 33 |
-
- UNet Number of parameters: 865M
|
| 34 |
-
- VAE Decoder Number of parameters: 83M
|
| 35 |
-
- Model size: 1GB
|
| 36 |
|
| 37 |
| Model | Precision | Device | Chipset | Target Runtime | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit | Target Model
|
| 38 |
|---|---|---|---|---|---|---|---|---|
|
| 39 |
-
| text_encoder | w8a16 | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | QNN_CONTEXT_BINARY | 18.
|
| 40 |
-
| text_encoder | w8a16 | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | QNN_CONTEXT_BINARY | 8.
|
| 41 |
-
| text_encoder | w8a16 | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | QNN_CONTEXT_BINARY | 8.
|
| 42 |
-
| text_encoder | w8a16 | SA7255P ADP | Qualcomm® SA7255P | QNN_CONTEXT_BINARY | 18.
|
| 43 |
-
| text_encoder | w8a16 | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_CONTEXT_BINARY | 8.
|
| 44 |
-
| text_encoder | w8a16 | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_CONTEXT_BINARY | 8.
|
| 45 |
-
| text_encoder | w8a16 | SA8775P ADP | Qualcomm® SA8775P | QNN_CONTEXT_BINARY | 8.
|
| 46 |
-
| text_encoder | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | QNN_CONTEXT_BINARY | 8.
|
| 47 |
-
| text_encoder | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | PRECOMPILED_QNN_ONNX | 8.
|
| 48 |
-
| text_encoder | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_CONTEXT_BINARY | 5.
|
| 49 |
-
| text_encoder | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | PRECOMPILED_QNN_ONNX | 5.
|
| 50 |
-
| text_encoder | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | QNN_CONTEXT_BINARY | 5.
|
| 51 |
-
| text_encoder | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | PRECOMPILED_QNN_ONNX | 5.
|
| 52 |
-
| text_encoder | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_CONTEXT_BINARY | 8.
|
| 53 |
-
| text_encoder | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | PRECOMPILED_QNN_ONNX | 8.
|
| 54 |
-
| unet | w8a16 | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | QNN_CONTEXT_BINARY | 232.
|
| 55 |
-
| unet | w8a16 | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | QNN_CONTEXT_BINARY | 93.
|
| 56 |
-
| unet | w8a16 | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | QNN_CONTEXT_BINARY | 87.
|
| 57 |
-
| unet | w8a16 | SA7255P ADP | Qualcomm® SA7255P | QNN_CONTEXT_BINARY | 232.
|
| 58 |
-
| unet | w8a16 | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_CONTEXT_BINARY |
|
| 59 |
-
| unet | w8a16 | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_CONTEXT_BINARY | 94.
|
| 60 |
-
| unet | w8a16 | SA8775P ADP | Qualcomm® SA8775P | QNN_CONTEXT_BINARY | 87.
|
| 61 |
-
| unet | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | QNN_CONTEXT_BINARY | 93.
|
| 62 |
-
| unet | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | PRECOMPILED_QNN_ONNX |
|
| 63 |
-
| unet | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_CONTEXT_BINARY |
|
| 64 |
-
| unet | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | PRECOMPILED_QNN_ONNX | 66.
|
| 65 |
-
| unet | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | QNN_CONTEXT_BINARY | 58.
|
| 66 |
-
| unet | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | PRECOMPILED_QNN_ONNX | 58.
|
| 67 |
-
| unet | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_CONTEXT_BINARY | 95.
|
| 68 |
-
| unet | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | PRECOMPILED_QNN_ONNX | 96.
|
| 69 |
-
| vae | w8a16 | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | QNN_CONTEXT_BINARY | 718.
|
| 70 |
-
| vae | w8a16 | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | QNN_CONTEXT_BINARY |
|
| 71 |
-
| vae | w8a16 | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | QNN_CONTEXT_BINARY | 249.
|
| 72 |
-
| vae | w8a16 | SA7255P ADP | Qualcomm® SA7255P | QNN_CONTEXT_BINARY | 718.
|
| 73 |
-
| vae | w8a16 | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_CONTEXT_BINARY |
|
| 74 |
-
| vae | w8a16 | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_CONTEXT_BINARY |
|
| 75 |
-
| vae | w8a16 | SA8775P ADP | Qualcomm® SA8775P | QNN_CONTEXT_BINARY | 249.
|
| 76 |
-
| vae | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | QNN_CONTEXT_BINARY |
|
| 77 |
-
| vae | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | PRECOMPILED_QNN_ONNX |
|
| 78 |
-
| vae | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_CONTEXT_BINARY |
|
| 79 |
-
| vae | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | PRECOMPILED_QNN_ONNX |
|
| 80 |
-
| vae | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | QNN_CONTEXT_BINARY |
|
| 81 |
-
| vae | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | PRECOMPILED_QNN_ONNX | 194.
|
| 82 |
-
| vae | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_CONTEXT_BINARY | 265.
|
| 83 |
-
| vae | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | PRECOMPILED_QNN_ONNX | 264.
|
| 84 |
|
| 85 |
## Deploy to Snapdragon X Elite NPU
|
| 86 |
Please follow the [Stable Diffusion Windows App](https://github.com/quic/ai-hub-apps/tree/main/apps/windows/python/StableDiffusion) tutorial to quantize model with custom weights.
|
|
@@ -152,8 +148,8 @@ Device : cs_8275 (ANDROID 14)
|
|
| 152 |
Runtime : QNN_CONTEXT_BINARY
|
| 153 |
Estimated inference time (ms) : 18.6
|
| 154 |
Estimated peak memory usage (MB): [0, 9]
|
| 155 |
-
Total # Ops :
|
| 156 |
-
Compute Unit(s) : npu (
|
| 157 |
|
| 158 |
------------------------------------------------------------
|
| 159 |
unet
|
|
@@ -161,17 +157,17 @@ Device : cs_8275 (ANDROID 14)
|
|
| 161 |
Runtime : QNN_CONTEXT_BINARY
|
| 162 |
Estimated inference time (ms) : 232.5
|
| 163 |
Estimated peak memory usage (MB): [0, 8]
|
| 164 |
-
Total # Ops :
|
| 165 |
-
Compute Unit(s) : npu (
|
| 166 |
|
| 167 |
------------------------------------------------------------
|
| 168 |
vae
|
| 169 |
Device : cs_8275 (ANDROID 14)
|
| 170 |
Runtime : QNN_CONTEXT_BINARY
|
| 171 |
-
Estimated inference time (ms) : 718.
|
| 172 |
Estimated peak memory usage (MB): [0, 9]
|
| 173 |
-
Total # Ops :
|
| 174 |
-
Compute Unit(s) : npu (
|
| 175 |
```
|
| 176 |
|
| 177 |
|
|
|
|
| 29 |
- **Model Type:** Model_use_case.image_generation
|
| 30 |
- **Model Stats:**
|
| 31 |
- Input: Text prompt to generate image
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
| Model | Precision | Device | Chipset | Target Runtime | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit | Target Model
|
| 34 |
|---|---|---|---|---|---|---|---|---|
|
| 35 |
+
| text_encoder | w8a16 | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | QNN_CONTEXT_BINARY | 18.572 ms | 0 - 9 MB | NPU | Use Export Script |
|
| 36 |
+
| text_encoder | w8a16 | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | QNN_CONTEXT_BINARY | 8.205 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 37 |
+
| text_encoder | w8a16 | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | QNN_CONTEXT_BINARY | 8.392 ms | 0 - 9 MB | NPU | Use Export Script |
|
| 38 |
+
| text_encoder | w8a16 | SA7255P ADP | Qualcomm® SA7255P | QNN_CONTEXT_BINARY | 18.572 ms | 0 - 9 MB | NPU | Use Export Script |
|
| 39 |
+
| text_encoder | w8a16 | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_CONTEXT_BINARY | 8.224 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 40 |
+
| text_encoder | w8a16 | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_CONTEXT_BINARY | 8.216 ms | 0 - 3 MB | NPU | Use Export Script |
|
| 41 |
+
| text_encoder | w8a16 | SA8775P ADP | Qualcomm® SA8775P | QNN_CONTEXT_BINARY | 8.392 ms | 0 - 9 MB | NPU | Use Export Script |
|
| 42 |
+
| text_encoder | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | QNN_CONTEXT_BINARY | 8.233 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 43 |
+
| text_encoder | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | PRECOMPILED_QNN_ONNX | 8.21 ms | 0 - 386 MB | NPU | Use Export Script |
|
| 44 |
+
| text_encoder | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_CONTEXT_BINARY | 5.646 ms | 0 - 19 MB | NPU | Use Export Script |
|
| 45 |
+
| text_encoder | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | PRECOMPILED_QNN_ONNX | 5.466 ms | 0 - 19 MB | NPU | Use Export Script |
|
| 46 |
+
| text_encoder | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | QNN_CONTEXT_BINARY | 5.133 ms | 0 - 14 MB | NPU | Use Export Script |
|
| 47 |
+
| text_encoder | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | PRECOMPILED_QNN_ONNX | 5.372 ms | 0 - 18 MB | NPU | Use Export Script |
|
| 48 |
+
| text_encoder | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_CONTEXT_BINARY | 8.633 ms | 0 - 0 MB | NPU | Use Export Script |
|
| 49 |
+
| text_encoder | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | PRECOMPILED_QNN_ONNX | 8.256 ms | 379 - 379 MB | NPU | Use Export Script |
|
| 50 |
+
| unet | w8a16 | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | QNN_CONTEXT_BINARY | 232.535 ms | 0 - 8 MB | NPU | Use Export Script |
|
| 51 |
+
| unet | w8a16 | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | QNN_CONTEXT_BINARY | 93.804 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 52 |
+
| unet | w8a16 | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | QNN_CONTEXT_BINARY | 87.82 ms | 0 - 8 MB | NPU | Use Export Script |
|
| 53 |
+
| unet | w8a16 | SA7255P ADP | Qualcomm® SA7255P | QNN_CONTEXT_BINARY | 232.535 ms | 0 - 8 MB | NPU | Use Export Script |
|
| 54 |
+
| unet | w8a16 | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_CONTEXT_BINARY | 94.034 ms | 0 - 3 MB | NPU | Use Export Script |
|
| 55 |
+
| unet | w8a16 | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_CONTEXT_BINARY | 94.829 ms | 0 - 3 MB | NPU | Use Export Script |
|
| 56 |
+
| unet | w8a16 | SA8775P ADP | Qualcomm® SA8775P | QNN_CONTEXT_BINARY | 87.82 ms | 0 - 8 MB | NPU | Use Export Script |
|
| 57 |
+
| unet | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | QNN_CONTEXT_BINARY | 93.81 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 58 |
+
| unet | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | PRECOMPILED_QNN_ONNX | 95.775 ms | 0 - 898 MB | NPU | Use Export Script |
|
| 59 |
+
| unet | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_CONTEXT_BINARY | 66.1 ms | 0 - 18 MB | NPU | Use Export Script |
|
| 60 |
+
| unet | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | PRECOMPILED_QNN_ONNX | 66.978 ms | 0 - 17 MB | NPU | Use Export Script |
|
| 61 |
+
| unet | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | QNN_CONTEXT_BINARY | 58.317 ms | 0 - 15 MB | NPU | Use Export Script |
|
| 62 |
+
| unet | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | PRECOMPILED_QNN_ONNX | 58.189 ms | 0 - 15 MB | NPU | Use Export Script |
|
| 63 |
+
| unet | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_CONTEXT_BINARY | 95.257 ms | 0 - 0 MB | NPU | Use Export Script |
|
| 64 |
+
| unet | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | PRECOMPILED_QNN_ONNX | 96.242 ms | 842 - 842 MB | NPU | Use Export Script |
|
| 65 |
+
| vae | w8a16 | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | QNN_CONTEXT_BINARY | 718.615 ms | 0 - 9 MB | NPU | Use Export Script |
|
| 66 |
+
| vae | w8a16 | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | QNN_CONTEXT_BINARY | 270.88 ms | 0 - 3 MB | NPU | Use Export Script |
|
| 67 |
+
| vae | w8a16 | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | QNN_CONTEXT_BINARY | 249.022 ms | 0 - 10 MB | NPU | Use Export Script |
|
| 68 |
+
| vae | w8a16 | SA7255P ADP | Qualcomm® SA7255P | QNN_CONTEXT_BINARY | 718.615 ms | 0 - 9 MB | NPU | Use Export Script |
|
| 69 |
+
| vae | w8a16 | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_CONTEXT_BINARY | 276.47 ms | 0 - 3 MB | NPU | Use Export Script |
|
| 70 |
+
| vae | w8a16 | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_CONTEXT_BINARY | 273.324 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 71 |
+
| vae | w8a16 | SA8775P ADP | Qualcomm® SA8775P | QNN_CONTEXT_BINARY | 249.022 ms | 0 - 10 MB | NPU | Use Export Script |
|
| 72 |
+
| vae | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | QNN_CONTEXT_BINARY | 268.934 ms | 0 - 2 MB | NPU | Use Export Script |
|
| 73 |
+
| vae | w8a16 | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 Mobile | PRECOMPILED_QNN_ONNX | 271.01 ms | 0 - 68 MB | NPU | Use Export Script |
|
| 74 |
+
| vae | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_CONTEXT_BINARY | 202.979 ms | 0 - 20 MB | NPU | Use Export Script |
|
| 75 |
+
| vae | w8a16 | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | PRECOMPILED_QNN_ONNX | 203.271 ms | 3 - 21 MB | NPU | Use Export Script |
|
| 76 |
+
| vae | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | QNN_CONTEXT_BINARY | 193.901 ms | 0 - 14 MB | NPU | Use Export Script |
|
| 77 |
+
| vae | w8a16 | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite Mobile | PRECOMPILED_QNN_ONNX | 194.085 ms | 3 - 17 MB | NPU | Use Export Script |
|
| 78 |
+
| vae | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_CONTEXT_BINARY | 265.475 ms | 0 - 0 MB | NPU | Use Export Script |
|
| 79 |
+
| vae | w8a16 | Snapdragon X Elite CRD | Snapdragon® X Elite | PRECOMPILED_QNN_ONNX | 264.466 ms | 63 - 63 MB | NPU | Use Export Script |
|
| 80 |
|
| 81 |
## Deploy to Snapdragon X Elite NPU
|
| 82 |
Please follow the [Stable Diffusion Windows App](https://github.com/quic/ai-hub-apps/tree/main/apps/windows/python/StableDiffusion) tutorial to quantize model with custom weights.
|
|
|
|
| 148 |
Runtime : QNN_CONTEXT_BINARY
|
| 149 |
Estimated inference time (ms) : 18.6
|
| 150 |
Estimated peak memory usage (MB): [0, 9]
|
| 151 |
+
Total # Ops : 788
|
| 152 |
+
Compute Unit(s) : npu (788 ops) gpu (0 ops) cpu (0 ops)
|
| 153 |
|
| 154 |
------------------------------------------------------------
|
| 155 |
unet
|
|
|
|
| 157 |
Runtime : QNN_CONTEXT_BINARY
|
| 158 |
Estimated inference time (ms) : 232.5
|
| 159 |
Estimated peak memory usage (MB): [0, 8]
|
| 160 |
+
Total # Ops : 5784
|
| 161 |
+
Compute Unit(s) : npu (5784 ops) gpu (0 ops) cpu (0 ops)
|
| 162 |
|
| 163 |
------------------------------------------------------------
|
| 164 |
vae
|
| 165 |
Device : cs_8275 (ANDROID 14)
|
| 166 |
Runtime : QNN_CONTEXT_BINARY
|
| 167 |
+
Estimated inference time (ms) : 718.6
|
| 168 |
Estimated peak memory usage (MB): [0, 9]
|
| 169 |
+
Total # Ops : 174
|
| 170 |
+
Compute Unit(s) : npu (174 ops) gpu (0 ops) cpu (0 ops)
|
| 171 |
```
|
| 172 |
|
| 173 |
|