Applications not using my GPU

Hello!

I need help with a little problem, so here it is:

My MSI Laptop is a hybrid/dual gpu system, running with a combination of a Nvidia RTX 2060 dedicated gpu, as well as a Mesa Intel UHD Graphics integrated gpu. Now, my PC is pretty good, so I was confused when I was only getting 80fps playing Minecraft. (Not to mention playing something more intensive). I looked into it, and found out that Minecraft was running only on my Intel UHD graphics, and not using my Dedicated GPU at all.

So, of course, I tried to fix it. I went through a couple manjaro wiki forums, and tried a couple of different things. Installing Nvidia-340x drivers didn’t work. Optimus Manager, although it sounds like something that would be interesting to set up, only ended up shutting off my monitor screen, as my monitor screen is plugged into my GPU, whereas my laptop screen is running off my Intel UHD. Re-installing Nvidia drivers didn’t work, but I’m not sure I did that right. Finally, following the directions here just shut off my laptop screen.

So I don’t know what to do from here, that’s why I’m asking you all. Does anyone know anything? If you need me to post any info from my system, Just ask me. I’ll be happy to help.


My Drivers Page:
image

My Nvidia X-Server Settings:


Any help is appreciated!

nvidia-smi came back with this:

image

Install the Hybrid Prime driver (seems to be done), and run your applications with the prime-run command to use the dedicated GPU for the application, so in theory, fictional example:

prime-run minecraft

1 Like

Hello!

I tried out the prime-run command, and while it did start Minecraft using my GPU, I was still getting really bad framerates. When I go to Hardware Configuration in manjaro settings manager and uninstall the hybrid drivers then install the video-nvidia driver, it causes my laptop screen (which is running off my Intel UHD Integrated GPU) to become black with a single line of text shown in the top left corner, but running Minecraft on my monitor that is plugged into my Nvidia GPU HDMI slot on ly laptop when I have the video-nvidia drivers installed can get me framerates in the 2000+, while running Minecraft using prime-run with hybrid drivers gets me framerates in the 60-140s. Is there any way to fix this?

I attempted unplugging my monitor and running minecraft using prime-run on just my laptop screen, and the fps went up to ~500 in the same conditions as the previous ~2000fps scenario. While this is better then when running with my monitor, I still think that this is not the full potential of what can be upgraded. Plus, I don’t want to have to only play using my laptop screen.

Output of commands:

glxinfo | grep OpenGL

prime-run glxinfo | grep OpenGL

1 Like

Here you go:

nomadical@jarvis ~]$ glxinfo | grep OpenGL
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel® UHD Graphics (CML GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 21.0.1
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6 (Compatibility Profile) Mesa 21.0.1
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 21.0.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:


[nomadical@jarvis ~]$ prime-run glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce RTX 2060/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 460.67
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6.0 NVIDIA 460.67
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 460.67
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:

The Prime Run command seem to work as intended.

The prime-run command does work, minecraft recognized that it was running off my Dgpu rather than my Igpu, but the problem was the framerate difference between using intel-nvidia hybrid drivers versus video-nvidia drivers. Video-nvidia drivers would stop my laptop screen from working, but my framerate would increase by ~1600fps

I don’t know hybrid setup enough to know what’s going on. Wait for someone else to answer I guess. From my point of view it works.

//EDIT: maybe open a new thread linking to this one, explaining the new situation (as this thread is actually now solved), with a comprehensive title so you may have better luck.

:wink:

I marked my own post as solution. You can remove the ‘solution’ mark if you think this thread is not solved.

Have you tried running Minecraft with prime-run in full-screen on the external monitor? Please also post the output of inxi -Gazy and xrandr --listproviders.

I have tried running minecraft on the external monitor in full screen, but F11 borderless full screen moves it over to my laptop screen, and I haven’t tried to get it to F11 full screen on my monitor.

Also, here’s the outputs:

[nomadical@jarvis ~]$ inxi -Gazy
Graphics:
Device-1: Intel UHD Graphics vendor: Micro-Star MSI driver: i915 v: kernel
bus-ID: 00:02.0 chip-ID: 8086:9bc4 class-ID: 0300
Device-2: NVIDIA TU106M [GeForce RTX 2060 Mobile] vendor: Micro-Star MSI
driver: nvidia v: 460.67 alternate: nouveau,nvidia_drm bus-ID: 01:00.0
chip-ID: 10de:1f15 class-ID: 0300
Device-3: Logitech HD Pro Webcam C920 type: USB
driver: snd-usb-audio,uvcvideo bus-ID: 1-4.3:7 chip-ID: 046d:082d
class-ID: 0102 serial:
Display: x11 server: X.Org 1.20.10 compositor: kwin_x11 driver:
loaded: modesetting,nvidia unloaded: intel,nouveau alternate: fbdev,nv,vesa
display-ID: :0 screens: 1
Screen-1: 0 s-res: 3840x1080 s-dpi: 96 s-size: 1013x285mm (39.9x11.2")
s-diag: 1052mm (41.4")
Monitor-1: eDP-1 res: 1920x1080 hz: 144 dpi: 128 size: 381x214mm (15.0x8.4")
diag: 437mm (17.2")
Monitor-2: HDMI-1-0 res: 1920x1080 hz: 60 dpi: 70
size: 698x392mm (27.5x15.4") diag: 801mm (31.5")
OpenGL: renderer: Mesa Intel UHD Graphics (CML GT2) v: 4.6 Mesa 21.0.1
direct render: Yes


[nomadical@jarvis ~]$ 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: 0x26f cap: 0x2, Sink Output crtcs: 4 outputs: 1 associated providers: 1 name:NVIDIA-G0

Try to do that somehow. That should enable unredirection, which should probably improve the performance.

Ok, I changed my default monitor to my external monitor and got it to fullscreen on my external monitor (running with prime-run). FPS still only topped out around 240fps with a consistent 40-120fps

Also if it makes a difference, every time I am playing minecraft and I receive a notification (the type that shows up in the Manjaro Notifaction Center), my minecraft lags significantly.

But can you expect having 2000+ FPS as you were claiming that earlier? I just doubt that you can game at 2000+ FPS even on a RTX 2060, on Minecraft.

While it is true that I achieved that 2000+ fps in an area of Minecraft that was relatively unpopulated, meaning my processor had less to load, it was an area where I could have a controlled amount of things around me, as to accurately measure the fps changes. If I were to go to somewhere with considerably more to load, the fps gap is more like this: prime-run gets ~90fps, no hybrid drivers gets ~850fps

So, it turns out that all I had to do was install Optimus-manager and disable my iGPU! This fixed the problem, and it forced my laptop monitor to use my GPU, meaning that I have better graphics on it too, and my computer fans are quieter.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.