You are not logged in.

#1 2021-02-15 07:41:58

phollox
Member
Registered: 2013-05-04
Posts: 61

Issues with NVIDIA as GPGPU

Hello community,

I have a laptop with a GPU that is intended as a mobile workstation, not a gaming computer. My GPU is an RTX2060 (gamers gonna hate). I followed the instructions on https://wiki.archlinux.org/index.php/GPGPU to set up a CUDA computational environment. I see some improvement in the performance on some python code, which led me to believe that the GPU was contributing into the workload. There was a also a noticeable drop in the battery life

My goal is to have the video drawn by the internal intel chipset. But having the GPU enabled for CUDA or opencl computations. I believe that providing the nvidia drivers makes the computer use it for video output.

I removed the nvidia call in the kernel line, and the performance of the code dropped to its pre GPGPU wiki procedure values. However, the battery has the same crappy performance.

How can I check what's my situation here? Is there any way to use the intel chipset for video, the GPU only for computation, and have a not so crappy battery life?


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#2 2021-02-15 11:40:27

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

My goal is to have the video drawn by the internal intel chipset. But having the GPU enabled for CUDA or opencl computations. I believe that providing the nvidia drivers makes the computer use it for video output.

Nope, you can configure how video gets output .

In order to help you details about your hardware / software setup are needed.

please post lspci -k and (as root) journalctl -b | grep -v audit .

Are you using X or wayland ?
If X please post xorg log .

journal and Xorg log can be very long, consider using  a pastebin client


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2021-02-15 22:05:40

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Thanks,

~/ lspci -k

00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
        Subsystem: Lenovo Device 3807
        Kernel driver in use: skl_uncore
00:01.0 PCI bridge: Intel Corporation 6th-9th Gen Core Processor PCIe Controller (x16) (rev 07)
        Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Mobile)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: i915
        Kernel modules: i915
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 07)
        Subsystem: Lenovo Device 382f
        Kernel driver in use: proc_thermal
        Kernel modules: processor_thermal_device
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
        Subsystem: Lenovo Device 3864
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
        Subsystem: Lenovo Device 3802
        Kernel driver in use: intel_pch_thermal
        Kernel modules: intel_pch_thermal
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
        Subsystem: Lenovo Device 3806
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
        Subsystem: Lenovo Device 3824
00:14.3 Network controller: Intel Corporation Wireless-AC 9560 [Jefferson Peak] (rev 10)
        Subsystem: Intel Corporation Device 0034
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi
00:15.0 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #0 (rev 10)
        Subsystem: Lenovo Device 3803
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:15.1 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #1 (rev 10)
        Subsystem: Lenovo Device 3804
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
        Subsystem: Lenovo Device 3810
        Kernel driver in use: mei_me
        Kernel modules: mei_me
00:17.0 SATA controller: Intel Corporation Cannon Lake Mobile PCH SATA AHCI Controller (rev 10)
        Subsystem: Lenovo Device 3808
        Kernel driver in use: ahci
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
        Kernel driver in use: pcieport
00:1d.5 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #14 (rev f0)
        Kernel driver in use: pcieport
00:1e.0 Communication controller: Intel Corporation Cannon Lake PCH Serial IO UART Host Controller (rev 10)
        Subsystem: Lenovo Device 3813
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:1f.0 ISA bridge: Intel Corporation HM470 Chipset LPC/eSPI Controller (rev 10)
        Subsystem: Lenovo Device 380e
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
        Subsystem: Lenovo Device 380f
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel, snd_soc_skl, snd_sof_pci
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
        Subsystem: Lenovo Device 3814
        Kernel driver in use: i801_smbus
        Kernel modules: i2c_i801
00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
        Subsystem: Lenovo Device 3827
