日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

Ubuntu大佬神操作!Rust版Linux調(diào)度器秀麻了,性能遠(yuǎn)超C!

來源: 責(zé)編: 時(shí)間:2024-01-24 09:03:21 245觀看
導(dǎo)讀整理丨諾亞出品 | 51CTO技術(shù)棧(微信號(hào):blog51cto)近日,一位Linux內(nèi)核工程師出于興趣用Rust編寫了一個(gè)Linux調(diào)度器。這位來自Ubuntu制造商Canonical的工程師名叫Andrea Righi。他在X(推特)上發(fā)文談到,他利用圣誕假期進(jìn)行了這

整理丨諾亞gIk28資訊網(wǎng)——每日最新資訊28at.com

出品 | 51CTO技術(shù)棧(微信號(hào):blog51cto)gIk28資訊網(wǎng)——每日最新資訊28at.com

近日,一位Linux內(nèi)核工程師出于興趣用Rust編寫了一個(gè)Linux調(diào)度器。gIk28資訊網(wǎng)——每日最新資訊28at.com

這位來自Ubuntu制造商Canonical的工程師名叫Andrea Righi。他在X(推特)上發(fā)文談到,他利用圣誕假期進(jìn)行了這項(xiàng)實(shí)驗(yàn)。沒想到這個(gè)只是“出于好玩”而進(jìn)行的項(xiàng)目卻帶來了意外驚喜。gIk28資訊網(wǎng)——每日最新資訊28at.com

初步結(jié)果顯示:通過sched_ext實(shí)現(xiàn)并基于eBPF技術(shù)、能夠在運(yùn)行時(shí)加載的Rust調(diào)度器具有很大的潛力和希望。gIk28資訊網(wǎng)——每日最新資訊28at.com

1、令人意外的結(jié)果:Rust版超越默認(rèn)版

“結(jié)果讓我很驚訝。它不僅能夠正常工作,而且在某些負(fù)載(例如游戲)下甚至可以超越Linux內(nèi)核默認(rèn)的EEVDF調(diào)度器。”gIk28資訊網(wǎng)——每日最新資訊28at.com

Righi表示,盡管仍處于原型階段,但它成功完成了使命,即“證明在用戶空間實(shí)現(xiàn)運(yùn)行的工作調(diào)度器是可行的,并且在某些特定條件下甚至可以超越Linux默認(rèn)調(diào)度器的性能”。gIk28資訊網(wǎng)——每日最新資訊28at.com

他還分享了一段視頻:一個(gè)簡單的電腦游戲Terraria正常運(yùn)行,同時(shí)該機(jī)器正在后臺(tái)進(jìn)行內(nèi)核編譯。gIk28資訊網(wǎng)——每日最新資訊28at.com

gIk28資訊網(wǎng)——每日最新資訊28at.com

基于廣大吃瓜群眾的要求,Righi將Linux默認(rèn)調(diào)度器和Rust版調(diào)度器的內(nèi)核構(gòu)建時(shí)間和游戲性能進(jìn)行了比對(duì)。gIk28資訊網(wǎng)——每日最新資訊28at.com

截圖:來自X@arighi截圖:來自X@arighigIk28資訊網(wǎng)——每日最新資訊28at.com

可以看到,其中:gIk28資訊網(wǎng)——每日最新資訊28at.com

  • linux sched:內(nèi)核構(gòu)建280s,Terraria ~每秒30幀
  • rustland:內(nèi)核構(gòu)建361s,Terraria ~每秒60幀

也就是說,切換到Rust版調(diào)度器后,游戲畫面提升到了每秒60幀,是之前的兩倍,而同期內(nèi)核編譯只是多花了約30%的構(gòu)建時(shí)間。由此可見,“scx_rustland”調(diào)度器在游戲中表現(xiàn)的確優(yōu)于Linux內(nèi)核默認(rèn)調(diào)度器。gIk28資訊網(wǎng)——每日最新資訊28at.com

Righi已將相關(guān)代碼托管在了GitHub上。感興趣的朋友可以繼續(xù)關(guān)注其未來的發(fā)展方向。gIk28資訊網(wǎng)——每日最新資訊28at.com

2、內(nèi)核調(diào)度器之爭:Linux需要更多的調(diào)度器嗎?

Linux內(nèi)核調(diào)度器負(fù)責(zé)執(zhí)行一項(xiàng)關(guān)鍵任務(wù),即分配給應(yīng)用程序一段段的CPU時(shí)間,旨在確保每個(gè)應(yīng)用程序都能公平地獲得執(zhí)行時(shí)間。gIk28資訊網(wǎng)——每日最新資訊28at.com

