How to Use Cinebench to Predict Cinema 4D PerformanceWritten on April 3, 2018 by William George
Here at Puget Systems, it is our goal to perform realistic testing on the software packages we tailor our workstations toward. Sometimes that is easy, sometimes it is difficult... and sometimes a software maker already provides their own benchmark tool. That is the case with Maxon, makers of Cinema 4D and the widely-used Cinebench performance test (which is based on Cinema 4D). To determine if and how we should use it, though, we have to ask some questions: is Cinebench really an accurate benchmark for Cinema 4D, and how do the tests it runs relate to real-world performance?
To give some background, Cinema 4D is an application that is widely used for creating advanced 3D graphics and animations. Popular with many creative professionals, its capabilities include modeling, texturing, rigging, animation, soft and rigid body simulations, rendering, and more.
Because there is such a wide range of features and uses, we spent time looking at several of them to see what impacts performance - and we found that most tasks in Cinema 4D are single-threaded. Modeling, animation, and both soft and rigid body physics simulations all use a single CPU core at a time. The only task in Cinema 4D that reliably uses more than one core, so far as we could tell, is rendering. That sits at the other extreme: it scales almost perfectly with both clock speed and core count. One exception that we noted is that when rendering multiple frames (videos) there is a short period of single-threaded activity between each frame. That makes sense, though, since that is when the animations and physics would be calculated - and as we noted, those only use one core at a time.
We could certainly develop an in-house utility that measures how quickly Cinema 4D performs across a wide variety of tasks, but since Maxon actually has a benchmark of their own (which we already run on every system we build, as part of our test suite) we decided to look at it in more depth. It is called Cinebench, and if you use the "advanced" mode it is comprised of three tests:
- OpenGL - This is a test of how many frames per second of an animation can be calculated and displayed by the video card, or GPU, using OpenGL.
- CPU - This is a test of rendering a single frame, using all available CPU cores. This test is extremely well threaded, as is standard for CPU based rendering.
- CPU (Single core) - This test renders the same image as above, but using only a single CPU core. Technically, it uses a single thread - not a full core, which in many processors could run two threads at once.
As you can see, the tests here do not include anything related to modeling, rigging, simulation/physics, etc... and normally that would be a good reason for us to develop our own benchmark, targeting those real-world use cases. However, we already found that those all share something in common: they are single-threaded, and Cinebench includes a single-threaded test in its suite. It is not quite a perfect stand-in, since it is only testing the rendering process, but it does do a good job of measuring single-threaded performance on the hardware being benchmarked. Since that is the exact metric that determines performance in most of Cinema 4D, we have found that the score provided by this benchmark is sufficient to take the place of a more exhaustive testing process.
Even more perfectly, the multi-threaded CPU rendering test is *exactly* what we would want to run for that type of workload, if we were to go down the path of developing our own benchmark. Additionally, the GPU test gives a good indication of how the video card in a given system will perform with the real-time, OpenGL engine used for Cinema 4D's viewport.
The one big thing Cinebench leaves untested is performance when rendering animations - especially those that include a lot of physics simulations. As described previously, that process is a series of well-threaded frame rendering with single-threaded calculations taking place between each frame. No single test could truly cover that, though, because the exact blend of single- and all-core usage will depend on a number of factors. The more that needs to be calculated between frames, the more time those single-threaded steps will last... but the more complex the scene and lighting is, and the higher the resolution, the more time will be spent on actually rendering each frame. Instead of trying to make multiple tests to cover the extremes as well as the average, we can simply look at both of the CPU results provided by Cinebench to get a good feel for how a given CPU will perform on this front. Ideally, you would want a lot of cores with a good all-core turbo speed... while also providing the highest single-core turbo speed possible.
Lastly, there is a newer rendering mode that was introduced in Cinema 4D R19: ProRender. It is a GPU based renderer, based on AMD Radeon technology but compatible with both AMD and NVIDIA graphics cards. Video cards can perform differently with rendering like this than they do when using in more traditional graphics modes like OpenGL, so this is something that Cinebench does not really cover. I am hopeful that the developers of Cinebench will integrate ProRender into the benchmark somehow - but if they do not, and if our customers express interest in it, we could develop our own testing for this aspect of Cinema 4D. Please let us know in the comments if that is something you'd like to see, or if there are other aspects of Cinema 4D performance you feel are not well covered by Cinebench.
I should also note that there are a number of other rendering plug-ins that can be added to Cinema 4D, which folks may also want tested. We offer workstations optimized for Arnold, FurryBall, Octane, and V-Ray - and we have done testing on those renderers on their own, which is useful to take into account if you plan to use one (or more) of them within Cinema 4D.
So where does that leave us? Is Cinebench a viable stand-in for real-world Cinema 4D testing? While it does not test every function within Cinema 4D, the Cinebench tests do provide enough information about CPU performance to accurately guide hardware selection. Here is a basic guide:
- If you care about general modeling, animation, and simulation performance then pay attention to the CPU Single Core result.
- If you are concerned about how fast either the standard or physical renderer will run, focus on the main CPU score instead.
- If you want the best of both worlds, look for the highest possible CPU score while keeping a high Single Core score as well.
- If you use a 3rd-party renderer, check out our performance tests for the specific engine(s) you use.