01:00.0 VGA compatible controller: NVIDIA Corporation TU106M [GeForce RTX 2060 Mobile] (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: nvidia
        Kernel modules: nouveau, nvidia_drm, nvidia
01:00.1 Audio device: NVIDIA Corporation TU106 High Definition Audio Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
01:00.2 USB controller: NVIDIA Corporation TU106 USB 3.1 Host Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
01:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU106 USB Type-C UCSI Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: nvidia-gpu
        Kernel modules: i2c_nvidia_gpu
06:00.0 Non-Volatile memory controller: Micron Technology Inc Device 5410 (rev 01)
        Subsystem: Micron Technology Inc Device 0100
        Kernel driver in use: nvme
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
        Subsystem: Lenovo Device 38cd
        Kernel driver in use: r8169
        Kernel modules: r8169

Output of journalctl: http://ix.io/2PyX

I'm using X
/var/log/Xorg.0.log: http://ix.io/2PyZ

I saw many other errors and warnings there. Don't judge me. This machine is a work in progress

Thanks


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#4 2021-02-16 12:03:30

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

Some basic things first

Feb 15 22:46:39 legionfsalazar kernel: DMI: LENOVO 81SX/LNVNB161216, BIOS BHCN35WW 11/23/2019

Looks like you're somewhat behind in firmware [1] , do you still have windows on this laptop ?


Feb 15 22:46:39 legionfsalazar kernel: SRBDS: Vulnerable: No microcode

Please enable early microcode loading


[    17.885] (==) Using config file: "/etc/X11/xorg.conf"

Post the contents of that file please .

[    17.925] (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20200917
[    17.925] (II) intel(0): SNA compiled from 2.99.917-916-g31486f40

Those lines suggest you have xf86-video-intel installed.
That driver is mainly useful for older intel graphics (like pre-gen 4) , your graphics processor is from gen 9 (coffee lake) .
please remove xf86-video-intel .






[1] https://pcsupport.lenovo.com/us/en/prod … t-notebook


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#5 2021-02-17 00:39:53

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Thanks for the tips. Yes, I still have Windows. I will update firmware.

BIOS update issue

I'm editing this post from Ubuntu, which I installed for some reason. It installed its own GRUB, which pissed me off, but I left it, because it was not bothering me. Thank God I didn't removed it.

The new BIOS is not allowing to boot the EFI partition which I use to boot arch. That means that I can only boot arch from the GRUB version of Ubuntu, which is in a different drive and a different EFI partition. I was using a separate EFI for each OS, in an attempt to enable double boot and double hibernation. And arch is not booting correctly from Ubuntu's Grub. Not sure about the reason. Probably wrong kernel line params. X is not loading

I will probably have to chroot arch from ubuntu, and install GRUB in the same EFI partition of the nvme drive, which is the only one recognized by this new BIOS.

Hopefully it'll be fixed before the weekend.

xf86 driver removed. Microcode installed and enabled on the bootloader

Thanks again

/etc/X11/xorg.conf

Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        Screen      1  "Screen1" RightOf "Screen0"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath   "/usr/lib/xorg/modules"
        FontPath     "/usr/share/fonts/misc"
        FontPath     "/usr/share/fonts/TTF"
        FontPath     "/usr/share/fonts/OTF"
        FontPath     "/usr/share/fonts/Type1"
        FontPath     "/usr/share/fonts/100dpi"
        FontPath     "/usr/share/fonts/75dpi"
EndSection

Section "Module"
        Load  "glx"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option      "Device" "/dev/input/mice"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Monitor"
        Identifier   "Monitor1"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "Accel"                     # [<bool>]
        #Option     "AccelMethod"               # <str>
        #Option     "Backlight"                 # <str>
        #Option     "CustomEDID"                # <str>
        #Option     "DRI"                       # <str>
        #Option     "Present"                   # [<bool>]
        #Option     "ColorKey"                  # <i>
        #Option     "VideoKey"                  # <i>
        #Option     "Tiling"                    # [<bool>]
        #Option     "LinearFramebuffer"         # [<bool>]
        #Option     "HWRotation"                # [<bool>]
        #Option     "VSync"                     # [<bool>]
        #Option     "PageFlip"                  # [<bool>]
        #Option     "SwapbuffersWait"           # [<bool>]
        #Option     "TripleBuffer"              # [<bool>]
        #Option     "XvPreferOverlay"           # [<bool>]
        #Option     "HotPlug"                   # [<bool>]
        #Option     "ReprobeOutputs"            # [<bool>]
        #Option     "XvMC"                      # [<bool>]
        #Option     "ZaphodHeads"               # <str>
        #Option     "VirtualHeads"              # <i>
        #Option     "TearFree"                  # [<bool>]
        #Option     "PerCrtcPixmaps"            # [<bool>]
        #Option     "FallbackDebug"             # [<bool>]
        #Option     "DebugFlushBatches"         # [<bool>]
        #Option     "DebugFlushCaches"          # [<bool>]
        #Option     "DebugWait"                 # [<bool>]
        #Option     "BufferCache"               # [<bool>]
        Identifier  "Card0"
        Driver      "intel"
        BusID       "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "SWcursor"                  # [<bool>]
        #Option     "kmsdev"                    # <str>
        #Option     "ShadowFB"                  # [<bool>]
        #Option     "AccelMethod"               # <str>
        #Option     "PageFlip"                  # [<bool>]
        #Option     "ZaphodHeads"               # <str>
        #Option     "DoubleShadow"              # [<bool>]
        #Option     "Atomic"                    # [<bool>]
        Identifier  "Card1"
        Driver      "modesetting"
        BusID       "PCI:1:0:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen1"
        Device     "Card1"
        Monitor    "Monitor1"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

Last edited by phollox (2021-02-17 01:47:05)


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#6 2021-02-17 09:47:53

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

https://wiki.archlinux.org/index.php/Un … efibootmgr may help to change/add efi boot options.

As I sorta expected that xorg.conf looks like an autogenerated file, possibly from X -configure .
It hurts more then it brings, just rename or move it.

Last edited by Lone_Wolf (2021-02-17 09:48:10)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2021-02-17 10:20:57

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Lone_Wolf wrote:

As I sorta expected that xorg.conf looks like an autogenerated file, possibly from X -configure .
It hurts more then it brings, just rename or move it.

Yes, it is autogenerated. I believe I only have that one, and one touchpad file to set the gestures and tapping settings.

Thanks for the efibootmgr link. I'm also writing to Lenovo. Tried to play with boot options without success

Thanks again

Last edited by phollox (2021-02-18 22:06:43)


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#8 2021-02-18 05:56:36

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Managed to solve the BIOS issues with the efibootmgr, adding a new boot option to the menu. Thanks again for the tip
To sum up:
- BIOS updated
- xf86 intel driver uninstalled
- intel microcode is now being loaded during boot
- X11 config file has been renamed to /etc/X11/xorg.conf.old (the logfile is now on a different location)

My kernel line is still

BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=3094703c-f653-43d1-9631-b711140c136c rw loglevel=3 quiet resume=UUID=28bd90b7-2494-4911-84ca-0ffc95a21bf7 nvidia-drm.modeset=1

Do you need updated log and journal files after the suggested changes?

Last edited by phollox (2021-02-18 05:56:59)


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#9 2021-02-18 10:10:32

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

yes, please do.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#10 2021-02-18 21:58:32

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Here they are

$ lspci -k

00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
        Subsystem: Lenovo Device 3807
        Kernel driver in use: skl_uncore
00:01.0 PCI bridge: Intel Corporation 6th-9th Gen Core Processor PCIe Controller (x16) (rev 07)
        Kernel driver in use: pcieport
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 07)
        Subsystem: Lenovo Device 382f
        Kernel driver in use: proc_thermal
        Kernel modules: processor_thermal_device
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
        Subsystem: Lenovo Device 3864
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
        Subsystem: Lenovo Device 3802
        Kernel driver in use: intel_pch_thermal
        Kernel modules: intel_pch_thermal
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
        Subsystem: Lenovo Device 3806
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
        Subsystem: Lenovo Device 3824
00:14.3 Network controller: Intel Corporation Wireless-AC 9560 [Jefferson Peak] (rev 10)
        Subsystem: Intel Corporation Device 0034
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi
00:15.0 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #0 (rev 10)
        Subsystem: Lenovo Device 3803
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:15.1 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #1 (rev 10)
        Subsystem: Lenovo Device 3804
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
        Subsystem: Lenovo Device 3810
        Kernel driver in use: mei_me
        Kernel modules: mei_me
00:17.0 SATA controller: Intel Corporation Cannon Lake Mobile PCH SATA AHCI Controller (rev 10)
        Subsystem: Lenovo Device 3808
        Kernel driver in use: ahci
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
        Kernel driver in use: pcieport
00:1d.5 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #14 (rev f0)
        Kernel driver in use: pcieport
00:1e.0 Communication controller: Intel Corporation Cannon Lake PCH Serial IO UART Host Controller (rev 10)
        Subsystem: Lenovo Device 3813
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:1f.0 ISA bridge: Intel Corporation HM470 Chipset LPC/eSPI Controller (rev 10)
        Subsystem: Lenovo Device 380e
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
        Subsystem: Lenovo Device 380f
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel, snd_soc_skl, snd_sof_pci
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
        Subsystem: Lenovo Device 3814
        Kernel driver in use: i801_smbus
        Kernel modules: i2c_i801
00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
        Subsystem: Lenovo Device 3827
01:00.0 VGA compatible controller: NVIDIA Corporation TU106M [GeForce RTX 2060 Mobile] (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: nvidia
        Kernel modules: nouveau, nvidia_drm, nvidia
01:00.1 Audio device: NVIDIA Corporation TU106 High Definition Audio Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
01:00.2 USB controller: NVIDIA Corporation TU106 USB 3.1 Host Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
01:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU106 USB Type-C UCSI Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: nvidia-gpu
        Kernel modules: i2c_nvidia_gpu
06:00.0 Non-Volatile memory controller: Micron Technology Inc Device 5410 (rev 01)
        Subsystem: Micron Technology Inc Device 0100
        Kernel driver in use: nvme
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
        Subsystem: Lenovo Device 38cd
        Kernel driver in use: r8169
        Kernel modules: r8169
# journalctl -b | grep -v audit

http://ix.io/2PTY

~/.local/share/xorg/Xorg.0.log

http://ix.io/2PU0

Thanks


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#11 2021-02-19 11:28:15

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

Your intel graphics are missing from all those logs, just the nvidia videocard is seen.

Check the firmware settings, maybe the intel iGPU is disabled.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#12 2021-02-19 18:09:40

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Lone_Wolf wrote:

Check the firmware settings, maybe the intel iGPU is disabled.

There are 3 options on the BIOS for video output: Internal (intel only), Discrete (nVidia only) and Switchable (both active). I have it set to Switchable


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#13 2021-02-19 22:00:49

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

Then we need to verify both are present .

Post

$ lspci -k
$ lsmod | grep i915
$ lsmod | grep nvidia

Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#14 2021-02-20 22:54:05

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

EDIT: I posted the output of the commands before, but then I realized that, for some reason, the BIOS had the nvidia GPU as the only graphical option. Hence, the i915 was not listed in lsmod. So, I'm changing the outputs with the correct BIOS setting

$ lspci -k

00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
        Subsystem: Lenovo Device 3807
        Kernel driver in use: skl_uncore
00:01.0 PCI bridge: Intel Corporation 6th-9th Gen Core Processor PCIe Controller (x16) (rev 07)
        Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Mobile)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: i915
        Kernel modules: i915
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 07)
        Subsystem: Lenovo Device 382f
        Kernel driver in use: proc_thermal
        Kernel modules: processor_thermal_device
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
        Subsystem: Lenovo Device 3864
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
        Subsystem: Lenovo Device 3802
        Kernel driver in use: intel_pch_thermal
        Kernel modules: intel_pch_thermal
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
        Subsystem: Lenovo Device 3806
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
        Subsystem: Lenovo Device 3824
