E-Cycles - Faster rendering for CUDA GPUs and better AI denoising

(mathieu) #365

You’re welcome :slight_smile: Customers using Volumetrics seem to be very happy with nearly 7x speedup. As long as your GPU has enough memory, it’s good.
I’ll try to make a test myself with volumetric and particles, but actually those cases where it’s so fast make it hard to believe, so I keep them under the hood. Most of the time, using the manual options of E-Cycles I get 8x speedup (see the videos at about 1min per frame), but I prefer to speak only about the out of the box gains.


(mathieu) #366

I’m happy it works as expected in your case :slight_smile: Rendering 20% less sample for the same quality is always good to take. I’ll try to make it automatic. I’m looking for the right heuristic to make it work in 99% of the cases.


(Frank) #367

First, bliblubli has a coding and Blender building course which is beyond amazing.

Second, I’m a 2D pencil and paper-brush and canvas, traditional artist and not a 3D wizard like every single amazing artist on this forum.
I’m super new to Blender source coding in general and have only been doing it for a few weeks. I know a little bit on how to write 2.79 addons but not anything super complex.

What he and his course have taught me is that it is very easy to maintain your changes and keep them updated with Master branch, even on a daily basis in worst case so there is really no maintenance issue for those that know how to do it.

Even if this stuff was never put into Master for whatever reason, we can still code our changes to work in whatever the current Master branch is. bliblubli made this easier to understand than you may think and it is plain to see how easy it really is. Mind opening.

Here is what I can do with my branch.
Export an entire Blender 3D scene including cameras, empties, complex 3D amimations and sims, 3D mesh objects with pbr materials and textures along with Cycles and or Eevee render passes into a 2.5D/3D, layer based compositing software and have everything line up and to scale.

It is almost like having a linked 3D scene in two different software where renders from either software can be seamlessly composited together. This makes it a million times better for creative reasons but also for post work such as re-lighting and or materials tweaks, mask creation, id passes and just about anything you can think of can be performed in either software and things will just simply match up.

This stuff is like magic and I’m personally super glad that bliblubli is doing this and imo should keep doing this. :slight_smile:


(giacometti777) #368

I think your identity and STRICTLY PERSONAL sense of ethos are keeping you from seeing the real dynamics in an unbiased way. Your intentions are superb but you emotionally find the funding methods for E-cycles unscrupulous because they don’t align with your own efforts and you are working backward from that feeling. You are projecting onto all customers that a major part of why we bought in is the promise that these developments will be included in master. I have no idea why you are comfortable making that assumption. Some of us just need to render faster, right now. There is absolutely no guarantee these changes will be included in master (unfortunately) and anyone who has followed the scene at all regarding scrambling distance/fracture modifier/any other interesting branch understands this. And no Mathieu is under NO obligation to go through the process of getting the code committed officially. That is a completely separate task from making a cool, valuable tool. But maybe someone else will push it through or improve on it - that happens all the time.

The bottom line is you can’t continue to assume the average person who would find this thread and pay for performance is ignorant. We know this is the open source world and things get a bit fractured and crazy. But they also get monumentally diverse and creative. And at this point you are not the bastion of righteousness you think you are. You are stifling the diversity of the scene. Live and let live and actually listen to the people responding to you. Its one of the hardest things in life to do but I know you can do it.


(mathieu) #369

I uploaded an alternative build without dithered sobol but all the other improvements, because it somehow gave problem in normal sobol too. It’s only in extreme corner cases, so if you don’t encounter the problem, you can just keep the original february update.
@rawalanche Here is a video rendered in full HD with motion blur of the scene 02 from Evermotion :slight_smile: Does anyone know a free service to upload videos without reencoding?

1 Like

(rawalanche) #370

It looks a bit too smeary. I wonder if that’s just the low framerate or if you have used shutter longer than 0.5 frames (which you never should) :slight_smile: Despite that, it still looks better than one without motion blur. I would not bother about re-encoding and just upload them all to YouTube, their compression isn’t bad. Also, h264 movs over mkv :wink:

1 Like

(mathieu) #371

It’s 25fps. I first used 0.5 and had the impression the stuttering is still there. But I guess it’s also due to bad V-Sync in the player. Thanks for the tip :slight_smile: What is bad with mkv? I’ll try 60fps with low motion blur to see if it’s better.


