LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Using bumblebee and bbswitch, discrete video card (Nvidia) is still on by default. (https://www.linuxquestions.org/questions/slackware-14/using-bumblebee-and-bbswitch-discrete-video-card-nvidia-is-still-on-by-default-4175594084/)

me_h 11-23-2016 01:51 AM

Using bumblebee and bbswitch, discrete video card (Nvidia) is still on by default.
 
I tried to improve my battery life using Slackware Nvidia optimus docs. I exactly followed the documentation (the manual way).
However, it made my battery life even worse. I realized that my Nvidia gpu is still on since
Code:

$ optirun --status
returns:
Bumblebee status: Ready (3.2.1-2013-04-26-Format:%h$). X inactive. Discrete video card is on.
- I believe that the default status of Nvidia GPU should be off. Could someone please give me the output of optirun --status on their optimus laptop?

- I managed to optimise the power consumption by turning Nvidia GPU off manually:
Code:

# rmmod nvidia_drm nvidia_modeset nvidia
# tee <<<OFF /proc/acpi/bbswitch

Now optirun --status returns:
Bumblebee status: Ready (3.2.1-2013-04-26-Format:%h$). X inactive. Discrete video card is off.
- Furthermore, I don't need to turn the 2nd GPU on manually when I need it, because it is automatically turned on on demand (But unofrotunately, it remains on again since then). Therefore, what I intend to do is to set bumblebee and bbswitch to turn the 2nd GPU off when it is not used, but I have no idea how to do that. Could someone help me with this?

Many thanks.

BradReed 11-23-2016 03:34 PM

Do you have a script that is loading those nvidia kernel modules? Those modules are not loaded here unless I'm actually using my nvidia card, and they seem to be removed automatically.

$ lsmod | grep nvidia
$ optirun --status
Bumblebee status: Ready (3.2.1-2013-04-26-Format:%h$). X inactive. Discrete video card is off.

$ optirun glxinfo | head
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
GLX_ARB_context_flush_control, GLX_ARB_create_context,
GLX_ARB_create_context_profile, GLX_ARB_create_context_robustness,
GLX_ARB_fbconfig_float, GLX_ARB_multisample, GLX_EXT_buffer_age,
GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,

$ lsmod | grep nvidia
$ optirun --status
Bumblebee status: Ready (3.2.1-2013-04-26-Format:%h$). X inactive. Discrete video card is off.
$ more /proc/acpi/bbswitch
0000:01:00.0 OFF

BradReed 11-27-2016 02:30 PM

For what it is worth, I upgraded my kernel to 4.8.11 and upgraded bumblebee to use NVIDIA 375.20.

libbsd-0.8.3-x86_64-1_bbsb.txz
bumblebee-3.2.1-x86_64-1_bbsb.txz
bbswitch-0.8_4.8.11-x86_64-1_bbsb.txz
primus-0.1.7-x86_64-1_bbsb.txz
nvidia-kernel-375.20_4.8.11-x86_64-1_bbsb.txz
nvidia-bumblebee-375.20-x86_64-1_bbsb.txz

I have the same output as before. No nvidia kernel modules loaded normally.
$ optirun glxinfo | head -n 40 | grep -v ^\
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
(bit snipped)
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 765M/PCIe/SSE2
OpenGL core profile version string: 4.5.0 NVIDIA 375.20
OpenGL core profile shading language version string: 4.50 NVIDIA

$ optirun --status
Bumblebee status: Ready (3.2.1-2013-04-26-Format:%h$). X inactive. Discrete video card is off.

$ more /proc/acpi/bbswitch
0000:01:00.0 OFF

$ lsmod | grep nvidia

ryanpcmcquen 12-05-2016 01:18 PM

Shouldn't we all be using primusrun at this point? It is considerably better. Anyway, your issue seems related to this one:

https://github.com/WhiteWolf1776/Bum...ilds/issues/13

BradReed 12-10-2016 10:56 AM

I think the OP disappeared. What is the difference between primusrun and optirun? I haven't noticed any difference between the two. They both seem to work fine on my laptop.

ryanpcmcquen 12-10-2016 12:55 PM

Quote:

Originally Posted by BradReed (Post 5640319)
I think the OP disappeared. What is the difference between primusrun and optirun? I haven't noticed any difference between the two. They both seem to work fine on my laptop.

You should get a much higher frame rate with primusrun.

me_h 12-11-2016 03:36 AM

@BradReed
Quote:

Do you have a script that is loading those nvidia kernel modules? Those modules are not loaded here unless I'm actually using my nvidia card, and they seem to be removed automatically.
There is no such scrip. I installed bumblebee on a fresh install of Slackware. In fact, for no reason nvidia card tends to remain on! Furthermore, when I turn it off, after each time I use nvidia card, it again remains on. I always have to execute
Code:

# rmmod nvidia_drm nvidia_modeset nvidia
# tee <<<OFF /proc/acpi/bbswitch

after startup and after each usage.

me_h 12-11-2016 03:47 AM

Quote:

Originally Posted by ryanpcmcquen (Post 5638297)
Shouldn't we all be using primusrun at this point?

Yes, but how may I check nvidia card status using primusrun?

Quote:

Anyway, your issue seems related to this one:

https://github.com/WhiteWolf1776/Bum...ilds/issues/13
My problem is kind of different since I'm able to switch off nvidia card. I just don't realize why nvidia kernel modules are loaded by default and why the card remains on after each usage!


All times are GMT -5. The time now is 12:55 AM.