You are not logged in.
Pages: 1
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
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
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
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 .
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
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
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
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
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
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
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
~/.local/share/xorg/Xorg.0.log
Thanks
I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)
Offline
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
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
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
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
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
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...
I divide by zero, multiple times per day. Also, I don't believe in tipping
Arch + i3wm (still learning)
Offline
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
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
$ .local/share/xorg/Xorg.0.log
$ 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
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
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
Pages: 1