November 3, 2018

Hetzner's EX51-SSD-GPU with GTX 1080

I’ve had a good experience with Hetzner’s GTX 1080 enabled EX51-SSD-GPU dedicated server. Using Debian 9.5, and having made no additional changes to the instance’s baseline configuration, this post details how to get the instance configured for running kernels on the attached GPU.


  • $ apt update
  • $ apt install lshw gcc build-essential linux-headers-`uname -r\`
  • $ lshw -C display
    • Use the output to fill out the NVIDIA Drivers Download form. In this case: “GeForce”, “GeForce 10 Series”, “GeForce GTX 1080”, “Linux 64-bit”
  • Download the generated link; in this case:
    • $ wget http://us.download.nvidia.com/XFree86/Linux-x86_64/410.73/NVIDIA-Linux-x86_64-410.73.run
  • $ chmod +x NVIDIA*.run
  • $ ./NVIDIA*.run
  • You can ignore warnings about the absence of X and the installer’s inability to install 32 bit compatibility drivers.
  • Hit “No” when asked to update X configuration file.

CUDA Toolkit

  • $ wget https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_410.48_linux
  • $ chmod +x cuda*linux
  • $ ./cuda*linux
  • Hit “No” when asked to install the NVIDIA driver; this is either the same or an older version of the driver installed above.
  • Hit “Yes” to install both the toolkit and code samples in their default locations along with symlink.
  • $ vi .bashrc
    • Append PATH=$PATH:"/usr/local/cuda-10.0/bin"
    • Append LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"/usr/local/cuda-10.0/lib64"
  • Log out and in again, confirm values of $PATH and $LD_LIBRARY_PATH are correct.

Running Kernels

  • $ cd ~/NVIDIA*Samples/
  • $ make -j4
  • $ cd bin/x86_64/linux/release
  • Run enough of the binaries to convince yourself that all is working properly.