00:14.3 Network controller: Intel Corporation Wireless-AC 9560 [Jefferson Peak] (rev 10)
        Subsystem: Intel Corporation Device 0034
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi
00:15.0 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #0 (rev 10)
        Subsystem: Lenovo Device 3803
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:15.1 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #1 (rev 10)
        Subsystem: Lenovo Device 3804
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
        Subsystem: Lenovo Device 3810
        Kernel driver in use: mei_me
        Kernel modules: mei_me
00:17.0 SATA controller: Intel Corporation Cannon Lake Mobile PCH SATA AHCI Controller (rev 10)
        Subsystem: Lenovo Device 3808
        Kernel driver in use: ahci
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
        Kernel driver in use: pcieport
00:1d.5 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #14 (rev f0)
        Kernel driver in use: pcieport
00:1e.0 Communication controller: Intel Corporation Cannon Lake PCH Serial IO UART Host Controller (rev 10)
        Subsystem: Lenovo Device 3813
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:1f.0 ISA bridge: Intel Corporation HM470 Chipset LPC/eSPI Controller (rev 10)
        Subsystem: Lenovo Device 380e
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
        Subsystem: Lenovo Device 380f
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel, snd_soc_skl, snd_sof_pci
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
        Subsystem: Lenovo Device 3814
        Kernel driver in use: i801_smbus
        Kernel modules: i2c_i801
