← All ideas
  • Published 6 Feb 2021

Add GPU selection render flag

we can select the device in commandline but not precisely the choosen one in case of multi GPUs and/or CPUs, we need to be able to manage on what device we want to render this will allow renderfarm to deals with multi gpu rendering, with a gpu per task (result faster render most of time) and a better management

the flags can be : -deviceSel int (numbered by the system. for 8 GPU, it goes from 0 to 7)

100%

Development Status: Open

Upvote 9 Downvote 0
kaiz3rwork
6 Feb 2021

7 Comments

zhixson.xbdi

I really like this idea, and I think have proposed it myself once or twice.

We would probably need four commands: -rendering-type-set , -device-list , -device-enable , and -device-disable that would end up looking something like this

c:\> blender -device-list
CUDA:
- [0] CPU: i7-6700k
- [1] GPU: RTX 2070
- [2] GPU: GTX 1070
OPTIX:
- [0] GPU: RTX 2070

c:\> blender -rendering-type-set CUDA
c:\> blender -device-enable 1 2
c:\> blender -device-disable 0
1
kaiz3rwork Author

* @Zach Hixson * looks nice

arsa3d

wow this is 3 years old idea and still not implemented ?

vangel

Put it into the scene (perhaps Cycles render properties dialog) so it get used when farm rendering over Deadline.

zhixson.xbdi

* @vangel * The problem is it's pretty common to have different hardware in your workstation than on the render farm. Setting it through command line allows for each machine to be set differently

1
vangel

* @Zach Hixson * I must say windows is quite capable load balancing deadline blender GPU jobs on my workstation, non interfering with my work at all. So simply using all GPU or CPUs plus a fallback strategy like RTX->CUDA->CPU would be enough. Blender must be able to look automatically on every machine and see if it has RTX / CUDA or only CPU, Cycles renders really extremely equal on all three.

kaiz3rwork Author

* @vangel * totally disagree. this is not how renderfarm works. the renderfarm decide the hardware, not the software in use... Also, it should not be about windows / linux / apple. it needs to work the same way everywhere with the possibility to manage how many gpu / cpu we want per task.