Update model card with benchmark results (up to 13x faster)
Browse files
README.md
CHANGED
|
@@ -17,6 +17,8 @@ pipeline_tag: image-to-image
|
|
| 17 |
|
| 18 |
Pre-converted [Real-ESRGAN](https://github.com/xinntao/Real-ESRGAN) models in OpenVINO IR format, optimized for Intel CPUs.
|
| 19 |
|
|
|
|
|
|
|
| 20 |
## Models
|
| 21 |
|
| 22 |
| Model | Scale | Parameters | Use Case |
|
|
@@ -27,6 +29,46 @@ Pre-converted [Real-ESRGAN](https://github.com/xinntao/Real-ESRGAN) models in Op
|
|
| 27 |
|
| 28 |
All models accept `uint8` NHWC input directly (preprocessing baked into IR).
|
| 29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30 |
## Usage
|
| 31 |
|
| 32 |
See the [GitHub repository](https://github.com/ibrhr/Real-ESRGAN-cpu) for usage instructions, examples, and benchmarks.
|
|
|
|
| 17 |
|
| 18 |
Pre-converted [Real-ESRGAN](https://github.com/xinntao/Real-ESRGAN) models in OpenVINO IR format, optimized for Intel CPUs.
|
| 19 |
|
| 20 |
+
**Up to 13x faster** than PyTorch for the same accuracy while using less memory.
|
| 21 |
+
|
| 22 |
## Models
|
| 23 |
|
| 24 |
| Model | Scale | Parameters | Use Case |
|
|
|
|
| 29 |
|
| 30 |
All models accept `uint8` NHWC input directly (preprocessing baked into IR).
|
| 31 |
|
| 32 |
+
## Highly Optimized
|
| 33 |
+
|
| 34 |
+
This implementation leverages Intel OpenVINO with AVX-512 and AMX instructions for maximum CPU performance. The speedup increases with image size, making it especially efficient for large images.
|
| 35 |
+
|
| 36 |
+
### Benchmark
|
| 37 |
+
|
| 38 |
+
For reference, here's the time required to upscale images using different implementations:
|
| 39 |
+
|
| 40 |
+
* [PyTorch](https://pytorch.org/) - Standard PyTorch inference
|
| 41 |
+
* [OpenVINO](https://docs.openvino.ai/) - Optimized for Intel CPUs
|
| 42 |
+
|
| 43 |
+
### x4plus model on Intel Xeon Platinum 8581C
|
| 44 |
+
|
| 45 |
+
| Input Size | Output Size | PyTorch (s) | OpenVINO (s) | Speedup | Memory |
|
| 46 |
+
|------------|-------------|-------------|--------------|---------|--------|
|
| 47 |
+
| 128x128 | 512x512 | 0.635 | 0.114 | **5.58x** | 9.9 MB |
|
| 48 |
+
| 256x256 | 1024x1024 | 3.673 | 0.391 | **9.39x** | 39.2 MB |
|
| 49 |
+
| 512x512 | 2048x2048 | 19.919 | 1.485 | **13.42x** | 57.9 MB |
|
| 50 |
+
| 1024x1024 | 4096x4096 | 79.385 | 5.955 | **13.33x** | 96.2 MB |
|
| 51 |
+
|
| 52 |
+
### x2plus model on Intel Xeon Platinum 8581C
|
| 53 |
+
|
| 54 |
+
| Input Size | Output Size | PyTorch (s) | OpenVINO (s) | Speedup | Memory |
|
| 55 |
+
|------------|-------------|-------------|--------------|---------|--------|
|
| 56 |
+
| 128x128 | 256x256 | 0.193 | 0.051 | **3.81x** | 2.6 MB |
|
| 57 |
+
| 256x256 | 512x512 | 0.682 | 0.111 | **6.13x** | 9.9 MB |
|
| 58 |
+
| 512x512 | 1024x1024 | 3.604 | 0.405 | **8.89x** | 15.2 MB |
|
| 59 |
+
| 1024x1024 | 2048x2048 | 21.174 | 1.618 | **13.09x** | 26.5 MB |
|
| 60 |
+
|
| 61 |
+
### x4plus_anime_6B model on Intel Xeon Platinum 8581C
|
| 62 |
+
|
| 63 |
+
| Input Size | Output Size | PyTorch (s) | OpenVINO (s) | Speedup | Memory |
|
| 64 |
+
|------------|-------------|-------------|--------------|---------|--------|
|
| 65 |
+
| 128x128 | 512x512 | 0.243 | 0.047 | **5.15x** | 6.9 MB |
|
| 66 |
+
| 256x256 | 1024x1024 | 1.287 | 0.154 | **8.35x** | 27.2 MB |
|
| 67 |
+
| 512x512 | 2048x2048 | 6.617 | 0.583 | **11.34x** | 45.9 MB |
|
| 68 |
+
| 1024x1024 | 4096x4096 | 26.366 | 2.341 | **11.26x** | 84.2 MB |
|
| 69 |
+
|
| 70 |
+
*Benchmarks executed on Intel Xeon Platinum 8581C (8 cores, 16 threads, AVX-512, AMX).*
|
| 71 |
+
|
| 72 |
## Usage
|
| 73 |
|
| 74 |
See the [GitHub repository](https://github.com/ibrhr/Real-ESRGAN-cpu) for usage instructions, examples, and benchmarks.
|