您的位置: 首頁 >科技 >

我們必須找到從源頭構(gòu)建AOSP項(xiàng)目的最大潛在瓶頸

2022-09-13 23:26:30 編輯:莊軍政 來源:
導(dǎo)讀 2012年,我開始構(gòu)建內(nèi)核-并依靠我可靠的Core 2 Quad Q9550進(jìn)行構(gòu)建。如果這不值得冒犯,那么我在Windows內(nèi)的VM中完成此操作的事實(shí)可能會...

2012年,我開始構(gòu)建內(nèi)核-并依靠我可靠的Core 2 Quad Q9550進(jìn)行構(gòu)建。如果這不值得冒犯,那么我在Windows內(nèi)的VM中完成此操作的事實(shí)可能會確保對于大多數(shù)從源代碼構(gòu)建Android的人們來說都是如此。虛擬化的Ubuntu環(huán)境的性能不如本地環(huán)境,哦,當(dāng)內(nèi)核花了2多個(gè)小時(shí)來構(gòu)建時(shí),這種痛苦就變得顯而易見了。當(dāng)我想在第二年開始從源代碼構(gòu)建Android時(shí),我知道我目前的硬件并不能解決問題-因此開始了漫長而又持續(xù)的旅程,以尋找減少這種不斷增長的構(gòu)建時(shí)間的方法。

從那以后的幾年中,我很幸運(yùn)地在多種外形和平臺上進(jìn)行了測試。這很重要,因?yàn)樵贏ndroid中,構(gòu)建配置并非千篇一律。應(yīng)用程序開發(fā)人員可能不需要與游戲開發(fā)人員相同的配置。而且,構(gòu)建內(nèi)核的人可能不需要花那么多錢就可以在很短的時(shí)間內(nèi)從源代碼構(gòu)建完整的Android ROM。操作系統(tǒng)選擇又如何—現(xiàn)在可以(也不能)使用什么?我希望也能對此進(jìn)行更多探索,尤其是在Windows和Canonical致力于將成熟的Bash引入Windows 10的情況下。

為了使本系列正式開始,我們必須找到從源頭構(gòu)建AOSP項(xiàng)目的最大潛在瓶頸。我們不經(jīng)常去購物而不購買PC或進(jìn)行升級而又不知道把錢放在哪里。因此,基于3年的研究和可量化的結(jié)果,我準(zhǔn)備分享我的發(fā)現(xiàn)?,F(xiàn)在是預(yù)期的免責(zé)聲明:這些發(fā)現(xiàn)是基于個(gè)人經(jīng)驗(yàn),不可能考慮所有組合。那些擁有自己的構(gòu)建配置的人,請聽完后告訴我們,您的構(gòu)建進(jìn)展如何!時(shí)間還指的是啟用并填充了ccache的內(nèi)部版本–當(dāng)尚未填充ccache時(shí),通常是兩倍。

m550-簡介磁盤I / O:去年,我必須向Cyanogen的Tom Marshall(也是Kang團(tuán)隊(duì)的成員)致敬,以指出我的方向。老實(shí)說,當(dāng)他告訴我這將成為CPU 的瓶頸時(shí),我不相信他。但是在過去的6個(gè)月中,我已經(jīng)能夠通過可量化的數(shù)據(jù)進(jìn)行備份。在高端CPU(例如大多數(shù)臺式機(jī)Intel Core i7型號)中,這是系統(tǒng)將遇到的最大瓶頸。

我們來測試一下這4種構(gòu)建配置。我將在此處突出顯示CPU,

Build 1是我的“未升級” PC,是配備32GB DDR3-2400 RAM的Intel i7-4790K,用于主驅(qū)動(dòng)器的Samsung 840 Evo 250GB和較舊的Micron P400E 100GB。

Build 2是Build 1的升級版?,F(xiàn)在,它具有超頻至4.0 GHz的Intel i7-5960X,32GB DDR4-3200 RAM,Samsung SM951 512GB AHCI m.2 SSD和之前的兩個(gè)SSD。完整的構(gòu)建規(guī)范在PCPartPicker上。

Build 3是最近的用戶版本,具有Intel i7-5820K(超頻至4.2 GHz),16GB DDR4-2400和2個(gè)Samsung 840 EVO 120GB RAID0(條紋)配置。

版本4,最近的服務(wù)器版本,具有正常速度的Intel Xeon E3-1270 v5、32 GB DDR4-2133,Samsung 950 Pro 512GB NVMe m.2以及RAID5陣列中的4個(gè)SATA Samsung Enterprise SSD。