通常,這一目標(biāo)是通過使用完全公平調(diào)度(Completely Fair Scheduler, CFS)算法來實(shí)現(xiàn)的。(注:CFS算法致力于平衡各個(gè)應(yīng)用程序?qū)μ幚砥髻Y源的需求,以達(dá)到整體系統(tǒng)性能最優(yōu)化的效果。)gIk28資訊網(wǎng)——每日最新資訊28at.com

盡管Linux的“一刀切”式調(diào)度器在過去很長一段時(shí)間內(nèi)表現(xiàn)出色,但在如今分布式計(jì)算環(huán)境日益復(fù)雜、IT環(huán)境異構(gòu)化加劇的背景下,可能需要對(duì)其進(jìn)行更新升級(jí)。gIk28資訊網(wǎng)——每日最新資訊28at.com

當(dāng)傳統(tǒng)的單一調(diào)度策略難以滿足現(xiàn)實(shí)需求時(shí),人們?cè)趯で蟾嗥凭值穆窂剑热纾ㄟ^引入如BPF這樣的技術(shù)來實(shí)現(xiàn)更加靈活、可擴(kuò)展且針對(duì)性更強(qiáng)的調(diào)度機(jī)制。gIk28資訊網(wǎng)——每日最新資訊28at.com

簡單說明一下BPF。所謂BPF,是Berkeley Packet Filter的縮寫。BPF提供了一種當(dāng)內(nèi)核或應(yīng)用特定事件發(fā)生時(shí)候,執(zhí)行一段代碼的能力。BPF 采用了虛擬機(jī)指令規(guī)范,所以也可以看作一種虛擬機(jī)實(shí)現(xiàn),使我們可以在不修改內(nèi)核源碼和重新編譯的情況下,提供一種擴(kuò)展內(nèi)核的能力的方法。gIk28資訊網(wǎng)——每日最新資訊28at.com

2013 年由技術(shù)大牛Alexei Starovoitov 向Linux社區(qū)提交了重新實(shí)現(xiàn)BPF的內(nèi)核補(bǔ)丁,相關(guān)工作于2014年正式并入Linux 內(nèi)核主線。此舉將其擴(kuò)展成了通用的執(zhí)行引擎,稱為eBPF,其可以完成多種任務(wù),包括用來創(chuàng)建先進(jìn)的性能分析工具。gIk28資訊網(wǎng)——每日最新資訊28at.com

LWN.Net首席編輯Jonathan Corbett在今年2月評(píng)論道:“將BPF引入內(nèi)核CPU調(diào)度器只是時(shí)間問題。”gIk28資訊網(wǎng)——每日最新資訊28at.com

Corbett解釋說,基于BPF的調(diào)度器之所以有意義,有多個(gè)原因:它使得嘗試新的調(diào)度方法變得更加容易。如今的系統(tǒng)遠(yuǎn)比過去幾十年要復(fù)雜得多,因此需要更多領(lǐng)域特定和針對(duì)性的調(diào)度解決方案(例如針對(duì)游戲和網(wǎng)絡(luò)應(yīng)用的調(diào)度器)。此外,它還能為開發(fā)者提供一種針對(duì)其自身應(yīng)用程序優(yōu)化CPU使用方式的方法。gIk28資訊網(wǎng)——每日最新資訊28at.com

而Righi開發(fā)的scx_rustland是對(duì)sched_ext這一實(shí)驗(yàn)性Linux內(nèi)核特性的實(shí)現(xiàn),sched_ext允許運(yùn)行可在內(nèi)核中創(chuàng)建并加載的基于BPF的內(nèi)核線程調(diào)度器。該特性由來自Meta和Google的一組工程師以及其他內(nèi)核社區(qū)成員共同研發(fā),并希望有一天能將其合并到Linux內(nèi)核的核心代碼庫中。gIk28資訊網(wǎng)——每日最新資訊28at.com

值得注意的是,并非Linux社區(qū)中的每個(gè)人都支持動(dòng)態(tài)調(diào)度這一理念,其中包括Linus Torvalds本人。Linux調(diào)度器維護(hù)者Peter Zijlstra在評(píng)論sched_ext的首次發(fā)布時(shí)提到:“我討厭這一切”,并補(bǔ)充道,鑒于替代調(diào)度器引入的復(fù)雜性,Torvalds曾否決了之前關(guān)于此類調(diào)度器的所有嘗試。gIk28資訊網(wǎng)——每日最新資訊28at.com

此外,AMD和Google兩家公司也提出了各自的替代調(diào)度器方案。這些舉措表明,在如何優(yōu)化Linux內(nèi)核調(diào)度以適應(yīng)更復(fù)雜異構(gòu)環(huán)境的問題上,業(yè)內(nèi)依舊各執(zhí)一詞。gIk28資訊網(wǎng)——每日最新資訊28at.com

3、使用Rust,真的會(huì)比C更有優(yōu)勢(shì)嗎?

近年來,在編程語言界,Rust的存在感越來越強(qiáng)。不少公司、個(gè)人都開始對(duì)使用內(nèi)存安全的Rust進(jìn)行關(guān)鍵任務(wù)開發(fā)產(chǎn)生了濃厚興趣,以取代可能意外引入安全漏洞的C語言。gIk28資訊網(wǎng)——每日最新資訊28at.com

此前,我們也曾在《Linux 誕生32年:“暴君”Linus 平和了》一文中報(bào)道過,Torvalds對(duì)于在內(nèi)核中使用Rust持開放態(tài)度。他曾談到,從明年開始會(huì)著手將Rust引入驅(qū)動(dòng)程序、甚至是某些主要子系統(tǒng),總之“Rust確實(shí)有成為內(nèi)核重要部分的趨勢(shì)”。gIk28資訊網(wǎng)——每日最新資訊28at.com

因此,在Linux新聞網(wǎng)站Phoronix報(bào)道Righi的工作時(shí),將關(guān)注點(diǎn)放在了Rust的使用上。讓這篇文章引起討論的焦點(diǎn)從調(diào)度器本身挪開,集中到了關(guān)于使用Rust而非C語言是否更有優(yōu)勢(shì)上面。gIk28資訊網(wǎng)——每日最新資訊28at.com

有人質(zhì)疑:“這個(gè)調(diào)度器到底有何與眾不同,使其表現(xiàn)出了實(shí)質(zhì)性的差異?是因?yàn)樗形赐瓿蛇€是確實(shí)因?yàn)樗鼉?yōu)秀?因?yàn)槲也幌嘈臨ust本身會(huì)比C語言更好。究竟有什么是在Rust中能做而在C中做不到的呢?”gIk28資訊網(wǎng)——每日最新資訊28at.com

有人更是直接指出,調(diào)度器的設(shè)計(jì)始終涉及權(quán)衡取舍。顯然,這款為游戲優(yōu)化的調(diào)度器犧牲了一些其他功能以換取更好的游戲性能。gIk28資訊網(wǎng)——每日最新資訊28at.com

當(dāng)然也有人對(duì)此持更為積極的態(tài)度。在Hacker News討論中,有網(wǎng)友寫道:“這篇新聞告訴我們的是,Rust實(shí)現(xiàn)的調(diào)度器在這一領(lǐng)域可以與C語言實(shí)現(xiàn)相媲美。這一消息為我們解鎖了更多選擇,無論是C語言調(diào)度器還是Rust調(diào)度器,意味著Linux社區(qū)在處理各種工作負(fù)載時(shí)可以獲得更好的體驗(yàn)。”gIk28資訊網(wǎng)——每日最新資訊28at.com

而對(duì)于Righi本人,他在接受媒體采訪時(shí)表示,Rust提供了極大的靈活性,這使他能夠迅速啟動(dòng)并推進(jìn)這個(gè)項(xiàng)目。gIk28資訊網(wǎng)——每日最新資訊28at.com

“我不能說Rust在性能提升方面貢獻(xiàn)巨大,但它讓我能夠在幾周內(nèi)編寫出這個(gè)調(diào)度器,同時(shí)實(shí)現(xiàn)和重用了優(yōu)雅的高級(jí)抽象,并在我需要的時(shí)候能夠深入到底層細(xì)節(jié)。”gIk28資訊網(wǎng)——每日最新資訊28at.com

參考鏈接:

https://www.phoronix.com/news/Rust-Linux-Scheduler-ExperimentgIk28資訊網(wǎng)——每日最新資訊28at.com

https://thenewstack.io/bpf-opens-a-door-to-linux-dynamic-scheduling-maybe-with-rust/gIk28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-66964-0.htmlUbuntu大佬神操作!Rust版Linux調(diào)度器秀麻了,性能遠(yuǎn)超C!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: Stream幫你無感知切換消息中間件

下一篇: 谷歌裁員政策引發(fā)內(nèi)部不滿,多名員工控訴公司“作惡”“混亂”“失去創(chuàng)新”

標(biāo)簽:
  • 熱門焦點(diǎn)
  • K60至尊版狂暴引擎2.0加持:超177萬跑分?jǐn)孬@性能第一

    Redmi的后性能時(shí)代戰(zhàn)略發(fā)布會(huì)今天下午如期舉辦,在本次發(fā)布會(huì)上,Redmi公布了多項(xiàng)關(guān)于和聯(lián)發(fā)科的深度合作,以及新機(jī)K60 Ultra在軟件和硬件方面的特性,例如:“K60 至尊版,雙芯旗艦
  • 6月iOS設(shè)備好評(píng)榜:第一蟬聯(lián)榜首近一年

    作為安兔兔各種榜單里變化最小的那個(gè),2023年6月的iOS好評(píng)榜和上個(gè)月相比沒有任何排名上的變化,僅僅是部分設(shè)備好評(píng)率的下降,長年累月的用戶評(píng)價(jià)和逐漸退出市場(chǎng)的老款機(jī)器讓這
  • 5月iOS設(shè)備性能榜:M1 M2依舊是榜單前五

    和上個(gè)月一樣,沒有新品發(fā)布的iOS設(shè)備性能榜的上榜設(shè)備并沒有什么更替,僅僅只有跑分變化而產(chǎn)生的排名變動(dòng),剛剛開始的蘋果WWDC2023,推出的產(chǎn)品也依舊是新款Mac Pro、新款Mac Stu
  • 印度登月最關(guān)鍵一步!月船三號(hào)今晚進(jìn)入環(huán)月軌道

    8月5日消息,據(jù)印度官方消息,月船三號(hào)將于北京時(shí)間今晚21時(shí)30分左右開始近月制動(dòng)進(jìn)入環(huán)月軌道。這是該探測(cè)器能夠成功的最關(guān)鍵步驟之一,如果成功將開始圍
  • Automa-通過連接塊來自動(dòng)化你的瀏覽器

    1、前言通過瀏覽器插件可實(shí)現(xiàn)自動(dòng)化腳本的錄制與編寫,具有代表性的工具就是:Selenium IDE、Katalon Recorder,對(duì)于簡單的業(yè)務(wù)來說可快速實(shí)現(xiàn)自動(dòng)化的上手工作。Selenium IDEKat
  • 三分鐘白話RocketMQ系列—— 如何發(fā)送消息

    我們知道RocketMQ主要分為消息 生產(chǎn)、存儲(chǔ)(消息堆積)、消費(fèi) 三大塊領(lǐng)域。那接下來,我們白話一下,RocketMQ是如何發(fā)送消息的,揭秘消息生產(chǎn)全過程。注意,如果白話中不小心提到相關(guān)代
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時(shí)候了!學(xué)弟,最近學(xué)習(xí)的怎么樣啊 了不起學(xué)弟:最近學(xué)習(xí)的還不錯(cuò),每天都在學(xué)習(xí),每天都在進(jìn)步! 了不起:那你最近學(xué)習(xí)的什么呢? 了不起學(xué)弟:最近在學(xué)習(xí)C
  • 攜眾多高端產(chǎn)品亮相ChinaJoy,小米帶來一場(chǎng)科技與人文的視聽盛宴

    7月28日,全球數(shù)字娛樂領(lǐng)域最具知名度與影響力的年度盛會(huì)中國國際數(shù)碼互動(dòng)娛樂展覽會(huì)(簡稱ChinaJoy)在上海新國際博覽中心盛大開幕。作為全球領(lǐng)先的科
  • 朋友圈可以修改可見范圍了 蘋果用戶可率先體驗(yàn)

    近日,iOS用戶迎來微信8.0.27正式版更新,除了可更換二維碼背景外,還新增了多項(xiàng)實(shí)用功能。在新版微信中,朋友圈終于可以修改可見范圍,簡單來說就是已發(fā)布的朋友圈
Top 主站蜘蛛池模板: 油尖旺区| 岢岚县| 南开区| 威宁| 桓仁| 海晏县| 衡南县| 梨树县| 邮箱| 大田县| 湄潭县| 呼伦贝尔市| 涟源市| 高陵县| 宁蒗| 丹寨县| 石河子市| 抚顺市| 三门县| 阜宁县| 长春市| 论坛| 邯郸市| 三原县| 清镇市| 蒙阴县| 舞钢市| 磴口县| 油尖旺区| 海淀区| 汝阳县| 清河县| 蕲春县| 张家口市| 盈江县| 武邑县| 咸宁市| 克拉玛依市| 中方县| 海丰县| 文安县|