[Bumblebee] Could not enable discrete graphics card

bumblebee

#2
cat /proc/acpi/bbswitch

This should be OFF by default (ie intel gpu activated), when you first boot is this OFF?


#3

Yes.

cat /proc/acpi/bbswitch
0000:08:00.0 OFF


#4

The bumblebee service loading correctly?

systemctl status bumblebeed

Is this issue specific to blender? Does this work?

optirun -v glxgears

#5

Yes, bumblebee loading correctly.

systemctl status bumblebeed 
    bumblebeed.service - Bumblebee C Daemon
       Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled)
       Active: active (running) since Tue 2017-01-31 07:25:37 IST; 2h 57min ago
     Main PID: 566 (bumblebeed)
        Tasks: 1 (limit: 4915)
       CGroup: /system.slice/bumblebeed.service
               └─566 /usr/bin/bumblebeed --use-syslog

    Jan 31 07:25:37 osiris systemd[1]: Started Bumblebee C Daemon.
    Jan 31 07:25:37 osiris bumblebeed[566]: /usr/bin/bumblebeed 3.2.1-2017-01-05-Format:%h$ started
    Jan 31 08:00:13 osiris bumblebeed[566]: [XORG] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".
    Jan 31 08:00:13 osiris bumblebeed[566]: [XORG] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".
    Jan 31 08:00:13 osiris bumblebeed[566]: [XORG] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
    Jan 31 08:00:13 osiris bumblebeed[566]: [XORG] (WW) NVIDIA(0): Unable to get display device for DPI computation.
    Jan 31 08:00:13 osiris bumblebeed[566]: [XORG] (EE) kbd: <default keyboard>: failed to set us as foreground pgrp (Inappropriate ioctl for device)
    Jan 31 10:00:54 osiris bumblebeed[566]: Could not enable discrete graphics card
    Jan 31 10:07:01 osiris bumblebeed[566]: Could not enable discrete graphics card

No, issue is not blender specific.

optirun google-earth
[ 8056.322221] [ERROR]Cannot access secondary GPU - error: Could not enable discrete graphics card

[ 8056.322249] [ERROR]Aborting because fallback start is disabled.

And,

optirun -v glxgears
[ 8118.877103] [INFO]Configured driver: nvidia
[ 8118.877407] [INFO]Response: No - error: Could not enable discrete graphics card

[ 8118.877421] [ERROR]Cannot access secondary GPU - error: Could not enable discrete graphics card

[ 8118.877437] [ERROR]Aborting because fallback start is disabled.

#6

I think this is your issue. Do you run multiple monitors?


#7

No, I’m using laptop. I rarely use external display.


#8

Found this on Reddit, similar issue with a solution, it may help you.

SOLVED

TLP was interferenig with the NVIDIA driver. Will add to discussion tread over at Archwiki lspci | grep “NVIDIA” | cut -b -8 and append the output to RUNTIME_PM_BLACKLIST in /etc/default/tlp

https://wiki.archlinux.org/index.php/TLP


Question about nvidia driver versions
Problems with Bumblebee/PRIME
Optirun not working if I dont start apps soon enough
Primus could not load gpu driver
Bumblebee not working on kernel 4.9
[Fixed] [Stable Update] 2017-04-23 Optimus / Base-Nvidia Broken
Black Screen on Hybrid iGPU/Nvidia boot
Hybrid Graphics Nvidia
#9

Yes, indeed tlp was conflicting with bumblebee. Keeping the GPU related PCI channel out of power management resolved the issue.


#10

Can you please detail exactly what you did for the next person who may encounter the same issue and stumble across this thread looking for a solution. Cheers.


#11
  1. Use lspci to identify the PCI slot information associated with the discrete GPU.
    Example: lspci | grep "NVIDIA" | cut -b -8 will show only the PCI slot information associated with the NVIDIA card.

  2. Copy the PCI slot information, open the /etc/default/tlp with any text editor with sudo permission. Append the arguments of RUNTIME_PM_BLACKLIST with the copied PCI slot information. Save the file, exit and reboot.
    Example: sudo nano /etc/default/tlp
    Note: RUNTIME_PM_BLACKLIST must be uncommented(remove # before it) if it is not already.


#12

It’s exactly my problem but I must have done something wrong, because it’s still not fixed.
Here is what I did:

$ lspci | grep "NVIDIA" | cut -b -8
01:00.0 

In /etc/default/tlp I commented old value (seems irrelevat, since I don’t have radeon) and added the output from above:

# Exclude PCI(e) device adresses the following list from Runtime PM
# (separate with spaces). Use lspci to get the adresses (1st column).
#RUNTIME_PM_BLACKLIST="bb:dd.f 11:22.3 44:55.6"

# Exclude PCI(e) devices assigned to the listed drivers from Runtime PM
# (should prevent accidential power on of hybrid graphics' discrete part).
# Default is "radeon nouveau"; use "" to disable the feature completely.
# Separate multiple drivers with spaces.
#old value: RUNTIME_PM_DRIVER_BLACKLIST="radeon nouveau"
RUNTIME_PM_DRIVER_BLACKLIST="01:00.0"

#13

Maybe a silly question, but did you reboot?

I think append is the key word here.

I think 01:00.0 needs to be appended to RUNTIME_PM_DRIVER_BLACKLIST="radeon nouveau" instead of replacing it.

That is how I read it anyway.


#14

I did reboot.

How do I append it? There is so many possibilities:

RUNTIME_PM_DRIVER_BLACKLIST=“radeon nouveau” "01:00.0"
RUNTIME_PM_DRIVER_BLACKLIST="radeon nouveau:01:00.0"
RUNTIME_PM_DRIVER_BLACKLIST="radeon nouveau.01:00.0"
RUNTIME_PM_DRIVER_BLACKLIST=“radeon nouveau 01:00.0”

or others. I have no clue what to do. Instruction is too vague :frowning:


#15

Don’t know, haven’t tried this myself.

This, I think.


#16

@sueridgepipe I did as you posted and it didn’t work :frowning:
I guess I will have to uninstall tlp to see if it’s the reason for me, although I got exactly the same error messages and outputs as posted in those threads. Since it’s too late now, I will work on this tomorrow.


#17

I couldn’t help it to test it now. Uninstalling tlp got rid of the bug, so editing it’s settings is the fix, but I am still doing something wrong since it’s not working.

I hope that @abhisek will check messages and point me to the right direction.


#18

I’m sure it is just a small syntax issue, but those can be very :rage:


Bumblebee optirun nvidia "could not load GPU driver"
I7 6700hq (skylake) and nvidia 960M
#19

Found what I did wrong and was able to fix the issue!

It was not RUNTIME_PM_DRIVER_BLACKLIST but RUNTIME_PM_BLACKLIST, entirely different line, so I had by default:

#RUNTIME_PM_BLACKLIST="bb:dd.f 11:22.3 44:55.6"

which I changed to:

RUNTIME_PM_BLACKLIST="01:00.0"

and now it finally works! :slight_smile:


Question about nvidia driver versions
#20

Amazing how quickly simply issues like this are resolved after a restful night’s slumber.

:slight_smile:


#21

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