00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
        Subsystem: Lenovo Device 3827
01:00.0 VGA compatible controller: NVIDIA Corporation TU106M [GeForce RTX 2060 Mobile] (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: nvidia
        Kernel modules: nouveau, nvidia_drm, nvidia
01:00.1 Audio device: NVIDIA Corporation TU106 High Definition Audio Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
01:00.2 USB controller: NVIDIA Corporation TU106 USB 3.1 Host Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
01:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU106 USB Type-C UCSI Controller (rev a1)
        Subsystem: Lenovo Device 3ffd
        Kernel driver in use: nvidia-gpu
        Kernel modules: i2c_nvidia_gpu
06:00.0 Non-Volatile memory controller: Micron Technology Inc Device 5410 (rev 01)
        Subsystem: Micron Technology Inc Device 0100
        Kernel driver in use: nvme
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
        Subsystem: Lenovo Device 38cd
        Kernel driver in use: r8169
        Kernel modules: r8169

$ lsmod | grep i915

i915                 2715648  7
i2c_algo_bit           16384  1 i915
intel_gtt              24576  1 i915
video                  53248  2 ideapad_laptop,i915
drm_kms_helper        274432  2 nvidia_drm,i915
cec                    69632  2 drm_kms_helper,i915
drm                   569344  10 drm_kms_helper,nvidia_drm,i915

$ lsmod | grep nvidia

i2c_nvidia_gpu         16384  0
nvidia_drm             65536  2
drm_kms_helper        274432  2 nvidia_drm,i915
drm                   569344  10 drm_kms_helper,nvidia_drm,i915
nvidia_uvm           1167360  0
nvidia_modeset       1232896  3 nvidia_drm
nvidia              34144256  90 nvidia_uvm,nvidia_modeset

I see the problem here. Ii might be that I'm loading nvidia on the kernel line. I will reboot without that, and try again
I don't see any difference without the nvidia-drm.modeset=1 on the kernel line. Not sure if there should be any

Thanks

Last edited by phollox (2021-02-20 23:48:22)


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#15 2021-02-21 11:43:51

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

I don't see any difference without the nvidia-drm.modeset=1 on the kernel line. Not sure if there should be any

That setting is useful, but has impact once the nvidia-drm kernel mkodule is loaded.

A common problem lately is that systems boot so fast , GUI applications want to use the videocard before its fully initialised.

To ensure the kernel modules needed for videocards are initialised early in boot process (usually referred to as early KMS start) , they need to be added to initramfs.
On archlinux that's done by configuring mkinitcpio to include needed modules in initramfs.

I suggest you configure early KMS start for BOTH intel and nvidia.
See https://wiki.archlinux.org/index.php/Ke … _KMS_start
and https://wiki.archlinux.org/index.php/NV … de_setting


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#16 2021-02-21 23:39:42

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Done it. Entries for nVidia and i915 on /etc/mkinitcpio.cfg and on the kernel line.
/etc/mkinitcpio.cfg

MODULES=(i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm)

kernel line

linux   /boot/vmlinuz-linux root=UUID=3094703c-f653-43d1-9631-b711140c136c rw  loglevel=3 quiet resume=UUID=28bd90b7-2494-4911-84ca-0ffc95a21bf7 i915.modeset=1 nvidia-drm.modeset=1

Same output as before...
roll


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#17 2021-02-22 11:47:47

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

Time to investigate further.

fresh journal and xorg log please.

also the output of

$ xrandr --listproviders
$ glxinfo -B #comes with mesa-demos

How are you starting X : xinit/startx or a display manager (gdm , sddm, xdm to name a few) ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#18 2021-02-22 13:58:17

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

First of all, I want to thank you @Lone_Wolf for taking the time to work on my request. It has been, as always, a learning experience. That's one of the multiple reasons I have to love Archlinux and it's community. I really appreciate it

Outputs:

# journalctl -b | grep -v audit

http://ix.io/2QlU

$ .local/share/xorg/Xorg.0.log

http://ix.io/2QlV

$ xrandr --listproviders 
Providers: number : 2
Provider 0: id: 0x43 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 1 associated providers: 1 name:modesetting
Provider 1: id: 0x23e cap: 0x2, Sink Output crtcs: 4 outputs: 5 associated providers: 1 name:NVIDIA-G0
$ glxinfo -B                       
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Intel (0x8086)
    Device: Mesa Intel(R) UHD Graphics 630 (CFL GT2) (0x3e9b)
    Version: 20.3.4
    Accelerated: yes
    Video memory: 3072MB
    Unified memory: yes
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) UHD Graphics 630 (CFL GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.3.4
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.3.4
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.3.4
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Last edited by phollox (2021-02-22 13:59:11)


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

#19 2021-02-23 14:31:48

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Issues with NVIDIA as GPGPU

Things look good sofar.

Your setup is now that of an nvidia optimus system using both cards. CUDA should be able to use the nvidia card without further configuration.
Other uses of the nvidia card (like rendering videos) require specific commands .

The nvidia card will draw power, but it should be low as it's basically idling until cuda or other applications request it to do something.

In order to shut down the nvidia card completely and only activate it when needed, bbswitch is your best bet.
https://archlinux.org/packages/communit … /bbswitch/

It doesn't work on all systems / cards , but it's your best chance. Try it.


Sidenote :

disregard comments that claim nvidia optimus / bbswitch / bumblebee are only used on laptops.

The technology used for motherboard / chipset / processor determines whether a system is an nvida optimus system, not the formfactor.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#20 2021-02-24 17:59:15

phollox
Member
Registered: 2013-05-04
Posts: 61

Re: Issues with NVIDIA as GPGPU

Thanks. I'll run some test to check if CUDA is working and it's performance against no CUDA.

The Bumblebee bbswitch thing is interesting, as this machine has a terrible battery life

Thanks again for all the help.

On hindsight, not sure if this thread should be moved to Laptop issues instead of Multimedia

Last edited by phollox (2021-03-01 10:55:15)


I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)

Offline

Board footer

Powered by FluxBB