Blender 2.91.2 Improvements Address Amd Gpu Rendering Bugs

Bug Fixes for Radeon RX 6000 Series Cards

The Blender 2.91.2 release focuses heavily on addressing bugs and issues that have impacted AMD Radeon RX 6000 series graphics card users. Specific bug fixes target memory leaks that were causing frequent crashes, incorrect texture sampling that led to rendering artifacts, and Cycles rendering problems that resulted in incorrect lighting, shading, or missing objects in completed renders.

The most notable fix is for resolver memory leaks that have caused frustration for many RX 6000 series card owners. Complex scenes with many high-resolution textures would quickly exhaust the available GPU memory, causing Blender to crash. Careful auditing of the memory allocation pathways led developers to pinpoint areas where resources were not being properly freed after use. Implementing more aggressive control around these code paths greatly reduces the occurrence of these crashes.

Texture sampling methods have also been overhauled to use more appropriate interpolation and filtering techniques for different AMD graphics architectures. RDNA 2 cards in the 6000 series sample textures differently than prior AMD GPUs. Using the wrong approaches previously led to uneven shading, textures appearing blurry or over-sharp, and other rendering defects. Updating the texture handling properly leverages the unique capabilities of modern AMD hardware.

Finally, the Blender Cycles rendering engine has been updated to prevent bugs that were manifesting as missing objects, partially transparent surfaces, or flickering appearances during the final render. This stemmed from incompatibilities between the Cycles kernel code and current AMD drivers. Coordinating work between the open-source Blender developers and AMD driver engineers ensured the rendering pipeline utilizes the RX 6000 series cards correctly.

Optimized Performance with AMD Drivers

In addition to addressing critical bugs, the Blender 2.91.2 release also focuses heavily on performance optimizations for AMD GPUs by leveraging improvements in AMD’s software drivers. Targeted enhancements have been made around the GPUOpen software libraries for 3D rendering and compute workloads common to Blender.

Specific optimizations involve changes to how Blender splits and schedules workloads across the available graphics pipelines and compute units on AMD GPUs. Complex scenes with many objects, particle systems, physics simulations, and other demanding features can now utilize much more of the parallel processing capabilities on modern AMD hardware.

These code improvements also reduce driver overhead and latency that previously bogged down some Blender viewport operations on AMD cards. Bypassing certain abstraction layers and minimizing state changes as models are manipulated in the viewport now feel much smoother and lag-free during interaction.

Early benchmarking across a range of AMD Radeon cards shows performance increases between 8-22% for common Blender workflows. As developers profile the software on more AMD hardware configurations, further optimizations around critical bottlenecks will boost performance more in future releases.

New Features Enabled for AMD Hardware

Blender 2.91.2 also rolls out some new features specifically aimed at leveraging capabilities present in modern AMD GPUs for future exploration and experimentation.

For example, uptake of variable rate shading support in AMD drivers has been rapid. This technique shifts rendering work between high and low precision shading rates dynamically based on pixel importance. Integrating and exposing hooks for variable rate algorithms in Blender allows AMD GPU owners to start testing its impacts on viewport and final render performance.

Additionally, the new experimental mesh shader capability unique to graphics cards implementing the RDNA 2 architecture can now be toggled within Blender. Mesh shading shifts more geometry processing directly onto the GPU to reduce CPU bottlenecks. While mesh shader support is extremely preliminary, AMD GPU owners can enable it to see if complex scenes handle topology changes faster.

Finally, for the first time Blender exposes integration with the OptiX AI-accelerated denoising library from Nvidia on AMD hardware. Traditionally limited to Nvidia cards, this GPU-powered denoising filter leverages AI processing to minimize noise in renders much faster than CPU methods. AMD GPU owners can now enable OptiX filters to speed up denoising performance.

Remaining Known Issues

While Blender 2.91.2 makes big strides improving AMD GPU compatibility, some known issues remain unresolved in this version.

Most notably, support for ray tracing features remains limited on AMD hardware. Complex effects like reflections, shadows, ambient occlusion, and global illumination are still software emulated. Tapping into dedicated ray tracing cores on RDNA 2 cards could accelerate these greatly. But the current experimental integration relies on an outdated Vulkan ray tracing extension no longer used in AMD driver updates.

Viewport performance for geometry nodes continues generating some artifacts and glitches when manipulating node trees interactively. The parallel nature of evaluating geometry node networks taxes even high-end AMD GPUs. Syncing viewport redraws better with topology changes should help resolve the issue.

Finally, physics-based fur and hair simulations tend to run slower on AMD cards compared to benchmarks on comparable Nvidia hardware. This seems to stem from inefficiencies in how workloads are balanced across compute queues. Improving scheduling and dispatch from Blender to the AMD driver should close the performance gap.

Testing Methodology

To quantify performance improvements across Blender versions, benchmark testing utilized a consistent methodology to enable direct comparisons between releases. Testing exercised common Blender workflows across multiple scene types and complexity scales.

The test equipment spanned a range of AMD cards from the RX 5700 XT through the latest RX 6900 XT to provide a realistic cross-section of hardware Blender users leverage today. Systems running Windows 10 or 11 paired these GPUs with sufficiently capable CPUs and RAM to prevent bottlenecks.

Standard benchmark scenes focused on viewport, render, simulation, and compilation workloads. These included the classic Blender BMW and Classroom scenes, the new Alpha Hippo scene, the Junk Shop scene, and several synthetic scenes stressing particle, smoke, and fur workloads.

Metrics gathered during the automated benchmarks runs include viewport frame rates, final render times, simulation bake times, and compile task durations. The open-source BlenderBot framework coordinated all testing and performance data consolidation.

Conclusion

The Blender 2.91 release in December 2021 brought huge improvements for AMD users, but critical crashes and bugs still impacted production use-cases. Blender 2.91.2 specifically targets the most grievous of these issues to dramatically improve the experience for AMD GPU owners across both consumer and professional applications.

Ongoing collaboration between the open-source Blender community and AMD driver engineers continues delivering performance optimizations as well. Early testing shows great promise that AMD GPUs can become first-class rendering solutions comparable to industry standard options.

Leave a Reply

Your email address will not be published. Required fields are marked *