如果僅查看這些內(nèi)容,您認(rèn)為哪一個(gè)構(gòu)建時(shí)間最短?第二呢?令我震驚的不是第二種配置花費(fèi)了最少的構(gòu)建時(shí)間,而是第三種配置,構(gòu)建CyanogenMod 13.0不到14分鐘。因此可以肯定,占主導(dǎo)地位的CPU將排在第二位,對嗎?又錯(cuò)了。我剛剛完成測試的Build 4,僅用了25分鐘以上!僅在這里是我當(dāng)前的構(gòu)建位置,比具有一半內(nèi)核和線程但有3個(gè)SSD的SSD陣列的系統(tǒng)慢2分鐘,而我的SSD是獨(dú)立的。如果過熱,SM951也會出現(xiàn)節(jié)流問題,在這種情況下,這可能是非常真實(shí)的因素。第一次也是最慢的構(gòu)建大約花費(fèi)了30分鐘,這是我構(gòu)建CM 13.0的唯一幾次。

SSD過去也很難獲得,因此對該主題的討論很少。但是,在過去的一年中,零售和二手市場的價(jià)格均大幅下降。現(xiàn)在120GB固態(tài)硬盤的價(jià)格低于50美元,這不再是向系統(tǒng)添加一個(gè)固態(tài)硬盤的障礙。傳統(tǒng)的硬盤驅(qū)動(dòng)器也可以完成這項(xiàng)工作,但是如果不使用SSD,則用戶更有可能比其他人先遇到這個(gè)瓶頸。

CPU睡眠CPU: 當(dāng)我在上面提到最大的瓶頸是磁盤I / O時(shí),它的確會假設(shè)并非總是如此-我使用的每個(gè)構(gòu)建都具有Intel Core i7。但是,正如我在Xeon服務(wù)器上發(fā)現(xiàn)的那樣,磁盤可以保持正常運(yùn)行,但隨后會通過最重的構(gòu)建過程使所有8個(gè)CPU線程保持高利用率。并盡我所能,如果沒有上面發(fā)現(xiàn)的RAID陣列,我什至沒有發(fā)現(xiàn)Haswell-E在大多數(shù)構(gòu)建過程中都無法充分利用。因此,如果您正在尋找最適合自己的建筑,請考慮使用Intel i7-5820K。

的確,它是X99,因此該主板可能比Z97主板貴。但我們?nèi)蕴幱赬99周期的第一年。預(yù)計(jì)Broadwell-E的價(jià)格在發(fā)布時(shí)也將與Haswell-E相似,這意味著您應(yīng)該能夠以與i7-4790K或i7-6700K幾乎相同的價(jià)格購買發(fā)燒友細(xì)分市場。

在Intel上,目前沒有太多理由超越5820K,因?yàn)槟梢垣@得令人印象深刻的構(gòu)建時(shí)間。大部分情況下,以下更高的內(nèi)核/線程數(shù)量以及處理器速度,將使您更快地構(gòu)建時(shí)間。去年,技嘉Brix上的i7-4770R平均讓我呆了42分鐘。雖然不是最快的,但它滿足了我的需求,并允許我進(jìn)行專用的低功耗配置。您會發(fā)現(xiàn)與AMD APU相同-盡管它們目前可能不如Intel APU出色,但它們很容易完成工作,而且通常價(jià)格比購買Intel低。我密切關(guān)注這種情況,因?yàn)槿绻{言屬實(shí),那么基于Zen的APU可能會大大縮小這一差距。

對于那些選擇消除這些瓶頸的人來說,這是一個(gè)很大的進(jìn)步,這種瓶頸更適用于家庭用戶而不是辦公室。通過消除這些瓶頸,系統(tǒng)的總體性能將得到提高。尤其是游戲玩家會發(fā)現(xiàn),解決這些瓶頸的升級將在幾乎所有情況下提高游戲性能。盡管它可能沒有贏得最快的構(gòu)建時(shí)間,但是第二次構(gòu)建卻帶來了意外的驚喜–在Just Cause 3上的加載時(shí)間為30秒 ,而其他許多人則在幾分鐘內(nèi)抱怨加載時(shí)間。最終,這些構(gòu)建時(shí)間確實(shí)是高端,對許多人來說可能算是過高的價(jià)格了……但是至少現(xiàn)在,關(guān)于更多內(nèi)核將意味著更快構(gòu)建的爭論終于被擱置了。


免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!

最新文章

精彩推薦

圖文推薦

點(diǎn)擊排行

2016-2022 All Rights Reserved.平安財(cái)經(jīng)網(wǎng).復(fù)制必究 聯(lián)系QQ280 715 8082   備案號:閩ICP備19027007號-6

本站除標(biāo)明“本站原創(chuàng)”外所有信息均轉(zhuǎn)載自互聯(lián)網(wǎng) 版權(quán)歸原作者所有。