CPU: AMD Ryzen 7 3800X @ 3.9 GHz
RAM: G.Skill DDR4 2x8GB 3600MHz CL16
Mobo: MSI B450M PRO-VDH MAX
Operating system: Windows 10 Enterprise LTSC
Graphics card: Gigabyte Aorus RX 580 8GB
GPU Driver: Adrenalin 20.4.2
Broken: 2.79, 2.80, 2.81, 2.82a, 2.83, 2.90
Worked: none so far
Short description of error
Cycles fails to compile all the kernels to render the viewport or the final render and crashes when using GPU Compute. This happens regardless of the scene geometry. I'm not providing any .blend files because the default cube is enough to cause the crash.
After selecting the GPU Compute option and Cycles for the viewport render the top left of the screen shows information that it's loading kernels, after which the console window shows that it's throwing Access Violation exceptions, either in the KERNELBASE.dll file or amdocl64.dll file.
The viewport gets glitchy and after a while of Cycles attempting to compile all the kernels for the OpenCL render it gives up, throws one more exception and the application crashes.
It's pretty inconsistent, because sometimes it does manage to render the scene although it's pretty uncommon but still throws these Access Violation exceptions. It's also inconsistent due to the fact that sometimes it throws it from KERNELBASE.dll and sometimes amdocl64.dll.
What is consistent is the fact it always throws this exception when compiling the split_bundle OpenCL program.
Exact steps for others to reproduce the error
- Go to User Preferences->System and select OpenCL.
- Check the RX 580.
- Open the Render Properties panel and select Cycles with the Supported feature set and set it to GPU Compute.
- Blender should now crash in a matter of a minute or two.
Note that I also tried running the LuxCore renderer and I ran into the same issue. The graphics card is not faulty and I'm using the latest drivers.
Funnily enough, LuxMark uses LuxCore and somehow manages to complete the benchmark with the graphics card using OpenCL.