Debian測試版(Wheezy),Xorg使用太多cpu,導致系統超級慢

受不了沒有Linux的日子,我擇日又重新安裝了Debian的Wheezy版,並且為我的GeForce G105M顯卡,下載安裝了Nvidia官方最新的驅動,版本號是2011年10月5號發布的285.05.09 .
但是不走運的是:安裝了驅動之後,系統變的超級慢! 特別是運行諸如nautilus, chrome, firefox之類的程序,症狀為:
1. 在chrome或者nautilus裡,新建一個tab或者在tab之間切換的時候,特別慢,需要等待數秒!
2. 在chrome和firefox的地址欄裡, 如果輸入網址, 會(眼睜睜)的看著字符一個,一個,的緩慢的出現,每出一個字母要等待1-2秒的時間,苦死!
3. "top"命令顯示, xorg持續的消耗50%以上的cpu,使用率居高不下

於是到google裡搜啊搜,最終在http://www.nvnews.net/vbulletin/showpost.php?p=2488518&postcount=15 這個網址發現了原因:

I had also the same problems with last Xorg 1.11 and nvidia GeForce G105M card. This card seems do not supports trapezoid acceleration checked with "nvidia-settings -q AccelerateTrapezoids".

For impatient, like me, I made and attached a dirty and quick fix for Xorg 1.11 from AaronP explanation in http://lists.x.org/archives/xorg-dev...er/026050.html
which seem to fix the problem in wait a rea​​l and serious fix from xorg or nvidia guys.

WARNING ! this patch is not an official patch and do not pretend to fix the slowdown bug, it's only a quick and dirty hack

大意是說, GeForce G105M card不支持trapezoid加速, 但是285.05.09這個版本的驅動程序對該項屬性的某些檢測動作,在​​xorg1.11版本里,會引起cpu過度消耗. 這是一個bug! 而我的顯卡偏偏就是G105M這個型號, 系統xorg的版本號也正是1.11......

發現這個bug的牛人寫了一個補丁, 但是我不知道怎麼使用,也不傾向於擅自對xorg打補丁,畢竟治標不治本啊...

不過幸運到是,就在今天早上 Nvidia 剛剛發布了 一個Beta版本的驅動【版本號:290.03(beta)】,在這個驅動裡,這個被描述為".....caused trapezoid and triangle rendering to be very slow on older GPUs with xorg- server 1.11."的bug被修復了.

既然它可以修復這個讓電腦如此"病重"的bug,就不用介意它是beta版本,何況正在使用Debian系統本身也是Testing版本,也算門當戶對啦:)
既然如此,下面的修復步驟就明了 了:

0. 用root用戶登錄
1. wget ftp://download.nvidia.com/XFree86/Linux-x86/290.03/NVIDIA-Linux-x86-290....
2. mv NVIDIA-Linux-x86-290.03.run /usr/src && cd /usr/src
3. 確保已經安裝了linux-headers 相關的軟件包:
apt-get install build-essential linux-headers-$(uname -r) && ln -s linux-headers-$(uname -r) linux
4. 保存相關工作,關閉所有應用程序,停止X:
按ctrl+alt+f1 再以root登錄,然後執行命令:
/etc/init.d/gdm3 stop
5. cd /usr/src && chmod +x ./NVIDIA-Linux-x86-290.03.run && sh ./NVIDIA-Linux-x86-290.03.run
6. 一路完成安裝嚮導,直至安裝程序報告:安裝成功.
7. 重啟X:
/etc/init.d/gdm3 start

現在這個bug不復存在, 而係統的感覺: 像是在"飛" ~~~~~~

Chinese, Traditional

發表新回應