Community
Arnold GPU Forum
General discussions about GPU rendering with Arnold.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Arnold GPU - NaN / Zero value pixels

10 REPLIES 10
Reply
Message 1 of 11
am_wilkins
707 Views, 10 Replies

Arnold GPU - NaN / Zero value pixels

Good day,

 

In recent render testing, I've noticed that the Arnold GPU engine is generating zero value pixels / NaN's compared to the CPU engine.

Is this a known issue and anyway to prevent this from happening?

 

There is just one "Area Light" in the scene, nothing camera side. So there are some dark values, but the Arnold CPU engine doesn't appear to have as much of a problem with this.

 

Overall render example:

nan_issue_overall_example_01.jpg

 

Arnold CPU - Higher exposure (Nuke)

nan_arnold_cpu.jpg

 

Arnold GPU - Higher exposure (Nuke)

You could be able to see large patches of pure black values.

Additionally, I sampled a pixel in the center of the dragon, which shows the different between CPU above and GPU below.

nan_arnold_gpu.jpg

 

All the best,

Amwilkins

10 REPLIES 10
Message 2 of 11
thiago.ize
in reply to: am_wilkins

I see the black pixels, but what makes you suspect there's a nan? Nans should trigger options.error_color_bad_pixel which by default is blue, not black. If you made it black, can you make it blue again just so it's more obvious this is a nan and not some other issue?

On the GPU, what is the camera AA set to? If you increase the AA, do these black pixels go away, or are there more of them?

Message 3 of 11
am_wilkins
in reply to: thiago.ize

Hi Thiago,

 

Apologies—"NaN" was probably the technically incorrect term, but yes I mean pure black zero values which appear all over the Arnold GPU render in patches.

 

The render settings are:
AA_Min: 3, AA_Max: 26, Threshold: 0.001

 

I haven't noted additional AA samples changing the result, but will do some more testing and let you know.

 

 

All the best,

Amwilkins

 

 

Message 4 of 11
thiago.ize
in reply to: am_wilkins

What happens if you raise the AA_min? Just for testing purposes, try something large, like AA_min=6 to see if that helps. What can sometimes happen is if all the AA_min samples at that pixel and the surrounding pixels have no noise, then the adaptive sampler will assume it's supposed to be like that and stop sampling.

Message 5 of 11
am_wilkins
in reply to: thiago.ize

Sure, here's another test with settings:

 

GPU Engine

AA_Min: 6, AA_Max: 40, Threshold: 0.001

 

Before: (previous post settings)

01.jpg

After: (above settings-higher min and max AA)

02.jpg

 

Looks like your theory is correct...the result is much better, not yet perfect though.

Since I changed the Min and Max AA I'm not sure which improved the result more but will test that tomorrow and may post more findings.

 

Thank you.

Amwilkins

Message 6 of 11
am_wilkins
in reply to: am_wilkins

Hi a gain,

 

Just confirming that it was indeed the Min AA samples which needed to be higher. (Max AA made no difference)

 

Raising the Min AA from the initial 3 to around 10 was required to remove majority of the zero pixel value patches—however there were still some pixels remaining even at a Min AA of 10.

Min AA 10Min AA 10

 

 

Amwilkins

Message 7 of 11
thiago.ize
in reply to: am_wilkins

Thanks for confirming. Since this metal dragon is reflecting a pitch black background, it's not surprising it's going to have regions where most reflections only see the black background and the adaptive sampler assumes that is the expected result. I just want to caution you that this is not a GPU specific result. This finding is scene specific. You might find some CPU scenes require min AA of 8 and other GPU scenes can get by with min AA of 2. I suspect CPU is getting by with a lower min AA because you're using diffuse and specular samples of more than 1 on CPU, while GPU is fixed to 1?

Message 8 of 11
am_wilkins
in reply to: thiago.ize

No problem.

Yeah I'd like to do another round of tests with an additional dome light or something to reflect camera side, but I wanted to keep my test conditions very lean and clinical.

 

I suspect CPU is getting by with a lower min AA because you're using diffuse and specular samples of more than 1 on CPU, while GPU is fixed to 1?
Ok cool, I wasn't sure if GPU sampler was set to 1 or 2 on the sub-samples. Since in Houdini at least, the sub-samples stay visible (greyed out) and set to the default of 2. It's not very obvious they'd be set to 1 by default.

 

What strikes me as interesting, is that across Arnold, Karma, Vray & Redshift testing—only Arnold appears to have this problem in this scene.

 

 

Thanks,

Amwilkins

Message 9 of 11
niscatmi
in reply to: am_wilkins

Howdy!
Any recent developments on this front? I have a simple car scene that exhibits this exact issue. The scene is lit by an HDRi skydome. In some reflective parts I see black spots when rendering on GPU, but no issues for CPU. Notice the headlight.
For what is worth, my machine specs are - CPU: Ryzen 5960x; GPU: 2 x RTX3090; 128 Gb RAM

Message 10 of 11
niscatmi
in reply to: am_wilkins

Hi!

I have this issue as well, in a simple scene lit by an HDRi skydome light.
Any recent news about this?

Message 11 of 11
am_wilkins
in reply to: niscatmi

Hi niscatmi,

Sorry for the late reply.

Unfortunately I ran out of time to continue testing on this front, however I didn't find a solution at the end of the day. Other than trying to minimize the issue with extra min AA samples or light sources.

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums