Screen flicker while using MUX laptop in dgpu mode (NVIDIA hybrid)

So I have a lenovo legion y740, with an i7-9750h and a 2070 max-q. My laptop has a MUX switch that lets me switch between

Dedicated GPU mode (laptop runs only on the nvidia card for better performance, Intel igpu is turned off )

Hybrid mode (igpu + dgpu is turned on, helps in saving battery life) Now With proprietary drivers installed. I have no problem running on hybrid mode, everything works fine But when I go to my bios and turn on dgpu mode, arch boots, but the second GPU wokload is even slightly strained (like say a 1080p60 video) the screen starts flickering heavily. Even without strain flickering is less frequent but still happens.

I had a look at https://wiki.archlinux.org/title/Hybrid_graphics And only the first part of the page offers any info about laptop that HAVE a MUX switch. I looked at how to solve screen flicker by forcing full composition pipeline and that did nothing: tps://wiki.archlinux.org/title/NVIDIA/Troubleshooting#Avoid_screen_tearing

I also looked at changing DRM modset, and only changed it in the config file ( I didn’t do the latter half) and that too did nothing, but I wasn’t sure if following through with it fully would solve screen tear, and honestly also wasn’t 100℅ sure how to go about it: https://wiki.archlinux.org/title/NVIDIA … de_setting If anybody could please shed some light on the above, telling me what i did wrong and what I should do, and links to related posts too would be much appreciated!

I don’t own hardware with an NVIDIA graphics card but it would also help if you tell us which DE you are running, then I’m sure the community can help you further. :wink:

And, again welcome to the forum.

Hi,thanks for the prompt response! I am using plasma-kde with X11.

Okay, perhaps this article can shed some light on the issue

Hi, so I have already tried this. AFAIK, prime, bumblee, optimus switch and optimus manager were all made for muxless laptops. If I boot into my laptop with the igpu turned on, all of these work.

But with my laptop, when I turn off the igpu from the bios, these don’t do anything.

I also asked on the telegram and tried this but to no avail.

Oh and I’d also like to add, windows too had this problem with my laptop last year around august, but they fixed it with a driver update and its been working fine ever since.

Are you using the dkms version of the drivers?

Edit:

@Dcoldburn Please post up your inxi -Fxxxza --no-host

It will help a lot in diagnosis.

System:    Kernel: 5.12.9-arch1-1 x86_64 bits: 64 compiler: gcc v: 11.1.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=9064fa36-dd71-43e3-bd16-964d235e8c8b rw quiet loglevel=3 
           nowatchdog 
           Desktop: KDE Plasma 5.22.0 tk: Qt 5.15.2 wm: kwin_x11 vt: 1 dm: SDDM Distro: EndeavourOS base: Arch Linux 
Machine:   Type: Laptop System: LENOVO product: 81UH v: Lenovo Legion Y740-15IRHg serial: <filter> Chassis: type: 10 
           v: Lenovo Legion Y740-15IRHg serial: <filter> 
           Mobo: LENOVO model: LNVNB161216 v: SDK0Q55722 WIN serial: <filter> UEFI: LENOVO v: BVCN14WW(V1.10) date: 05/26/2020 
Battery:   ID-1: BAT1 charge: 32.1 Wh (58.0%) condition: 55.3/57.0 Wh (97.1%) volts: 11.9 min: 11.5 model: SMP L17M3PG2 
           type: Li-ion serial: <filter> status: Unknown cycles: 57 
CPU:       Info: 6-Core model: Intel Core i7-9750H bits: 64 type: MT MCP arch: Kaby Lake note: check family: 6 
           model-id: 9E (158) stepping: A (10) microcode: EA cache: L2: 12 MiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 62431 
           Speed: 800 MHz min/max: 800/4500 MHz Core speeds (MHz): 1: 800 2: 3953 3: 3012 4: 1976 5: 1081 6: 800 7: 800 8: 800 
           9: 1019 10: 801 11: 800 12: 800 
           Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled 
           Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable 
           Type: mds mitigation: Clear CPU buffers; SMT vulnerable 
           Type: meltdown mitigation: PTI 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling 
           Type: srbds mitigation: Microcode 
           Type: tsx_async_abort status: Not affected 
Graphics:  Device-1: NVIDIA TU106BM [GeForce RTX 2070 Mobile / Max-Q] vendor: Lenovo driver: nvidia v: 465.31 
           alternate: nouveau,nvidia_drm bus-ID: 01:00.0 chip-ID: 10de:1f50 class-ID: 0300 
           Device-2: Acer SunplusIT Integrated Camera type: USB driver: uvcvideo bus-ID: 1-7:5 chip-ID: 5986:2113 
           class-ID: 0e02 
           Display: x11 server: X.org 1.20.11 compositor: kwin_x11 driver: loaded: nvidia unloaded: fbdev,modesetting,vesa 
           alternate: nouveau,nv resolution: <missing: xdpyinfo> 
           Message: Unable to show advanced data. Required tool glxinfo missing. 
Audio:     Device-1: Intel Cannon Lake PCH cAVS vendor: Lenovo driver: snd_hda_intel v: kernel 
           alternate: snd_soc_skl,snd_sof_pci_intel_cnl bus-ID: 00:1f.3 chip-ID: 8086:a348 class-ID: 0403 
           Device-2: NVIDIA TU106 High Definition Audio vendor: Lenovo driver: snd_hda_intel v: kernel bus-ID: 01:00.1 
           chip-ID: 10de:10f9 class-ID: 0403 
           Sound Server-1: ALSA v: k5.12.9-arch1-1 running: yes 
           Sound Server-2: JACK v: 0.125.0 running: no 
           Sound Server-3: PulseAudio v: 14.2 running: yes 
           Sound Server-4: PipeWire v: 0.3.30 running: yes 
