XServer with Dopamine & GCP

Am following the instructions for Training an Obstacle Tower agent using Dopamine and the Google Cloud Platform. Am at the setting up XServer part, issuing this sudo /usr/bin/X :0 & export DISPLAY=:0 gives this error:
(==) Using config file: "/etc/X11/xorg.conf"(==) Using system config directory "/usr/share/X11/xorg.conf.d"(EE) Fatal server error:(EE) no screens found(EE)

Have I missed a step on setting up a screen??

Hi @karl

This is likely because the GPU is not configured correctly. Be sure to find the correct BusID for the GPU, and add it to the correct section of the xorg.conf. Different GPUs will have different BusIDs. https://github.com/Unity-Technologies/obstacle-tower-env/blob/master/examples/gcp_training.md#set-up-xserver

Thanks for reply @arthurj
querying nvidia xconfig gives:

nvidia-xconfig --query-gpu-info
Number of GPUs: 1
GPU #0:
  Name      : Tesla T4
  UUID      : GPU-ef8e0ec7-f854-99ab-6745-45318731153d
  PCI BusID : PCI:0:4:0
  Number of Display Devices: 0 

And xorg.conf includes:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Tesla T4"
    BusID          "PCI:0:4:0"
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "UseDisplayDevice" "None"
    SubSection     "Display"
        Virtual     1280 1024
        Depth       24

Any help much appreciated.

Hi @karl

Can you try restarting your instance, and running the commands to start xorg again?

hi @arthurj
did sudo reboot
then reissued, got:

karl101@tensorflow-1-vm:~$ sudo /usr/bin/X :0 &
[1] 1474
karl101@tensorflow-1-vm:~$ export DISPLAY=:0
X.Org X Server 1.19.2
Release Date: 2017-03-02
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.9.0-8-amd64 x86_64 Debian
Current Operating System: Linux tensorflow-1-vm 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.9.0-8-amd64 root=UUID=e823158e-f290-4f91-9c3d-6f33367ae0da ro net.i
fnames=0 biosdevname=0 console=ttyS0,38400n8 elevator=noop scsi_mod.use_blk_mq=Y
Build Date: 03 November 2018  03:09:11AM
xorg-server 2:1.19.2-1+deb9u5 (https://www.debian.org/support) 
Current version of pixman: 0.34.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Feb 27 19:10:56 2019
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Fatal server error:
(EE) no screens found(EE) 
Please consult the The X.Org Foundation support 
         at http://wiki.x.org
 for help. 
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE) Server terminated with error (1). Closing log file.

the log includes:

[   107.635]    Module class: X.Org Server Extension
[   107.636] (II) NVIDIA GLX Module  410.72  Wed Oct 17 20:11:21 CDT 2018
[   108.299] (EE) NVIDIA(GPU-0): UseDisplayDevice "None" is not supported with GRID
[   108.299] (EE) NVIDIA(GPU-0):     displayless
[   108.299] (EE) NVIDIA(GPU-0): Failed to select a display subsystem.
[   108.375] (EE) NVIDIA(0): Failing initialization of X screen 0
[   108.375] (II) UnloadModule: "nvidia"
[   108.375] (II) UnloadSubModule: "glxserver_nvidia"
[   108.375] (II) Unloading glxserver_nvidia
[   108.375] (II) UnloadSubModule: "wfb"
[   108.375] (II) UnloadSubModule: "fb"
[   108.375] (EE) Screen(s) found, but none have a usable configuration.
[   108.375] (EE)
Fatal server error:

Hey Karl, I think I know what your issue is. In Xorg.conf, remove “PCI” from the BusID, so that it is something like this:

BusID "0:4:0"

Try that and Xorg should start. If it doesn’t, you can also try this line:

sudo nvidia-xconfig -a --use-display-device=None --virtual=1280x1024 --enable-all-gpus --separate-x-screens

This should auto-fill in the info into Xorg.conf.

Thanks for that, tried both (with reboots) but still same error message.
Using the last command the BusID line has been completely removed from Xorg.conf

Hi, I got the same issue with Xserver. I tried to replace “X:Y:Z” by info provided by VM,

but it does not work. I tried to reboot the machine and saw how it would go, but still got a notification that no screens found (EE)

I am stuck in this situation for a couple of days. Any recommendation would be very appreciated13

Hi @emmanguyen

A user on the Gitter chat recommended “try to delete “Option “UseDisplayDevice” “None”” line from Section “Screen” at xorg.conf, works for me.” Let us know if that works for you.


Any suggestion on this? I also encounter into this issue.

Thanks, it works for me too

I went to the config file and delete a line of “UserDisplayDevice” in “Screen” section.
After that I rebooted a machine and run a command 'nvidia-smiand gotXserver` at the bottom of the window

1 Like

This solution to the same problem works and for me too! Thank you!

Glad to hear it works for you all!

thanks @arthurj , works :slight_smile: