0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux內(nèi)核代碼修改將為性能測試獲8450%提升

馬哥Linux運(yùn)維 ? 來源:OSC開源社區(qū) ? 作者:OSC開源社區(qū) ? 2022-03-09 14:16 ? 次閱讀

Jason Donenfeld 是 WireGuard 的主要開發(fā)者,同時(shí)他也是 Linux 內(nèi)核隨機(jī)數(shù)相關(guān)代碼的維護(hù)者,近日在他的領(lǐng)導(dǎo)下,Linux 內(nèi)核的隨機(jī)數(shù)生成器代碼有了巨大幅度的改進(jìn)。 在之前的 Linux 5.17 中,Jason Donenfeld 就在隨機(jī)代碼用 BLAKE2s 代替了 SHA1,由于 BLAKE2s 自帶的特性,前者通常比后者更快更安全。經(jīng)過測試,通過這個(gè)簡單的轉(zhuǎn)換就能獲得 131% 左右的速度提升。 雖然在 Linux 5.17 中有了速度上的大幅提升,但 Jason Donenfeld 對此并沒滿足。因此在 Linux 5.18 中他對隨機(jī)代碼作出了更多的改進(jìn)。

cd964870-9f64-11ec-952b-dac502259ad0.png

通過查看 Linux 的random.git倉庫的日志能夠看出(上圖),開發(fā)者 Jason Donenfeld 在最近兩天時(shí)間里進(jìn)行了大量的代碼提交。這些提交內(nèi)容都將在 3 月下旬 Linux 5.18 的合并窗口啟動(dòng)時(shí)引入內(nèi)核。

cdb60ee4-9f64-11ec-952b-dac502259ad0.png

在郵件中特別強(qiáng)調(diào)到,通過使用正在開發(fā)的最新代碼,用于獲取隨機(jī)字節(jié)的 getrandom() 調(diào)用能夠獲得更好的性能。在配備英特爾 Xeon E5-2697 v2 @ 2.70GHz CPU 和 112G 內(nèi)存的設(shè)備上進(jìn)行 stress-ng getrandom() 基準(zhǔn)測試后,更是獲得了 8450% 的性能提升。 此次更改基本上會(huì)將之前的全局結(jié)構(gòu)(實(shí)際上是 per-numa 節(jié)點(diǎn)結(jié)構(gòu))更改為 per-cpu 結(jié)構(gòu),這意味著快速路徑上的許多鎖都會(huì)消失。因此,當(dāng)在具備多核的 CPU 上同時(shí)嘗試 getrandom() 時(shí),毫無疑問性能會(huì)出現(xiàn)提升。只不過沒想到在測試中能帶來 8450% 的提升。 除此之外,當(dāng)從 per-numa 更改為 per-cpu 后,也將不再需要被推遲到工作隊(duì)列上線后才能進(jìn)行。也正如我之前所說,此次改進(jìn)將會(huì)為高核心數(shù)的電腦和服務(wù)器帶來巨大收益。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1382

    瀏覽量

    40385
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11342

    瀏覽量

    210222

原文標(biāo)題:性能提升8450%,Linux內(nèi)核函數(shù)獲大幅改進(jìn)

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    低空視頻傳輸在望實(shí)時(shí)linux系統(tǒng)上的應(yīng)用

    實(shí)時(shí)linux系統(tǒng)優(yōu)化視頻傳輸系統(tǒng),可以顯著提升低空經(jīng)濟(jì)的智能化與自動(dòng)化水平。 1. 望實(shí)時(shí)linux系統(tǒng)在視頻傳輸中的角色 1.1
    的頭像 發(fā)表于 01-24 17:21 ?116次閱讀

    實(shí)時(shí)Linux系統(tǒng)與Betaflight的結(jié)合:計(jì)算與飛控的完美協(xié)作

    隨著無人機(jī)技術(shù)的迅猛發(fā)展,高性能計(jì)算和精確飛行控制的結(jié)合顯得尤為重要。在這一領(lǐng)域,望實(shí)時(shí)Linux系統(tǒng)和Betaflight飛控固件的結(jié)合為開發(fā)者提供了強(qiáng)大的工具鏈。本文將探討如何利用望
    的頭像 發(fā)表于 01-10 16:17 ?118次閱讀

    騰訊云內(nèi)核團(tuán)隊(duì)修復(fù)Linux關(guān)鍵Bug

    Maintainer深感棘手的關(guān)鍵內(nèi)核bug。 這一改進(jìn)方案經(jīng)過嚴(yán)格評(píng)審和測試,最終被合并進(jìn)入后續(xù)的Linux LTS(長期支持)版本中,標(biāo)志著騰訊云在操作系統(tǒng)內(nèi)核領(lǐng)域的技術(shù)實(shí)力得到了
    的頭像 發(fā)表于 12-31 10:58 ?264次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-Linux內(nèi)核移植之內(nèi)核簡介

    學(xué)到本章節(jié),大家應(yīng)該對Linux操作系統(tǒng)都有了一定的了解,但可能還不知道我們拿到手的內(nèi)核源碼都經(jīng)歷了什么。linux有一個(gè)龐大的開源社區(qū),每個(gè)人都可以向開源社區(qū)提交代碼。由于
    發(fā)表于 12-13 09:03

    嵌入式工程師都在找的【Linux內(nèi)核調(diào)試技術(shù)】建議收藏!

    內(nèi)核調(diào)試技術(shù),并通過一個(gè)案例分析來幫你加深理解。 常見的Linux內(nèi)核調(diào)試技術(shù) printk()調(diào)試技術(shù) printk()是調(diào)試內(nèi)核代碼
    發(fā)表于 11-28 15:37

    linux驅(qū)動(dòng)程序如何加載進(jìn)內(nèi)核

    ,需要了解Linux內(nèi)核的基本概念和API。以下是一些關(guān)鍵概念: 1.1 內(nèi)核模塊:Linux內(nèi)核模塊是一種動(dòng)態(tài)加載和卸載的
    的頭像 發(fā)表于 08-30 15:02 ?566次閱讀

    linux驅(qū)動(dòng)程序的編譯方法是什么

    的源代碼中,并隨內(nèi)核一起編譯。這種方法適用于驅(qū)動(dòng)程序已經(jīng)非常穩(wěn)定,且不打算頻繁修改的情況。具體步驟如下: 下載并安裝Linux內(nèi)核
    的頭像 發(fā)表于 08-30 14:46 ?745次閱讀

    延時(shí)僅33us,Linux-RT實(shí)時(shí)性能測試分享—基于瑞芯微RK3562J國產(chǎn)平臺(tái)

    。Target#cat /proc/cmdline 圖 4 進(jìn)入評(píng)估板文件系統(tǒng),執(zhí)行如下命令,修改內(nèi)核printk日志等級(jí),避免內(nèi)核打印信息影響實(shí)時(shí)測試。Target#echo 1 &
    發(fā)表于 08-22 13:51

    Linux內(nèi)核測試技術(shù)

    內(nèi)核測試技術(shù)是實(shí)現(xiàn)這一目標(biāo)的關(guān)鍵手段。本文將詳細(xì)介紹 Linux 內(nèi)核測試的各種技術(shù),包括單元測試
    的頭像 發(fā)表于 08-13 13:42 ?568次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b><b class='flag-5'>測試</b>技術(shù)

    基于望實(shí)時(shí)Linux的高性能運(yùn)動(dòng)控制器適配

    國科環(huán)宇依托深厚的技術(shù)積累與實(shí)戰(zhàn)經(jīng)驗(yàn),成功推出了基于望實(shí)時(shí)Linux的高性能運(yùn)動(dòng)控制器適配方案。該方案不僅保留了Linux的通用性與兼容性,還通過自研的調(diào)度算法、網(wǎng)絡(luò)優(yōu)化技術(shù)及先進(jìn)的
    的頭像 發(fā)表于 08-08 13:51 ?292次閱讀
    基于望<b class='flag-5'>獲</b>實(shí)時(shí)<b class='flag-5'>Linux</b>的高<b class='flag-5'>性能</b>運(yùn)動(dòng)控制器適配

    Linux內(nèi)核中的頁面分配機(jī)制

    Linux內(nèi)核中是如何分配出頁面的,如果我們站在CPU的角度去看這個(gè)問題,CPU能分配出來的頁面是以物理頁面為單位的。也就是我們計(jì)算機(jī)中常講的分頁機(jī)制。本文就看下Linux內(nèi)核是如何管
    的頭像 發(fā)表于 08-07 15:51 ?339次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>中的頁面分配機(jī)制

    歡創(chuàng)播報(bào) 華為宣布鴻蒙內(nèi)核已超越Linux內(nèi)核

    自誕生以來的最大一次升級(jí)換代。HarmonyOS NEXT不依賴傳統(tǒng)的Unix內(nèi)核Linux內(nèi)核,而是依靠自主的鴻蒙內(nèi)核。這就意味著,鴻蒙操作系統(tǒng)最終將去掉
    的頭像 發(fā)表于 06-27 11:30 ?890次閱讀

    基于全志T507-H的Linux-RT實(shí)時(shí)性測試案例分享

    的POSIX API等),實(shí)現(xiàn)產(chǎn)品快速上市的期望。 Linux-RT實(shí)時(shí)性測試(Cyclictest工具) Cyclictest常用于實(shí)時(shí)系統(tǒng)的基準(zhǔn)測試,是評(píng)估實(shí)時(shí)系統(tǒng)相對性能的最常用
    發(fā)表于 06-03 09:50

    如何修改Kernel Affinity提升openplc性能?

    如何修改Kernel Affinity提升openplc性能
    發(fā)表于 05-22 06:36

    使用 PREEMPT_RT 在 Ubuntu 中構(gòu)建實(shí)時(shí) Linux 內(nèi)核

    盟通技術(shù)干貨構(gòu)建實(shí)時(shí)Linux內(nèi)核簡介盟通技術(shù)干貨Motrotech如果需要在Linux中實(shí)現(xiàn)實(shí)時(shí)計(jì)算性能,進(jìn)而有效地將Linux轉(zhuǎn)變?yōu)镽T
    的頭像 發(fā)表于 04-12 08:36 ?2717次閱讀
    使用 PREEMPT_RT 在 Ubuntu 中構(gòu)建實(shí)時(shí) <b class='flag-5'>Linux</b> <b class='flag-5'>內(nèi)核</b>