編譯Ubuntu官方核心!!Ubuntu 10.10升級 2.6.38-8.41(附上效能比較) [論壇 - Ubuntu安裝問題]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊

« 1 (2)


回覆: 直接編譯Ubuntu官方核心!!Ubuntu10.10核心升級為 2.6.38-8.41
管理員
註冊日期:
2006/10/31 19:52
來自 Baker Street 221B
所屬群組:
網站管理員
已註冊使用者
討論區管理群
等級: 30
HP : 0 / 733
MP : 405 / 28092
EXP: 34
離線
Lancel 寫到:
*** yanzilme說:「在測試組跟對照組環境根本就不一樣...」

環境怎麼會不一樣?...除了載入的核心不同,全都是在我這台電腦(硬體),這個Ubuntu10.10作業系統(軟體)中
進行的測試...比較前後兩個不同的核心所帶來的影響,有什麼不對呢?

測試組使用自編2.6.38,對照組官方2.6.35
兩者怎麼會一樣?要麻通通2.6.38要麻2.6.35
你這樣子是能看出哪裡有問題?
是自己編譯的問題?還是2.6.38本來效能就很差?



Lancel 寫到:
*** yanzilme說:「自己編的kernel完敗給官方更低參數編譯的kernel?!你不覺得這結果很奇怪嗎?」

呵呵~我也覺得很奇怪...按照預期,應該是2.6.38勝2.6.35,而按上述那篇文章,應該自編2.6.38勝官方2.6.38...
所以自編2.6.38更勝2.6.35...但得到的測試數據並不支持這個「預期」!

「我有個理想,動手去實踐,結果就一定非得照我預期不可...」強迫要這樣嗎?

如同那個訪客說的,龜兔賽跑,通常大家覺得兔子會贏...但真正的結果要比賽過才知曉...
(難道就為了「一定要符合常理,一定要符合大家期望」,所以哪怕烏龜贏了,也要當眾予以否認?!)

事出必有因...
結果不如預期那肯定哪裡出錯
不是編一個出一個能動能跑的kernel就叫做正常...



Lancel 寫到:
*** yanzilme說:「那還不如直接用官方的就好...」

呵呵~您說到我心坎裡了...我也是這樣覺得...

問題是出在你的編譯上
別人的2.6.38性能可沒你低的那麼誇張..



Lancel 寫到:
*** yanzilme說:「如果今天你的對照組除了官方2.6.35外,還有官方2.6.38,得出結論說2.6.38性能下降,
那到也說得過去,...」

我並沒有說官方2.6.38的性能下降呀!我是拿***我自編的2.6.38*** (抓Ubuntu官方的source來編譯)
與Ubuntu10.10內裝的官方核心相比較...換了核心,看看效能會怎樣...

結果我的電腦性能下降!

我也沒有說你說官方2.6.38性能下降...
我只說你的編譯的核心跟測試有問題而已
完全不存在基準,完全不公平



Lancel 寫到:
*** yanzilme說:「很明顯這裡一定有地方出問題...」

期望有人能指點我,到底或可能問題出在什麼地方?...是編譯指令?是編譯次序?是設錯參數?是缺少補丁?...
這樣可以給想自編核心的同好們做個參考...同時這次也給大家一個經驗:不見得自編核心會如預期的提升系統效能...

你這樣說我也不知道怎麼回答你
我甚至不知道你編譯的用的編譯環境是用麼
編譯步驟與編譯參數以及硬體等級為何
能夠怎麼幫你?



Lancel 寫到:
*** yanzilme說:「都是比較同樣版本也就是同樣的source,例如2.6.38-pentium4比對2.6.38-corei7,其餘不變,
這樣才能看出差別,...」

那是一種「選不同對應CPU來看同一核心」的效能差異...

我是「對於我現正使用Ubuntu 10.10 i386系統,換個核心」的差異...問題不一樣呀!

大家都說2.6.38好!又說優化 核心對應 好!...所以我來用用看,看看是不是換了它,眼前這部機器
真的會變得比較好...(人家說吃辣椒會噴火,好!我來吃吃看...)
於是要進行實驗、測試,看看數據有沒有差異?有多大的差異?...不是應該這樣子嗎?!

看到這裡我不知道該說什麼了...
你要這樣子講也可以
但是基準一樣不公平,編譯參數基本就不一樣了
一個是pentium-pro(壓根根本不是i386),另一個是K8
就算是同個版本的kernel編出來的效能也會不一樣
你的還跨了那麼大的版本,根本連個基準跟參考點在哪裡都不知道



Lancel 寫到:
*** yanzilme說:「...一般是不客觀也沒無法反應正確的差異性...」

