As some have already stated, adaptive sampling is not primarily intended to speed up render times.
Adaptive sampling stops sampling areas of the scene which have reached the set noise threshold.
If no part of the scene is below this set threshold then there will be no speed gain. On the contrary, it will be a bit slower than uniform sampling because of the additional noise estimation calculations during sampling.
All it does is to stop sampling converged parts and thus allowing all remaining samples to be distributed to the more difficult - still non converged scene parts.
One advantage is that the final noise is more evenly distributed throughout the scene, helping some denoising algorithms.
Yes itâs a way to prevent unnecessary sampling of pixels with good convergence, but there is a side effect when samples are high: much faster rendering.
5-10x slower with deformation motion blur is not unusual, and that is why I wrote the Embree integration. Itâs in master, but not enabled for the builds from blender.org. Youâll need to either compile it for yourself or find builds with Embree that Iâm sure are floating around somewhere (graphicall maybe).
Another option is increasing âBVH Time Stepsâ in a regular Blender build, but that can come with a significant increase in memory usage.
No. Itâs not psychic Cycles, it still will have to find those easy to miss samples with brute force. This patch for adaptive sampling does not change where samples go, it only changes the number of samples.
This CPU+GPU tiling artifact is exactly what I expected and mentioned in the patch tracker. When you go to higher quality settings (lower threshold, more samples), it should eventually disappear.
Tackling this properly will take a little work, since either weâll have to put a damper on GPU performance by forcing it to render in the same small increments as the CPU does (as opposed to crunching a large number of samples at once) or multi-device setups will need to communicate their capabilities to each other and agree on a common denominator of how many samples to render at a time.
@J_the_Ninja this is probably the same thing youâre seeing, my guess is that those are different GPUs or only some of them are connected to a display?
Thank you for your reply Stefan!
Its a great news, I was afraid its already using your code already no chance for better performance!
I ll look on the custom buildâŚany chance devs will âpublishâ or enable Embree optimizations in blender build soon?
Well, itâs working as expected. Adaptive sampling means it will stop sampling early when a pixel has converged beyond the threshold. In this case, thereâs still plenty of noise everywhere, so everything receives plenty of samples.
You could just set the sample count to something like 16384, adaptive min samples to the smallest sample count you can tolerate (4? 64?) and then use the adaptive threshold to select the desired noise level. The closer to 0, the more noise is reduced.
For this example, Adaptive Min Samples was set to 4, (max) samples were 8192 and only Adaptive Threshold was changed:
Yes. In fact, adaptive sampling, as it is implemented right now, with a given sample count will at best give you exactly as much noise as without, but never less noise. It will in most cases however do that in significantly less time.
Which means that you can increase the sample count appropriately and in the end get less noise at equal render time.
Hi and yes, can verify render stop after a few tiles with same error message.
I had to rollback to hash 22bc9fb4a9e to get Adaptive Sampling patch to work. This was 2. April or something.
I have also OIDN patch enabled.
Other files are working fine.
Hi, your threshold setting is very high, check 0 for automatic or 0,05.
As your test file have more than 50% âblankâ areas it should be very good for AS.
If you post the .blend I can test.
Will add some example images later on.
Im not really into 2.8 yet so I decided to back port the adaptive sample patch from master to 2.79 latest source in case people want to use it on non blender 2.8:
No mate, Im avoiding 2.8 as much as possible right now until itâs more stable (as I also hate a lot of the interface change, for me Iâll only move over to 2.8 when I absolutly have too).
I might do a build of 2.8 for people but would need alot more people to ask before I do that.