For a longer while I'm having multiple GPU's on a Linux desktop. Reason behind it is quite simple - I'm using it for crypto mining!

And I must say it was a big problem to use them at once. Just wanted my GeForce GTX 1060 to be a daily driver as I use my desktop for work and AMD Radeon RX 550 card I was dedicated for mining only. There are many guides on the web but nothing was working for me. Solution was quite simple but it took me a while to do it!

My desktop is latest Linux Mint 19.1 based on Ubuntu so my first thought was that it should work out of the box but it didn't.

I installed NVIDIA drivers using ubuntu-drivers as it was the quickest way to go (at the time of writing I use driver version: 418.56) and it was running smooth and stable.

┌──╼ 40.57 ╾──╼ 23:40 ╾──╼ ╾╼ ╾──╼ bart ─ at ─ desktop ╾──╼ ~ ╾─╼ 
└─╼ glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 3072 MB
    Total available memory: 3072 MB
    Currently available dedicated video memory: 2349 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 1060 3GB/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 418.56
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 418.56
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 418.56
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

After I'd plugged in the AMD card everything was still working fine until I installed amdgpu drivers.

root@desktop:~# lspci |grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 3GB] (rev a1)
02:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Lexa PRO [Radeon RX 550/550X] (rev c7)

First installation and a reboot caused my cinnamon environment to switch to a software rendering mode and when I was looking on the logs there was lots of core dumps caused by having two drivers installed at the same time.

My problem was solved when AMD released amdgpu-pro-19.10!
To make it working I had to remove previous drivers (was using 18.50) and install it using two switches:

  • --opencl=legacy          Install legacy OpenCL support
  • --headless                   Headless installation (only OpenCL support)
root@desktop:~# cd /home/bart/Downloads/amdgpu-pro-19.10-785425-ubuntu-18.04/
root@desktop:/home/bart/Downloads/amdgpu-pro-19.10-785425-ubuntu-18.04# ./amdgpu-install --opencl=legacy --headless
...
...

This was all I need to have both running at the same time.

root@desktop:# cat /sys/kernel/debug/dri/1/amdgpu_pm_info 
Clock Gating Flags Mask: 0x3fbcf
        Graphics Medium Grain Clock Gating: On
        Graphics Medium Grain memory Light Sleep: On
        Graphics Coarse Grain Clock Gating: On
        Graphics Coarse Grain memory Light Sleep: On
        Graphics Coarse Grain Tree Shader Clock Gating: Off
        Graphics Coarse Grain Tree Shader Light Sleep: Off
        Graphics Command Processor Light Sleep: On
        Graphics Run List Controller Light Sleep: On
        Graphics 3D Coarse Grain Clock Gating: Off
        Graphics 3D Coarse Grain memory Light Sleep: Off
        Memory Controller Light Sleep: On
        Memory Controller Medium Grain Clock Gating: On
        System Direct Memory Access Light Sleep: Off
        System Direct Memory Access Medium Grain Clock Gating: On
        Bus Interface Medium Grain Clock Gating: Off
        Bus Interface Light Sleep: On
        Unified Video Decoder Medium Grain Clock Gating: On
        Video Compression Engine Medium Grain Clock Gating: On
        Host Data Path Light Sleep: On
        Host Data Path Medium Grain Clock Gating: On
        Digital Right Management Medium Grain Clock Gating: Off
        Digital Right Management Light Sleep: Off
        Rom Medium Grain Clock Gating: On
        Data Fabric Medium Grain Clock Gating: Off

GFX Clocks and Power:
        1750 MHz (MCLK)
        1183 MHz (SCLK)
        214 MHz (PSTATE_SCLK)
        625 MHz (PSTATE_MCLK)
        968 mV (VDDGFX)
        26.137 W (average GPU)

GPU Temperature: 65 C
GPU Load: 100 %

UVD: Disabled

VCE: Disabled

And its doing nice job now!

[2019-05-02 23:47:14] Stats Uptime: 3 days, 09:56:32
[2019-05-02 23:47:14] GPU 0 [66C, fan 36%] cnr: 458.0 h/s, avg 454.7 h/s, pool 414.9 h/s a:1020 r:1 hw:0
[2019-05-02 23:47:14] Total                cnr: 458.0 h/s, avg 454.7 h/s, pool 414.9 h/s a:1020 r:1 hw:0