Newbie questions about hybrid Nvidia and Intel GPU drives + TUTORIAL

Since manjaro wiki is down and arch wiki is a bit too technical and straight forward without explaining basic stuff, I can’t find any simple info about the drivers.

I have i3 processor (few years old) and nvidia GeForce GT 635M card.
When I type mhwd -li, it shows only:
video-hybrid-intel-nvidia-bumblebee

However in my manjaro settings gui window I see two categories:

  1. 3rd gen core processor graphic controller
  2. GF108 [GeForce GT 635M]

and a lot of drivers (most of them is repeated in both categories)

video-hybrid-intel-nvidia-bumblebee (showed as installed)
video-hybrid-intel-nvidia-340xx-bumblebee
video-hybrid-intel-nouveau-bumblebee
video-nvidia
video-nvidia-340xx
video-nvidia-304xx
video-nouveau
video-nv
video-vesa

It’s a bit confusing so here are my questions:

  1. I always though I just have nvidia card so why this i3 graphic controller? I know it’s built into the processor but does it matter if there is dedicated card on board?
  2. Does having i3 (or i5 or i7) and nvidia means that I automatically have hybrid gpu?
  3. If I have hybrid gpu, do I have to run bumblebee or can switch to, let’s say: video-nvidia-340xx? Will it work?
  4. What are the differences between proprietary drivers like video-hybrid-intel-nvidia-bumblebee and video-hybrid-intel-nvidia-340xx-bumblebee or video-nvidia-340xx?
    Few months ago I tried to switch (with manjaro settings gui) to video-nvidia-340xx and made my system unbootable (didn’t know back then I can access tty so I just reinstall system). A year ago I run linux mint and I was able to use video-nvidia-340xx there without problem so I tried it on manjaro without thinking too much and had bad results. Now I’m cautious and want to know more before changing any gpu driver.
  5. Does having video-hybrid-intel-nvidia-bumblebee instead pure video-nvidia-340xx mean I use fully nvidia card and can run 3d games or do I rather need video-nvidia-340xx for best performance?
  6. Is there are perks or cons of using either video-hybrid-intel-nvidia-bumblebee or video-nvidia-340xx (assuming I can run correctly one of the other)?

Thanks

2 Likes
  1. This is called Hybrid Graphics. It matters … especially if you want the best power usage and experience.
  2. As long as you have an integrated chip plus another standalone GPU ^ that is the definition.
  3. You can technically disable one and use the other. With obvious consequences … through sometimes making them get along can be a pain.
  4. The versions pertain to different versions that you might want if you have a specific card model … whereas nouveau is the opensource driver for nvidia.
  5. This is the idea of a properly configured hybrid setup - low power when thats all you need … turn on the standalone for your 3D performance and all that.

You are running proprietary-nvidia+intel bumblebee right now and that might be the best way to go. I know you mentioned difficulty with the archwiki but theres some easy info on their page for bumblebee.

3 Likes

Ok, so if I understand it correctly, for best performance in games it’s better to switch to video-nvidia-340xx but overall in system it’s better to use video-hybrid-intel-nvidia-bumblebee (at least for the sake of power consumption)?

It’s late so at the moment just two new questions arise:

  1. how to find out which standalone nvidia driver will work for me? I tried several months ago 340 one and got burned (although it was running fine in mint) so maybe 304 will be better?
  2. I believe I saw somewhere that there is a possibility to make a certain program (like Steam) to run a different driver then system does. Does it means I can have second driver installed and not active on manjaro? Preferably bumblebee for system and standalone driver for steam.

No, I’m not saying that at all. What I’m saying is that bumblebee will allow you to make sure that your GPU will be used for games if it is set up properly. There is no need to switch to the nvidia-only driver.

Ah ok. Then in such case what does it mean “setup properly”?

I gave you the link already. You are using bumblebee. Good. As per wiki heres some package instructions for install:

bumblebee - The main package providing the daemon and client programs.

mesa - An open-source implementation of the OpenGL specification. xf86-video-intel - Intel driver. nvidia or nvidia-340xx or nvidia-304xx - Install appropriate NVIDIA driver. For more information read NVIDIA#Installation.

For 32-bit (Multilib must be enabled) applications support on 64-bit machines, install:

lib32-virtualgl - A render/display bridge for 32 bit applications. lib32-nvidia-utils or lib32-nvidia-340xx-utils or lib32-nvidia-304xx-utils - match the version of the 64 bit package. lib32-mesa-libgl and make sure that lib32-nvidia-libgl is not installed

You might already have some of those packages which is fine.

It may also be necessary to add your user to the bumblebee group and enable the service.

When you are done you can use commands like optirun or primusrun to launch something using bumblebee like you want.
Such as optirun glxgears -info to test.

Then you could take advantage of this:

Steam has fortunately added support for launching games using your own custom command. To do so, navigate to the Library page, right click on the selected game, click Properties, and Set Launch Options. Steam replaces the tag %command% with the command it actually wishes to run. For example, to launch Team Fortress 2 with primusrun and at resolution 1920x1080, you would enter:

primusrun %command% -w 1920 -h 1080

2 Likes

Thanks!

Maybe because English is not my native language or maybe I’m not too tech oriented as most of linux users, or maybe just because I’m newbie, wiki articles are often confusing and not fully comprehensible to me. That is why I ask on forum. Your explanations are way better then wiki style :slight_smile: .

Oh, will it work in windows steam installed through playonlinux/wine or only with linux one?

@cscs,

Thank you, this info is helpful to me also as i am experiencing lag & some window freezing issues on my
Optimus / Hybrid GPU system. I’m still a newb when it comes to all this Hybrid GPU driver stuff for Linux & trying to find best solution / setup has been confusing & time consuming for me… LoL ! I Wish knew this before i bought lappy with Dual GPU’s, Doh !! :open_mouth: I have yet to play games or do graphics work, I did run IMVU( 3D Social VR World) in Wine. It ran ok with a few lag issues but nothing major.

I have no idea yet what i’m doing or how to configure for best set up LoL , but learn i will, learn I must :smirk:

1 Like

@michaldybczak Yup - You should to be able to use primusrun on prettymuch anything… for Steam through Wine :

On x86:

$ primusrun wine ~/.wine/drive_c/Program\ Files/Steam/Steam.exe

On x86_64:

$ primusrun wine ~/.wine/drive_c/Program\ Files\ (x86)/Steam/Steam.exe

1 Like

hi can i change propietary nvidia drivers for vesa drivers?

Please follow the wiki attached above …

Edit for extra screen.

Yes you are also using bumblebee and the link applies . Make sure you have the correct packages and understand how to use optirun or primusrun.

Vesa is a generic driver

which handles a large number of chipsets but does not include any 2D or 3D acceleration.

So idk why you would want to …

oh ok got it ,if no 2d or 3d on vesa drivers dont worth the hassle, just heard that generic drivers r better for linux than propietary but thx anyways, yeah i know kind lost of subject.

No @n3rdy6 … by generic I mean built to run on everything, but not very well. You mean proprietary vs open source drivers. If you are using Nvidia then the open source equivalent is Nouveau .

@cscs, Thanks I will go over Wiki later, but i’m still somewhat confused… ? In Hardware settings it shows i have video-hybrid-intel-nvidia-bumblebee installed. Do both boxes need to be checked ?

Honestly never needed to look at MSM with a hybrid setup … so idk. Maybe someone else can answer. But it is one package so it looks right to me already … kinda makes me wonder if it would warn/refuse or if you could induce some sort of bug by trying to do that :imp:

@cscs, thanks again for your input / time. I will post my questions as standalone thread, maybe someone can help clarify the situation for me & what I commands I should run etc. I do know that when I did a trial install of Manjaro on my little SSD and used only open source Intel drivers ( no Nvidia ) it all ran smooth as butter even with IMVU in Wine with multi rooms / functions running. I’m confused because i did permanent install on my HDD using UEFI and Non free drivers on USB / and HDD, yet it states i’m using OS Free drivers… ?? LoL… ok looks like my day will be spent mucking around in wiki’s / forums and sorting this nonsense out… TY :slight_smile:

@cscs Do I get it right that when using 64 bit systems for correct proprietary hybrid nvidia install (so system would profit from nvidia when running a game) I need following packages:

  • bumblebee
  • mesa
  • a driver: video-hybrid-intel-nvidia-bumblebee

And that’s all? No additional settings, system will use it as stated above (additional question about adding bumblebee to a group is below)? So far I have all of the above and was able to run The Witcher game in Windows Steam (although without optimus command yet). Default (middle quality) settings made the game not running fluent, only after changing to low quality it works normal now. Maybe it’s just weak and old hardware and drivers are working well but that’s not a new game so I expected to work a bit better. How can I know? Is there a test to tell if I got all I could from my system and drivers when running a game?

Also if I have proper packages/drivers as above, will it work automatically (nvidia power for games, intel for system) or do I need to apply optirun or primusrun command to use the whole power of nvidia card?

The info:

In order to use Bumblebee, it is necessary to add your regular user to the bumblebee group:
sudo gpasswd -a user bumblebee
Also enable bumblebeed.service. Reboot your system and follow #Usage.

Is placed in wiki below 32 instructions so I’m not sure is it just for those or general, so also for 64 bit systems?

Sorry for asking so much about this, but it’s all new to me and I just want to make sure I got it right. It seems complicated in hybrid GPU, hoped it would all run out of the box. Wiki articles are not beginner friendly as well so that’s another barrier. I’m glad to see that’s not just me and others are also a bit lost and luckily they too can profit from this thread.

Also this 32 support is confusing. Do I need any additional files from 32 if I have 64 system? Does it depend on a game (if it’s 32 then I need additional drivers/packages)? Asking differently, do I need all those multilib, lib32-virtualgl and other packages or just forget it because I have 64 system?

The Witcher not a new game … :pensive:

The permissions can be important either way, so maybe make sure.

And enabling the service would look like

systemctl enable bumblebeed.service

I think youll have them, but you’ll probably need most of these packages:

  • bumblebee
  • mesa
  • nvidia-utils
  • lib32-nvidia-utils
  • virtualgl
  • lib32-virtualgl

And that you are running the drivers shown above ( ‘video-hybrid-intel-nvidia-bumblebee’)

Then test with something like

primusrun glxspheres

[edit - sorry, glxspheres is suggested but requires package ‘mesa-demos’ to run]
[you can also run “primusrun glxgears -info”]

Also … see here for launching steam games in linux

1 Like

Forum kindly sponsored by Bytemark