This FAQ will explain the main factors that affect the performance of Perfectly Clear QuickServer.
Perfectly Clear QuickServer Performance Data
QuickServer can process over 10,000 images per hour, averaging 10 megapixels, on standard desktop computers. High powered workstations can achieve 20,000 images per hour or more, and high CPU-count servers with plenty of RAM can expect even higher throughput. For example, a workstation with 8 Cores at 3.0 GHz and 16 GB RAM will process over 12,000 images per hour (averaging 10 megapixels each).
On modern computers, QuickServer is about 30% faster than our previous LAB 5 product.
Processing speed is highly dependent on 3 factors:
- Image size. Processing time is roughly linear with regards to image size for images over about 3 megapixels: a 10 megapixel image takes roughly half the time as a 20 megapixel image.
- Correction parameters used, and image content. Many of the Perfectly Clear corrections are image-content aware. For example, our noise correction will only apply noise correction when both noise correction is enabled and noise is detected in the source image. Thus, turning on the noise correction tool isn’t always a performance cost, but when noise is present in the images, the incremental processing time can be significant. This applies to the Beautify corrections, Red-eye removal, Tint correction, and to a lesser degree to many of the individual PfC core corrections.
- Computer specifications – the more RAM, cores, and the more powerful your CPU is, the faster your throughout will be.
While larger images take longer to process, there is a fixed amount of processing that must occur for each image. As such, larger images are faster per megapixel than smaller images. The chart below shows this relationship.
Image Correction Parameters
QuickServer does offer many more correction tools that LAB 5 did. Including these in the correction process will add to the total correction time.
The graph to the right shows how processing time is affected by the various correction parameters.
There are three major components of the Perfectly Clear SDK:
1) Common – which includes necessary “overhead” for all images.
2) Core corrections – include exposure, tint, vibrancy, sharpening, contrast, skin tone, skin bias correction, color fidelity and light diffusion.
3) Beautify includes all the skin and eye enhancements and red-eye removal.
4) Noise Removal
In order to perform an easily repeatable test, we have run the following tests on an Amazon EC2 Windows c5d.2xlarge instance. This uses an Intel Xeon 8124M CPU with 8 cores at 3.0 GHz, 16 GB RAM, and uses high performance SSD’s. At the time of writing this instance costs roughly $0.75 per hour (with over 12,000 images per hour, that results in $0.0000625 per image).
Processing scales very linearly with clock speed and the number of cores.
It is recommended to have 2GB RAM per CPU core.
Data gathered in July, 2019