2012年9月27日 星期四

安裝 bumblebee 在 Acer aspire 4752G

幫老婆的筆電升級 12.2
當然參考前文仍是要安裝 bumblebee
來關閉 nvidia 顯示卡(需要時再用指令來使用,無法動態切換喔!)
# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation Device 0dea (rev ff)

您可以看見有兩張顯示卡:
Intel 的效能較差,但省電
Nvidia 效能較好,較耗電
麵沒有大碗好吃便宜又衛生的啦!

如果您的筆電開機有問題
先在 bios 中設定使用內建顯示卡開機
我是從 home:swyear:bumblebee 來安裝 bumblebee 相關套件
# zypper ar obs://home:swyear:bumblebee/openSUSE_12.2 bumblebee

加入套件庫
您也可以在 software.opensuse.org 搜尋其他套件庫
接著用圖形安裝
 
要安裝 bumblebee, VirtualGL, libbsd0, libturbojpeg, bbswitch-kmp-[Flavor]
其中 bbswitch 套件需要自行選取所用的核心口味
用下列指令看一下:
# uname -r
3.4.6-2.10-desktop

所以選擇 bbswitch-kmp-desktop

加入 Nvidia 套件庫
由 YaST--軟體套件庫--新增--社群套件庫--nVidia Graphics Drivers
仍依照您的核心口味選擇

安裝完成之後
由 YaST--系統--/etc/sysconfig 編輯器--System--Kernel--
將 NO_KMS_IN_INITRD 設為 no

接下來是一些檔案的移動
# mkdir -p /usr/lib64/nvidia/xorg/modules/updates/extensions
# mv /usr/X11R6/lib64/libGL* /usr/lib64/nvidia/
# mv /usr/lib64/xorg/modules/updates/extensions/libglx* /usr/lib64/nvidia/xorg/modules/updates/extensions/
# mkdir -p /usr/lib/nvidia
# mv /usr/X11R6/lib/libGL* /usr/lib/nvidia
檢查一下 /etc/bumblebee/bumblebee.conf
確認
Driver=nvidia
最後將使用者加入 bumblebee 的群組

如此就大功告成了
重新開機,進入 Bios
調整顯示卡為可切換模式
進入桌面後用終端機執行測試
$ glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile 
    GL_NV_conditional_render, GL_ARB_ES2_compatibility,
$ optirun glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: GeForce 610M/PCIe/SSE2
    GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image, 
    GL_NV_parameter_buffer_object2, GL_NV_path_rendering, 
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, 
    GL_OES_depth_texture, GL_OES_element_index_uint, GL_OES_fbo_render_mipmap,
您也可以用 glxgears 來跑一下齒輪(注意:不和效能成正比)

13 則留言:

Unknown 提到...

你好,我已依照你寫的步驟去設定,但是當我打

optirun glxinfo 的時候仍出現了以下的問題:

[ERROR]Cannot access secondary GPU - error: [XORG] (EE) Failed to load /usr/lib64/xorg/modules/libglamoregl.so: /usr/lib64/xorg/modules/libglamoregl.so: undefined symbol: _glapi_tls_Context

[ERROR]Aborting because fallback start is disabled.

Ray Chen 提到...

Unknown 您好:
這篇是關於在 nvidia optimus 機種上使用的技術,請問您的筆電廠牌型號,請給我 sudo /sbin/lspci | grep VGA 的結果。作業系統是 openSUSE 12.2 嗎?參考這篇看看: https://github.com/Bumblebee-Project/Bumblebee/issues/262
如果需要幫忙,可能要請供多點訊息。

Unknown 提到...

你好,我的筆電的型號是Dell Inspiron 7720,安裝的是openSuSE 12.2

lspci 的結果:
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation Device 0fd1 (rev ff)

Ray Chen 提到...
作者已經移除這則留言。
Ray Chen 提到...

Unknown:
參考 https://bugzilla.novell.com/show_bug.cgi?id=766513 將 /etc/X11/xorg.conf.d/05-glamor.conf 中的 Load "glamoregl" 去掉試試看

Unknown 提到...

你好,我剛剛試了你的提議,但是仍然是Intel graphic card能夠使用但nvidia graphic card用不了。

optirun glxinfo出現了:
[ERROR]Cannot access secondary GPU - error: [XORG] (EE) NVIDIA(0): Failed to initialize the NVIDIA GPU at PCI:1:0:0. Please

[ERROR]Aborting because fallback start is disabled.

檢查Xorg.8.log時發現了以下的錯誤信息:
[ 105.611] (EE) NVIDIA(0): Failed to initialize the NVIDIA GPU at PCI:1:0:0. Please
[ 105.611] (EE) NVIDIA(0): check your system's kernel log for additional error
[ 105.611] (EE) NVIDIA(0): messages and refer to Chapter 8: Common Problems in the
[ 105.611] (EE) NVIDIA(0): README for additional information.
[ 105.611] (EE) NVIDIA(0): Failed to initialize the NVIDIA graphics device!
[ 105.611] (EE) NVIDIA(0): Failing initialization of X screen 0
[ 105.611] (II) UnloadModule: "nvidia"
[ 105.611] (II) UnloadSubModule: "wfb"
[ 105.611] (II) UnloadSubModule: "fb"
[ 105.611] (EE) Screen(s) found, but none have a usable configuration.

Ray Chen 提到...

Unknown:
參考這個: https://github.com/Bumblebee-Project/Bumblebee/issues/172 到 software.opensuse.org 搜尋 bumblebee 安裝最新的 3.0.1 看看,注意一些設定細節可能要調整一下,目前我的機器不在身邊無法幫您試

Ray Chen 提到...

您是 Hillman Dai 嗎?在 facebook 的 opensuse.tw 社團也看見您問同樣問題。
home:swyear:bumblebee 的 bumblebee 也升級到 3.0.1,您試試看

Unknown 提到...

問題終於解決了!
我安裝了bumblebee 3.0.1,並把xorg.conf.nvidia中:

Option "ConnectedMonitor" "DFP"

換成:

Option "UseDisplayDevice" "none"

就可以了!

謝謝你的幫忙!

Ray Chen 提到...

恭喜您啦!

fortunmeet 提到...

博主你好,你这个让我的4750G也很收益,按照你的操作过程我还是出现啦点错误,不过现在/
bin/lspci | grep VGA的输出是
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 540M] (rev ff)
不知道这样(rev ff)算关闭独立显卡了么???
期待得到你的回复

Ray Chen 提到...

fortunmeet :
rev ff 只是代表該硬體的版本吧。
最近都沒測試新版,說不定狀況有變,去論壇問問看吧

fortunmeet 提到...

那请问要如何才能判断独立显卡已经被禁用或者被关闭呢?