With the introduction of the latest Mac Pro (2013) it has become common to include more than one GPU card in computers. In previous versions of Capture One, support for OpenCL processing was limited to a single GPU. In Capture One Pro 8, all available GPU’s will be utilized, distributing the workload between them according to individual processing power.
This processing distribution doubles the per pixel processing speed for the Mac Pro (2013 model), improving the end-to-end speed by approximately 50%. In Capture One Pro 8, we have carefully optimized the processing pipeline to become as parallel as possible, resulting in the fastest processing of any Capture One version – and any current current RAW processor.
The speed advantage of using OpenCL is noticeable. When using both of the AMD D700 graphics cards in a Mac Pro (2013) computer, you can process a full 80 megapixel RAW file in less than 1.5 seconds.
In Capture One Pro 8, the default setup is not to use OpenCL for processing due to a possible incompatibility of future OpenCL drivers. To enable OpenCL, you need to switch to Auto in the Hardware Acceleration preferences as shown below.
When Auto is selected, Capture One Pro 8 will test the capability of the graphics card, and if the card proves to be powerful enough, it will be used for processing.
What is OpenCL?
OpenCL is an open standard that defines how to interface and utilize all the processing capabilities within graphics card’s (GPU) and multiprocessor CPU’s. OpenCL is short for Open Computing Language.
OpenCL essentially enables effective utilization of the thousands of compute units within modern graphics cards. For Capture One Pro, only relatively new GPU cards have enough computing power and onboard RAM to be utilized effectively.
The number of processing or compute units is an important proxy for performance. However, driver optimization, specific implementation of the floating point and integer pipeline of the GPU, along with the total amount of on-board memory are important elements as well.
If you have too little on-board memory the full image has to split up in small units creating data transfer overhead that will limit performance.
Utilizing OpenCL for dual GPUs in Capture One Pro 8 accelerates your processing significantly compared to Capture One Pro 7 – where only one GPU is used.
Performance for Mac Pro (2013), Dual D700 ATI cards, 12 core CPU:
Capture One Pro 7: 28 IQ180 files: 2.23 min – end to end
Capture One Pro 8: 28 IQ180 files: 1.34 min – end to end
Capture One Pro 8 is processing files 52% faster than Capture One Pro 7.
The benchmark numbers depend on your graphics card, number of CPU cores and speed of your SSD disk.
In terms of the interactive speed using one of the recommended graphics cards, it is possible to get real-time feedback (30fps) for almost all slider interaction in Capture One Pro 8, including the HDR tool (which was not using OpenCL in previous versions).
As of September 15, 2014, here are the recommended GPU Cards for “best performance”
AMD R9 290X
NVidia GTX 780Ti
Dual ATI D700 in Mac Pro (2013)
AMD 7950 in Mac Pro Tower
As of September 2014, four major companies have developed desktop drivers for OpenCL: NVidia, AMD, Apple and Intel. OpenCL is also becoming a popular interface for other computer architectures going forward, even embedded systems and SOC (System On a Chip) devices.
For Mac OS X the OpenCL drivers are part of the operating system, where the drivers for Windows based systems are installed as part of the display drivers. For your convenience here are the links to the OpenCL enabled drivers for Windows.
Windows driver requirements:
- For AMD/ATI graphics: Catalyst Software suite 13.4 or higher http://support.amd.com/en-us/download/desktop?os=Windows+7+-+64
- For NVidia graphics: NVidia Display driver version 320.18 or higher http://www.nvidia.com/download/driverResults.aspx/78216/en-us
- Intel Iris Pro Graphics: Version 15.31.9 or higher https://downloadcenter.intel.com/SearchResult.aspx?lang=eng&FamilyId=39&ProductID=3723&ProdId=3723
Unlike Capture One Pro 7, there are no image settings or features in Capture One Pro 8 that will by-pass the use of OpenCL, and use the CPU processing pipeline. Thus, if your graphics card is capable of it, it is preferable to enable OpenCL, as you will see a significant increase in Capture One Pro 8’s speed.
And who doesn’t want faster processing?
Lionel Kuhlmann is the advanced algorithms manager at Phase One, where he is the lead of the image-processing group behind Capture One.