Hello, Arnold GPU
Arnold is one of the most popular renderers in animation and film production, the software and renderers supported by Fox Renderfarm including Arnold, we are also an Arnold render farm. With the recent release of Arnold-22.214.171.124, the first version of the Arnold GPU (beta) has been officially released. We can share some of the results and thoughts about the pre-test of the Arnold GPU.
The principle of Arnold GPU
More than two years ago, Marcos Fajardo (author of the Arnold) talked about the possibility of Arnold GPUs for the first time at SIGGRAPH2015. At the time, a full-platform-supported GPU renderer based on the OpenCL computing framework was designed. However, the current Arnold GPU is based on NVIDIA Optix rendering architecture, the bottom layer is CUDA language, CUDA is much more friendly than OpenCL, the development progress is certainly faster, and the most important thing is that CUDA is faster and more stable. With the release of the RTX series of graphics cards, vector intersection processing is getting faster and faster, and it is more suitable for GPU ray tracing algorithms.
Arnold CPU and GPU effects
The original purpose of Arnold GPU rendering was to keep the CPU and GPU rendering results close to each other, which is the effect and speed of the different rendering modes of the beta version.
Katana3.0 KtoA 126.96.36.199 gpu19 GeForce GTX 1080
Using 8 render threads
AA samples = 6
GI diffsue samples = 3
GI specular samples = 3
GI transmisson samples = 3
GI diffsue depth = 2
GI specular depth = 3
GI transmisson depth = 8
Light sampling is the default
Metal (CPU on the left, GPU on the right)
CPU - 2m13s
GPU - 10s
In summary, the metal BRDF material does not require much computing performance, and can be well calculated on the GPU, so the CPU and GPU noise is less, GPU rendering is much faster. When there are many hard surface materials in the scene, the GPU will show more powerful speed and performance without losing the rendering quality.
Glass (CPU on the left, GPU on the right)
CPU - 31m57s
GPU - 17s
Glass BTDF material, ray tracing renderer is too slow and too inefficient. Although the Arnold GPU renders extremely fast, it is obvious that the rendering details are lost and the noise is dense. Still using the CPU to render slowly is more reliable.
Subsurface scattering (CPU on the left, GPU on the right)
CPU - 6m39s
GPU - 36s
Subsurface scattering(SSS), also known as BSSRDF, is the biggest surprise for Arnold GPU in so many tests. The Arnold GPU implements the random_walk BSSRDF in standard_surface.
First, the Arnold 5 comes with two types of SSS:
Diffusion is an empirically based SSS model that renders results faster because many of the parameters are obtained by looking up the table. This empirical model is also commonly used today. Random_walk is a complete light reflection calculation based on a real physical model.
Going back to the Arnold GPU, it doesn't support diffusion but uses random_walk directly. The results are perfect, the noise is small, and the rendering is very similar to the CPU. In actual production, this is a CG production requirement that is fully qualified for film.
Cornell_box (CPU on the left, GPU on the right)
CPU - 23m37s
GPU - 1m27s
The result is perfect, although the rendering time is slow, but the effect is amazing. Compared with Redshift, the speed is fiasco, and the effect is over. The biggest problem with Redshift is that indirect lighting tends to be too bright and dark details are not enough. The effect of the Arnold GPU is basically the same as that of the CPU. At this point, it is the best known in the current renderer (prman doesn't know).
Please note here that the reason why the rendering time of the GPU is significantly faster than the CPU is because the sampling is the same, and the sampling result is the same, the noise of the GPU rendering result is significantly more than the noise of the CPU rendering result.
Arnold Beta Edition Limitations
Because Arnold is still in the early beta version, many features are not available. It should be a little early to use the Arnold GPU for production. Here are some of the bigger drawbacks.
GPU rendering, based on the same sampling, more noise than CPU
GPU rendering will read all textures into memory and video memory, not supporting streaming texture
GPU rendering does not support bucket rendering, all supported AOVs are left in memory
GPU rendering does not support OpenVDB
OSL Shaders is not supported yet
Third-party Shaders are not supported at this time
Does not support AOVs write, does not support write_aov
Cylinder_light is not supported yet
Disk_light is not supported at this time
Mesh_light is not supported yet
Light_links is not supported at this time
Light_filters is not supported at this time
The future of Arnold GPU
Arnold wants to use GPU rendering for movie-level projects, but because of the GPU's own shortcomings, many renderings must be calculated using the CPU, which is more efficient. Therefore, it is very important to switch between rendering between CPU and GPU freely. Based on this, Arnold can provide high quality CPU unidirectional ray tracing rendering while providing efficient GPU Optix ray tracing rendering.
A set of APIs supports CPU and GPU
Arnold was originally designed to use a set of APIs that are compatible with CPU and GPU rendering. Now Arnold GPUs are beginning to be compatible with some of the Maya native materials available in MtoA, at least for this, Arnold has made some progress.
Support for OSL Shaders
The latest news, from the developer forum, NVIDIA is working with Sony to develop OSL GPU-based compatibility, including several important features of OSL: Closure and LPEs. Will join the Arnold GPU soon.
Now it seems that Arnold still does a good job of restoring effects. GPU rendering tries to move closer to CPU rendering because the two rendering architectures are different and no longer extend.
How to render large scenes with Redshift in Cinema 4D
Arnold\ V-Ray\ Octane\ Conora\ RedShift, Which Renderer Is The Best?
How to Render High-quality Images in Blender
How the Redshift Proxy Renders the Subdivision
China Film Administration Release New License Logo
Maya 2018 Arnold's Method of Making Motion Vector Blur in AOV Channel
Corona Renderer Learning - Denoising
Redshift for Cinema 4D Tutorial: Interior Design Rendering
Previous: Say Goodbye To Model Chamfering, Introduce Roundcorners To You
Next: 2019 GDC UE4 Real-Time Rendering Short Film: Rebirth