I have a Linux remote machine running Ubuntu 20.04, mounting a Geforce Titan X. When I run a Pytorch script that requires GPU power, everything seems to work (the GPU is very much active as shown in nvidia-smi). However, when I try to run any other application, the GPU is not doing anything. I have tried from the VNC to run the classic glxgears and glxheads and they use llvmpipe. A Unity3D scene also doesn't use any GPU capability. Rendering is slow.
This machine is quite far and someone else set it up for me. I am not sure a monitor is actually attached to it. I have assumed it is because I am connected through VNC (and I naively thought that you need a monitor for that!). Appaently, I don't need a monitor for using VNC, which led me to think that the GPU needs a monitor attached to it to render stuff.
So I have several questions
- Is it true that I don't need a monitor to run VNC on a remote machine?
- Does a GPU needs a monitor to render stuff? If a machine doesn't have a monitor, could this explain why the GPU doesn't seem to get used?
- Which way to go to solve this? I have read that VirtualGL may be useful in my case. Is this correct?