0
$\begingroup$

I'm trying to render a cycles scene. On a computer with an RX480 card it renders fine with (almost) 100% GPU utilization. The exact same scene is rendered slower on a computer with 8 (!) Titan-X GPUs . GPU-Z reports almost no utilization on those GPUs, somewhere between 0 and 2%.

Initially I had the same problem with the RX480. I played around a bit with the settings and suddenly Blender was reloading the render kernels and then everything worked. It seems I am not able to force blender on the Titan machine to do the same?

I tried to disable all but 1 GPU on the Titan machine but it didnt change a thing: Rendering time is the same, utilization on all GPUs the same. (Which makes me think that the GPUs are not really rendering anything)

I downloaded the benchmark scene with the 2 BMWs and got a rendering time of about 3:27, GPU utilization still below 5%.

Is there a way to force a render kernel reload/recompile? Are there any other options I could try?

One last thing: The Tesla machine is accesed via RDP session (windows 10 x64) which means I had to put an opengl32.dll file into the installation directory to allow Blender to start in legacy mode. While this makes Blender itself reaaaally slow, I dont think it should impact CUDA performance in any way.

I am using Blender 2.79 RC2 on both machines.

I would upload the Scene, however it is almost 300MB in size due to some funny dude (me) applying all the modifiers.

$\endgroup$
  • $\begingroup$ did you ever try to use the machine locally, instead of using rdp? $\endgroup$ – m.ardito Dec 6 '17 at 17:00
  • $\begingroup$ unfortunatley that is not an option as the machine is in a server room where almost no one has access to. $\endgroup$ – Hafnernuss Dec 6 '17 at 18:00
  • $\begingroup$ vnc? if nothing else works, you could use that machine as a remote one with network render addon... $\endgroup$ – m.ardito Dec 6 '17 at 19:13
  • $\begingroup$ are you sure the remote connection is the cause of the problem? All other CUDA software works fine via RDP. The only problem I see with RDP is the lack of hardware openGL support but thats not needed for rendering, right? $\endgroup$ – Hafnernuss Dec 7 '17 at 10:40
  • $\begingroup$ not sure, but imho it could depend on how the local graphic system is interfaced with the (remote) ui, vnc is just remoting frames, while rdp is a much more efficient process and could assume you don't need gpu power when accessing from remote... but that should be true for any program, not just blender, so you can test other gpu crunching programs... for this you should ask on other sites, perhaps... see this: serverfault.com/questions/880922/… $\endgroup$ – m.ardito Dec 7 '17 at 10:53
1
$\begingroup$

As said above in comments, I suspect(ed) RDP is doing much more that just remoting frames, and it could tweak the remote session to not use GPU, at least not with blender cycles... and by default. There are similar questions on other QA sites (https://serverfault.com/questions/880922/gcloud-machine-doesnt-see-gpu-over-rdp).

RDP is a highly efficient Remote Desktop Protocol, not just a remote video/audio frame repeater: it creates a new session, which can have more or less features, but imho it could try to "optimize" the viewer experience and, for some reason, not expose the GPU to the session.

VNC or Teamviewer are different: they don't create a new session, they "just" transmit an existent session "frames" (but the session is running as it was local, with all its features), trying to optimize the transmitted video/audio for the remote transmission...

It's probably a somewhat more "neutral" way of remoting a session, but also RDP could be much more efficient, and give better performances if you can work with the session "features" it allows/exposes to your client.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.