(rawalanche) #372

It will always stutter at 25FPS, because it doesn’t very well align with 60Hz monitors. To get really smooth picture you’d have to render at 30FPS. 25 or 24FPS will only look good on 120Hz TVs :slight_smile:

But going over 0.5 (180°) shutter is called shutter crime. It makes everything look uncanny and fake. You never see it in movies because faster than 180° shutter isn’t physically possible with rolling shutter cameras. It is possible with never cameras, but should not be used anyway or you’ll get that mexican ugly soap opera look :slight_smile:

So as a rule of thumb, every time you do motion blur, simply keep the length at 0.5 frames, and you are certain you are getting correct motion blur.

As for MKV, it’s the format that’s way less supported out of the box, and also youtube may have hard or slow time transcoding it. Where as if you upload h264 mov, it will be really easy for youtube to crunch, and for anyone you send it to to play. It has also great quality/size ratio. For some reason, I always think of mkv as that wonky codec pirated movies are distributed in :smiley:


(mathieu) #373

It seems 60Hz is still the most widely used indeed. It’s a mess with old 50Hz here (PAL), new 144Hz (who had the idea? It’s a round multiple of 36 and 72, so not a single video on earth) .
I thought new cameras can read the full sensor at once, but I know what you mean with the look :smiley:
Note that mkv is just the container, I used H264, but at very low compression level. Which was useless with the heavy motion blur :wink:



Nearly 1 min per frame, awesome, can’t wait to see it with intel denoiser, will be even faster than Eevee I guess :smiley:


(mathieu) #375

In the mean time, you can convert to pfm and indeed get impressive results at 16spp already.

1 Like

(kalish) #376

@bliblubli That sounds pretty awesome, the results are impressive!!! I was wondering, the full course version will head to something similar in terms of performance? As a dev myself i like to mess with C++ but actually never opened Blender source. Is worth more investing in the course or the build itself? I’m asking because i can’t afford both, the coin conversion in my country are huge.


(mathieu) #377

yes, the course gives all the recipes to get a build even faster than E-Cycles, as you can make it a perfect fit for your CUDA GPU(s). If you already know how to code, some part may sound very simple, but you can then get a very good kick start, which can help a lot in such a huge code base.
And as a bonus compared to the builds, you get some cool new modifiers and links to cool patches :slight_smile: People taking part to the course can also get 50% on E-Cycles (so 5€/month) if you want both the knowledge and the convenient updates, support and bug fixing. If you want 12% off, use this link for the course :wink:

1 Like

(mathieu) #378

By the way, for those interested by the course, I’ll do some final polishing this week so you have some days left to get it at the reduced price.


(mathieu) #379

The bug with the lower noise algorithm (dithered sobol) is fixed. I’ll upload a new build soon :slight_smile:

1 Like

(cgstrive) #380

Very impressive updates bliblubli! I’m curious if these accelerations also apply to viewport previews as it’s where it could make the biggest difference for a someone working with asset creation. I’m also curious if there are any patches that can accelerate the pre-render preparation (e.g BHV building) so data could be thrown on gpu faster for viewport preview. Several big textures and heavy model kills interactivity. Lastly I suppose there is nothing on Denoising viewport render? After all this is what all other render engines do (vray, mantra, arnold etc) - denoise initial steps so artist has clear image what one is working on. Tnx


(mathieu) #381

Some of the improvements make viewport faster, but viewport is using progressive rendering, which is very slow and nearly abandoned. The overhead of updates, etc. make the optimizations invisible, but a way to remove this overhead is on my todo-list. I have very alpha code that make viewport 4x faster with 100% same output as master, about 8x faster with some tricks. When it’s ready, it will go in a feature update.
For big textures, you can already use the persistent image option in master iirc.
I’m working on making the BVH build time and CPU rendering faster, I think it could be released soon.


(Lsscpp) #382

Is that still using progressive rendering? Or is it somehow tiled rendering under the hood? If not, do you think it would be possible to achieve?


(Lalaland) #383

This sounds very interesting, is it possible to try this on 2.79 for a monthly price ?

1 Like

(mathieu) #384

The monthly offer is only for 2.8. You can try on 2.8 one month, if it works as you expect, take 2.79.

1 Like