Real-ESRGAN OpenVINO
Pre-converted Real-ESRGAN models in OpenVINO IR format, optimized for Intel CPUs.
Up to 13x faster than PyTorch for the same accuracy while using less memory.
Models
| Model | Scale | Parameters | Use Case |
|---|---|---|---|
real_esrgan_x4plus_fp32 |
4x | 16.7M | General photos |
real_esrgan_x2plus_fp32 |
2x | 16.7M | General photos (2x) |
real_esrgan_x4plus_anime_6B_fp32 |
4x | 5.9M | Anime/illustrations |
All models accept uint8 NHWC input directly (preprocessing baked into IR).
Highly Optimized
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.
Benchmark
For reference, here's the time required to upscale images using different implementations:
x4plus model on Intel Xeon Platinum 8581C
| Input Size | Output Size | PyTorch (s) | OpenVINO (s) | Speedup | Memory |
|---|---|---|---|---|---|
| 128x128 | 512x512 | 0.635 | 0.114 | 5.58x | 9.9 MB |
| 256x256 | 1024x1024 | 3.673 | 0.391 | 9.39x | 39.2 MB |
| 512x512 | 2048x2048 | 19.919 | 1.485 | 13.42x | 57.9 MB |
| 1024x1024 | 4096x4096 | 79.385 | 5.955 | 13.33x | 96.2 MB |
x2plus model on Intel Xeon Platinum 8581C
| Input Size | Output Size | PyTorch (s) | OpenVINO (s) | Speedup | Memory |
|---|---|---|---|---|---|
| 128x128 | 256x256 | 0.193 | 0.051 | 3.81x | 2.6 MB |
| 256x256 | 512x512 | 0.682 | 0.111 | 6.13x | 9.9 MB |
| 512x512 | 1024x1024 | 3.604 | 0.405 | 8.89x | 15.2 MB |
| 1024x1024 | 2048x2048 | 21.174 | 1.618 | 13.09x | 26.5 MB |
x4plus_anime_6B model on Intel Xeon Platinum 8581C
| Input Size | Output Size | PyTorch (s) | OpenVINO (s) | Speedup | Memory |
|---|---|---|---|---|---|
| 128x128 | 512x512 | 0.243 | 0.047 | 5.15x | 6.9 MB |
| 256x256 | 1024x1024 | 1.287 | 0.154 | 8.35x | 27.2 MB |
| 512x512 | 2048x2048 | 6.617 | 0.583 | 11.34x | 45.9 MB |
| 1024x1024 | 4096x4096 | 26.366 | 2.341 | 11.26x | 84.2 MB |
Benchmarks executed on Intel Xeon Platinum 8581C (8 cores, 16 threads, AVX-512, AMX).
Usage
See the GitHub repository for usage instructions, examples, and benchmarks.
Citations
@inproceedings{wang2021realesrgan,
title={Real-ESRGAN: Training Real-World Blind Super-Resolution with Pure Synthetic Data},
author={Wang, Xintao and Xie, Liangbin and Dong, Chao and Shan, Ying},
booktitle={International Conference on Computer Vision Workshops (ICCVW)},
year={2021}
}