blender-batch.sh
GPU Rendering with CYCLES and CUDA
What we found though is we wanted to use the CYCLES render, and not only that we wanted to run it on the FluxG GPU service. Why GPUs? Lets us use the current standard CYCLES benchmark file and compare GPU to CPU performance.Blender Rendering Benchmark (mpan) |
Hardware | Tile Settings (XxY) | Time | Speedup |
---|---|---|---|
1 CPU E5-2670 | 16x16 | 10m:17s | 1x |
4 CPU E5-2670 | 16x16 | 2m:48s | 3.7x |
16 CPU E5-2670 | 16x16 | 46S | 13.4x |
1 K20X GPU | 256x256 | 40S | 15.4x |
2 K20X GPU | 256x256 | 24S | 25.7 |
4 K20X GPU | 256x256 | 18S | 34.3x |
Running Blender Better
So we know GPUs are much faster, but Blender when ran in the normal batch mode above ignores any settings you pass in a python input. We want to be able to control all GPU/CPU settings on the cluster and not open the GUI each time. The trick, is to read your blend file from the Blender Python API and then change settings. Look at the tooltips in blender this API is powerful, everything can be controlled from Python.