Network:   Device-1: Intel Wireless-AC 9560 [Jefferson Peak] vendor: Rivet Networks Killer driver: iwlwifi v: kernel 
           bus-ID: 00:14.3 chip-ID: 8086:a370 class-ID: 0280 
           IF: wlan0 state: up mac: <filter> 
           Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Lenovo driver: r8169 v: kernel 
           modules: r8168 port: 3000 bus-ID: 3f:00.0 chip-ID: 10ec:8168 class-ID: 0200 
           IF: enp63s0 state: down mac: <filter> 
Bluetooth: Device-1: Intel Bluetooth 9460/9560 Jefferson Peak (JfP) type: USB driver: btusb v: 0.8 bus-ID: 1-14:6 
           chip-ID: 8087:0aaa class-ID: e001 
           Report: This feature requires one of these tools: hciconfig/bt-adapter 
Drives:    Local Storage: total: 2.75 TiB used: 11.28 GiB (0.4%) 
           SMART Message: Unable to run smartctl. Root privileges required. 
           ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: MZVLB1T0HALR-000L2 size: 953.87 GiB block-size: 
           physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 rotation: SSD serial: <filter> rev: 5L1QEXA7 scheme: GPT 
           ID-2: /dev/sda maj-min: 8:0 vendor: Seagate model: ST2000LX001-1RG174 size: 1.82 TiB block-size: physical: 4096 B 
           logical: 512 B speed: 6.0 Gb/s rotation: 5400 rpm serial: <filter> rev: SDM1 scheme: GPT 
Partition: ID-1: / raw-size: 953.36 GiB size: 937.32 GiB (98.32%) used: 11.28 GiB (1.2%) fs: ext4 dev: /dev/nvme0n1p2 
           maj-min: 259:2 
           ID-2: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%) used: 280 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 
           maj-min: 259:1 
Swap:      Alert: No Swap data was found. 
Sensors:   System Temperatures: cpu: 53.0 C mobo: N/A 
           Fan Speeds (RPM): N/A 
Info:      Processes: 250 Uptime: 1h 38m wakeups: 1 Memory: 15.55 GiB used: 1.49 GiB (9.6%) Init: systemd v: 248 
           tool: systemctl Compilers: gcc: 11.1.0 Packages: pacman: 1044 lib: 227 flatpak: 0 Shell: Bash v: 5.1.8 
           running-in: konsole inxi: 3.3.03

This was taken in a clean install of endeavour os on dedicated GPU mode.
I have changed nothing pertaining to nvidia.
When i tried all listed suggestions, I was on arch.
I wanted to clean install and try separately on endeavour which I’ll do tomorrow.

Tip: you can use program eos-log-tool for sending logs to a pastebin service and then show the address here. This will make posts shorter.

Also you can surround any output with lines of three backticks (```), it will be easier to read.

I’m not completely sure if @Dcoldburn installed Endeavour, I saw this issue also on the Arch forum.
https://bbs.archlinux.org/viewtopic.php?id=267029

2 Likes

It was posted at Garuda and Manjaro as well.

@Dcoldburn - What distro are you actually using? And if it is actually Endeavour. . . Why post at all the other forums as well for help? That’s a very very odd thing to do when reaching out for help.

Edit: I realized at the very end of his last post after the inxi he said it was Arch and is going to install Endeavour tomorrow.

1 Like

The endeavour installer was breaking for me so, I decided to install arch to try out all of your suggestions but I was planning on switching to either garuda or endeavour a day later and decided on endeavour.
Also I apologize for spamming the same issue on 3 forums, I’ve had this issue for a while now and even after a lot of hunting, didn’t find a post that matches my problem and a solution that works. I initially posted only on the arch forums, but when nobody replied after a day and a half (its still unanswered) , I decided to simply increase the odds of somebody finding this post and being able to help out.
PS: I have endeavour installed right now and am going to try all aforementioned suggestions step by step and then update all my posts.

My reaction was actually meant for @manuel who suggested you to use the eos log tool for posting logs over here.
We don’t mind if you are running pure Arch or any other arch-based distro to post over here.

Oh, okay!

I’m a bit concerned with this issue. . . Although it must have gotten sorted out since you then said:

If it was installler issue that needs fixing by EOS devs - it should be noted and flagged to be fixed. Or was it just something on your side that you were able to solve?

ALSO: If you’re on Endeavour now - @manuel 's suggestion for using the eos-log-tool should now be applicable.

@Dcoldburn Was the installer breaking or did it take longer than you expected?

Depends if you take taking 70 minutes for an install as broken or not.

Okay so i tried everything here to the dot. Including forcing full composition pipeline. Did nothing. My screen continues to flicker.

Interesting observation, even though the article said igpu will break after following the above, it still lets me boot in / no black screen.
Optimus manager does nothing while in dgpu mode.
I have dkms drivers installed.
I am running plasma KDE with X11.
here is the output of `inxi -Fxxxza --no-host’ : https://pastebin.com/gLZVzfen

Most likely this was a bad mirror issue, but we are working on a lot of improvements and we will inform everyone very soon on this.

Granted that the install was long in your case, but when someone says the installer is broken, I take that as that the installer didn’t start in the first place and you couldn’t get past the start screen of the installer. :wink:

Yes, my issue was not so much the installer as the flickering that I get when running on the dgpu. Is there anything else that I can try?
Seems hard to believe that I am the first one to face this issue.