呵呵~什麼叫做客觀...實驗數據是程式自己跑出來的,我保持一致的測試環境...這應該算客觀吧!...
我只是報導我自己這台機器的狀況而已...

我並沒有向全世界「斬釘截鐵地」宣佈:「大家被騙了!2.6.38沒有比較好!」

而且我的測試方法(好像回到研究所的「研究方法」課啦!)哪裡有問題啦?

「在 同一部的機器 比較 不同核心 造成的效能差異」這樣有問題?

你既然知道研究方法,那我前說的你不可能不懂
你既無法在同樣的參數下編不同版本的kernel
也無法在不同參數下編出同版本的kernel

基本上這樣的測試本身就很容易被人家質疑
把版本影響的因素跟編譯參數影響的因素輕重搞懂
今天甚至小學生上自然課都知道對照組的功用



Lancel 寫到:
*** yanzilme說:「2.6.35到2.6.38提昇是很顯著的...」
當年毛老也是說:「三三主義到共共主義提升也是很顯著的...」

但具體作為後,是有地方比較好,但也有不如預期的部份...現在我這邊就是出現「不如預期」的情形...

所以呢?
扯老毛的話對這個問題會有幫助?
還是來合理你自己說的話?
不如預期是你編譯的問題
可不是2.6.38自己本身的問題
別人編譯的可沒有像你這樣子



Lancel 寫到:
*** yanzilme的邏輯好像是「2.6.35到2.6.38提昇是很顯著的」,所以「整體效能一定提升」,所以Lancel的情形
也一定是這樣(也有「只能是這樣」)...如果不一樣,肯定是Lancel錯了...Lancel把兔子和烏龜擺在一起比賽就是不對!

比賽結果...啥比賽結果!...根本一開始連比都不能(不准)比!...
yanzilme的「馬拉松比賽」只能是「紅兔對藍兔」或者「忍者龜對傑尼龜」...不是同類,絕對不能放在一起跑!

...

同樣都是linux kernel,你映要亂舉例烏龜肚子賽跑
這樣詭辯究竟有和意義?
倒不如想辦法找出為何別人編譯的2.6.38正常
而你的2.6.38那麼慢的原因在哪
比在這裡打嘴砲要來的更好一些

2011/4/8 22:07
應用擴展 工具箱
回覆: 直接編譯Ubuntu官方核心!!Ubuntu10.10核心升級為 2.6.38-8.41
會員一級
註冊日期:
2010/8/10 17:49
所屬群組:
已註冊使用者
等級: 3
HP : 0 / 52
MP : 6 / 1424
EXP: 9
離線
你可以把Timer Frequency調回預設的250
效能上應該會有不錯的表現

其實,雖然官方預設CPU選項是Pentium Pro,不過對效能的影響其實很有限,一般使用感覺不出差異,真的沒必要為了改CPU選項去編譯核心

想玩的人當然還是可以自己編自訂的核心啦,或者有特殊driver的需求,不然,其實用官方的核心就好

2011/4/8 22:16
應用擴展 工具箱
回覆: 直接編譯Ubuntu官方核心!!Ubuntu10.10核心升級為 2.6.38-8.41
會員五級
註冊日期:
2011/3/5 19:32
所屬群組:
已註冊使用者
等級: 21
HP : 0 / 500
MP : 173 / 12822
EXP: 3
離線
*** 三種不同的核心在我這台電腦上的效能表現 ***
---------------------------------------

呵呵~看來 直接安裝2.6.38核心在我這台電腦上出現水土不服的現象...

我去把官方發佈的 2.6.38核心抓回來了...

這下子有3個核心比較了:

官方2.6.35-28pae、自編2.6.38-8.41pae、官方2.6.38-8.41pae
















** 先看單核心部份~~

在File Copy項目上,官方2.6.38 的表現最好!

但在其他項目上,還是以 官方2.6.35 突出...

啊!我自編的核心比較不怎樣...

總評是 官方2.6.35 第1名! 官方2.6.38 第2名...


** 在雙核心部份~~

呵呵~在File Copy項目上,我自編的2.6.38最好!

其他項目仍是 官方2.6.35 突出...

此刻 官方2.6.38 好像就普普通通了...

總評依然是 官方2.6.35 第1名! (我自製的排第2了...還算有點良心...)


*** 最後 ***

這是在我這台電腦上,Ubuntu 10.10 i386 裝載3個不同核心的效能測試數據...
核心源都來自官方(自編的那一個也是抓 Ubuntu 官方的 source...)

純粹是我這台電腦上的情形,請勿濫用推廣延伸到別台電腦...
或許大家那邊都是2.6.38強,但我這實際上看到的數據還是 2.6.35佳!

