Multi-GPU support for Eevee
This would probably be one for further down the road, but something I would like to see is multi-GPU support for Eevee.
There are 3 ways I can think of doing this:
-
Do it like most game engines do and have one GPU render the top and one GPU render the bottom of a frame. This might speed things up a bit, and is pretty close to how cycles already works, but it might not actually be that efficient.
-
Have each GPU work on different frames. Depending on how Eevee is set up, this might not be possible, but if it is I would imagine this would provide the biggest speed boost.
-
Simply allow the user to choose which GPU Eevee uses in the preferences / properties panel. The user could then just open 2 instances of Blender and render to the same folder as if they were using multiple machines. While a bit of a workaround, this seems like the easiest to implement.
1 Comment
I was thinking exactly the same thing these days. Maybe there is a technical reason why Blender cannot send one frame (or one half) to one GPU and another frame or half to the other GPU, but if there was a way to achieve that it would cut render times by half. If it can't be done for one frame so be it, because honestly the difference is not that great, but when rendering animations that take hours or days, if that can be cut to half the time, it would be amazing.
Windows allows to have more than one instance of Blender open, so it's just a matter of telling instance 1 to use GPU #1 and instance 2 to use GPU #2, as if they were two individual machines.