CPU + GPU

Discussion related to the LuxCore functionality, implementations and API.
Post Reply
User avatar
MetinSeven
Posts: 125
Joined: Sun Aug 18, 2019 10:19 am
Location: Netherlands
Contact:

CPU + GPU

Post by MetinSeven » Thu Nov 05, 2020 7:46 am

Hi,

I was wondering: would a combined CPU + GPU power mode be possible to implement in Luxcore?

Cycles has it for CUDA, but not for OptiX yet.

It would be great if the CPU + GPU implementation would include smart render power distribution, to avoid the GPU being idle after finishing its tasks while the CPU is still rendering its last task.
visualizer • illustrator • animator • 3D designer — metinseven.nl

User avatar
Sharlybg
Donor
Posts: 2528
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: CPU + GPU

Post by Sharlybg » Thu Nov 05, 2020 8:07 am

MetinSeven wrote:
Thu Nov 05, 2020 7:46 am
Hi,

I was wondering: would a combined CPU + GPU power mode be possible to implement in Luxcore?

Cycles has it for CUDA, but not for OptiX yet.

It would be great if the CPU + GPU implementation would include smart render power distribution, to avoid the GPU being idle after finishing its tasks while the CPU is still rendering its last task.
It is already the case. you just have to select your cpu when you're in GPU mode like this :
CPU+GPU LUC.jpg
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA

User avatar
Dade
Developer
Posts: 4891
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: CPU + GPU

Post by Dade » Thu Nov 05, 2020 8:09 am

MetinSeven wrote:
Thu Nov 05, 2020 7:46 am
I was wondering: would a combined CPU + GPU power mode be possible to implement in Luxcore?
It is already available since ever :?:
MetinSeven wrote:
Thu Nov 05, 2020 7:46 am
It would be great if the CPU + GPU implementation would include smart render power distribution, to avoid the GPU being idle after finishing its tasks while the CPU is still rendering its last task.
LuxCore doesn't suffer of Cycles problems with tile sizes and CPU/GPU load distribution because it is natively a progressive render. Even when when using tile rendering, the problem has been solved by sending multiple tiles to render to the devices (or rendering multiple passes of the same tile).
Support LuxCoreRender project with salts and bounties

User avatar
MetinSeven
Posts: 125
Joined: Sun Aug 18, 2019 10:19 am
Location: Netherlands
Contact:

Re: CPU + GPU

Post by MetinSeven » Thu Nov 05, 2020 8:11 am

Aha, nice! :)

I guess indicating it as CPU + GPU in the 'Device' rollout would make that clear.
visualizer • illustrator • animator • 3D designer — metinseven.nl

User avatar
B.Y.O.B.
Developer
Posts: 3912
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: CPU + GPU

Post by B.Y.O.B. » Thu Nov 05, 2020 8:14 am

The tooltip says "Use GPU(s) and optionally the CPU". Granted, nobody has time to read all the tooltips, and it's not obvious behind which tooltip the relevant information is all the time.

User avatar
MetinSeven
Posts: 125
Joined: Sun Aug 18, 2019 10:19 am
Location: Netherlands
Contact:

Re: CPU + GPU

Post by MetinSeven » Thu Nov 05, 2020 8:17 am

:)

I really like your render settings wizard approach to determine which settings are relevant. Maybe that could also be used for material creation, such as effective SSS?
Last edited by MetinSeven on Thu Nov 05, 2020 9:43 am, edited 2 times in total.
visualizer • illustrator • animator • 3D designer — metinseven.nl

User avatar
MetinSeven
Posts: 125
Joined: Sun Aug 18, 2019 10:19 am
Location: Netherlands
Contact:

Re: CPU + GPU

Post by MetinSeven » Thu Nov 05, 2020 9:37 am

I just discovered that Bidir + Metropolis has a noticeable advantage over Path + Sobol + Light Tracing + Photon GI Cache + Caustic Light Cache.

Would it be possible to accelerate Bidir + Metropolis using the GPU?
visualizer • illustrator • animator • 3D designer — metinseven.nl

User avatar
Sharlybg
Donor
Posts: 2528
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: CPU + GPU

Post by Sharlybg » Thu Nov 05, 2020 10:09 am

MetinSeven wrote:
Thu Nov 05, 2020 9:37 am
I just discovered that Bidir + Metropolis has a noticeable advantage over Path + Sobol + Light Tracing + Photon GI Cache + Caustic Light Cache.

Would it be possible to accelerate Bidir + Metropolis using the GPU?
There are some interesting example of bidirectional engine running on GPU here :

Bidirvcm

https://youtu.be/ipbtJ64n6Yg

Older 2015

https://youtu.be/jUIOQm4UIuo

So it is possible. but not an easy task.But you can also speed up Bidir engine With online learning wich is far more efficient and use in production renderer Like disney hyperion / corona render and maybe weta Manuka but not sure about the last one.
And with online learning the speed up benefit also regular path tracing and even PGI.

hyperion alita

Image

Paper :

https://jo.dreggn.org/home/2019_sigcourse_guiding.pdf

There is even a new paper wich is more robust fast and easier (still lot of work) to implement but can't find the link.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA

User avatar
MetinSeven
Posts: 125
Joined: Sun Aug 18, 2019 10:19 am
Location: Netherlands
Contact:

Re: CPU + GPU

Post by MetinSeven » Thu Nov 05, 2020 10:16 am

Nice!

Yeah, I worked with Renderman for a while, which also has a bidirectional VCM engine. The results are quite nice, but once Blender 2.8 was released, Renderman support was left behind in Blender 2.79.

Early 2021 there will be renewed Renderman support for Blender though, so Luxcore devs, just implement a VCM engine or GPU support for Bidir + Mis before that. ;)
visualizer • illustrator • animator • 3D designer — metinseven.nl

CodeHD
Posts: 405
Joined: Tue Dec 11, 2018 12:38 pm
Location: Germany

Re: CPU + GPU

Post by CodeHD » Thu Nov 05, 2020 12:21 pm

B.Y.O.B. wrote:
Thu Nov 05, 2020 8:14 am
The tooltip says "Use GPU(s) and optionally the CPU". Granted, nobody has time to read all the tooltips, and it's not obvious behind which tooltip the relevant information is all the time.
The info if CPU is used for light tracing could be added to the "pretty" string like in the image below :?:
tmp.png
tmp.png (11.49 KiB) Viewed 812 times
tmp2.png

Post Reply