其他試過升級核心的客倌,您實際的測試數據如何?
跟我一樣裝上 UnixBench 5.1.2 在開機時選不同核心載入系統測測看!
(不要只是聽人說或者憑感覺...)



============================================================

*** yanzilme說:「不如預期是你編譯的問題,可不是2.6.38自己本身的問題...」

「不如預期是你編譯的問題...」您這句話隱含「2.6.38一定強」的預設立場...

這就好比有人說:「我的藥一定能使人復活...如果沒爬起來,那是顧客的錯!...可不是我藥的問題...」
也就是排除了可能有失常的狀況,有狀況一定是發生在別的地方,絕對不是源自自身...

帶著預設立場來看事情(2.6.38絕對只有優,不優絕對是錯在別人)這是觀察、研究的正確態度嗎?!


*** yanzilme說:「我甚至不知道你編譯的用的編譯環境是用麼,編譯步驟與編譯參數以及硬體等級為何...」

您說我編譯有問題,我是按照三篇網路文章的指示依序進行的...
請看我的原文,參數也在那裡...在1樓...

可見您沒有看或只是草草略過...然後看到有人說2.6.38裝起來效能比較差,立刻就上火了,就要出言維護...
說人比較沒有基準,三言兩語就把「打嘴炮」這一詞強灌在別人頭上...這心態喔..

...

編譯環境就在ubuntu 10.10 中進行(沒有換電腦喔!編譯、安裝、測試都在這兒)...

如果您覺得那些程序、參數有不妥處,請指正,讓大家都能獲得一個能發揮核心正常能力的編譯範本...
您也可以把您所謂「理想的編譯環境」的條件列出,讓大家心裡有個底...

您說我不能「在同一機器上用同一套測試程式比較2.6.38和2.6.35」,那這樣各大報導發佈的內容是如何評價得出2.6.38較優的?

2.6.38較優...這不也是比較?...而不比較測試數據怎知兩者優劣?理論上優的,實際應用上就一定也優?!...

您不妨說說「怎樣進行2.6.35與2.6.38效能的比較」才是正確、客觀的...

(「用兩個差異頗大的版本,得到的結果做結論,一般是不客觀也沒無法反應正確的差異性...」
這話是您說的...您自己的邏輯早就封殺兩者比較的可能性...自打嘴巴...)

「...2.6.38對2.6.35這是一個完全不公平的測試,絕大部分的測試,別人都是2.6.38勝過2.6.35...」
您這話不是前後矛盾嗎?

既然是不公平的測試,那麼結果就無參考價值,那您怎還拿「2.6.38勝過2.6.35」這結論為立場!...
喔!38勝35就是公平的測試,輸就是不公平?!...


*** yanzilme說:「問題是出在你的編譯上,別人的2.6.38性能可沒你低的那麼誇張...」

我這回加入的第3個核心正是ubuntu官方的2.6.38喔,可道道地地是「別人編譯」的喔!

但您看測試數據...在我的機器上可沒有那麼突出喔!

那這要怪我的AMD電腦主機囉?不能「好好配合」,表現跟別人一樣亮眼?!
(喔!新發現!AMD Athlon II 250與技嘉880G主機板不適合裝 2.6.38核心哩!...呵呵~~)

...

2011/4/8 23:49
應用擴展 工具箱
回覆: 編譯Ubuntu官方核心!!Ubuntu 10.10升級 2.6.38-8.41(附上效能比較)
會員三級
註冊日期:
2011/1/9 20:30
所屬群組:
已註冊使用者
等級: 9
HP : 0 / 201
MP : 33 / 5241
EXP: 5
離線
我Kernel都是透過線上更新即可,都是初次安裝完系統後,就線上更新所有套件,不過都是選擇長期支援版,有些套件穩定比較重要

2011/4/9 10:44
應用擴展 工具箱
回覆: 編譯Ubuntu官方核心!!Ubuntu 10.10升級 2.6.38-8.41(附上效能比較)
會員一級
註冊日期:
2009/11/8 12:02
所屬群組:
已註冊使用者
等級: 1
HP : 0 / 5
MP : 1 / 160
EXP: 21
離線
核心的大小對整體效能才是關鍵。可以公布一下你比較的兩個核心SIZE讓我知道嗎

子版號38跟35、36之類的差別都是小微調跟有沒有支援新的硬體

以前很常在自編核心,編到完全對應自已買的機器上的硬體,其他不相關的,或者用不到的設備支援都拿掉,那會很快,因為當時的CPU還是P2 P3那附近的等級。感覺會差很多。

現在的家用CPU比起以前都快太多了,自編就比較沒有效能上的意義了(尤其進到多核時代),除非是機器上有個很特別的硬體沒支援只好自已編。

2011/6/2 16:08
應用擴展 工具箱
回覆: 編譯Ubuntu官方核心!!Ubuntu 10.10升級 2.6.38-8.41(附上效能比較)
會員四級
註冊日期:
2010/10/28 17:23
來自 台灣-台南市
所屬群組:
已註冊使用者
等級: 19
HP : 0 / 464
MP : 148 / 12377
EXP: 59
離線
在這邊分享一下小弟參考這篇文章後的編譯方式(以x86_64版本為例),順便也請各位前輩幫忙看一下有沒有什麼地方做錯了(藍色為應自行置換之地方)。

1. 依1樓安裝好需要用到的套件

2. 切換為root
sudo su -


3. 切換至工作目錄
cd 工作目錄


4. 下載原始碼
方法A:git
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-英文版名.git 原始碼目錄

*註:英文版名如precise(12.04)、quantal(12.10)、raring(13.04)……等。
方法B:apt-get
sudo apt-get build-dep --no-install-recommends linux-image-kernel版本
apt-get source linux-image-kernel版本

*註:Kernel版本如:3.5.0-xx(12.10)、3.8.0-xx(13.04),xx部份可按兩次tab顯示有哪些可選的項目。

5. 進入目錄內
cd 原始碼目錄



6. 確認下載版本號碼(通常在第一行的括號裡)
gedit debian.master/changelog &


7. 建立分支
git checkout Ubuntu-下載版本號碼 -b 分支名稱

*註1:下載版本號碼如3.5.0-xx.xx
*註2:分支名稱可任意取,不過最好是英數組合,不要有其他符號

8. (選擇性)打上patch
patch -Np1 < PATCH檔名稱

經前輩們推薦,小弟打的patch包話BFQCKUKSM

9. (選擇性)修改Makefile,可加入想用的參數(如CFLAGS),並備份
vi Makefile
cp Makefile ../


10. 建立自己的kernel make config文件
cp debian.master/config/amd64/config.flavour.generic debian.master/config/amd64/config.flavour.分支名稱
fakeroot debian/rules clean
debian/rules updateconfigs


11. 開始修改config文件內容(請自己選擇喜歡的項目)
debian/rules editconfigs


12. 備份config文件
cp debian.master/config/amd64/config.flavour.分支名稱 ../


13. 清理git tree
git reset --hard
git clean -xdf


14. (選擇性)重新打上patch(可用向上鍵找尋剛剛打過的指令……。XD)
patch -Np1 < PATCH檔名稱


15. (選擇性)恢復Makefile
mv ../Makefile ./


16. 確認資料夾路徑(前版版號)
ls debian.master/abi/

會顯示一個以前版kernel版號為名的資料夾,將該資料夾名稱復製起來

17. 準備編譯環境
cp debian.master/abi/前版版號/amd64/generic debian.master/abi/前版版號/amd64/分支名稱
cp debian.master/abi/前版版號/amd64/generic.modules debian.master/abi/前版版號/amd64/分支名稱.modules
cp debian.master/control.d/vars.generic debian.master/control.d/vars.分支名稱


18. 將config文件復原
mv ../config.flavour.分支名稱 debian.master/config/amd64/


19. 修改debian.master/etc/getabis
vi debian.master/etc/getabis

將內容中的
getall amd64 generic

修改為
getall amd64 generic 分支名稱


20. 修改debian.master/rules.d/amd64.mk
vi debian.master/rules.d/amd64.mk

將內容中的
flavours = generic

修改為
flavours = generic 分支名稱


21. 修改debian.master/control.d/vars.分支名稱
vi debian.master/control.d/vars.分支名稱

將前面幾行修改為
arch="amd64"
supported="分支名稱"
target="Geared toward x86_64 systems."
desc="x86_64"


22. 將修改的內容記錄到git中
git add .
git commit -a -m "分支名稱 modifications"


23. 開始編譯
fakeroot debian/rules clean
CONCURRENCY_LEVEL=X skipabi=true skipmodule=true fakeroot debian/rules binary-indep
CONCURRENCY_LEVEL=X skipabi=true skipmodule=true fakeroot debian/rules binary-分支名稱

*註1:X為CPU數+1,如雙核就是2+1=3
*註2:如果有打patch或修改config還項,可能會出現要重新確認的訊息,處理完後接著就可以出去晃晃等一段時間後再回來看編完沒 XD)

24. 如果編譯成功沒有出現錯誤訊息就可以安裝囉!
cd ..
dpkg -i linux-headers-*.deb linux-image-*.deb


25. 重新開機看看是否成功
reboot

2013/3/19 0:11
lubuntu 16.04.2 (AMD64)
ASUS K53BR筆電
RAM: 1.5GB
應用擴展 工具箱

« 1 (2)

 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.