精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

“不服跑個分?”是噱頭還是實力?

網絡
我們在評估自動化性能調優軟件 tuned 的時候,發現它在服務器場景,對 Linux 內核調度器相關的參數做了一些微小的修改,但是這些修改卻很大程度改善了 hackbench 這款跑分軟件的性能。是不是很有意思?讓我們一起來一探究竟。

一、背景:性能之戰

“不服跑個分”已經淪為手機行業的調侃用語,但是實話實說,在操作系統領域“跑分”確實是最重要的評價方式之一。比如 Linux 內核社區常常以跑分軟件得分,來評價一個優化補丁的價值。甚至還有 phoronix 這樣專注于 Linux 跑分的媒體。而且今天我還想說一點,讓軟件跑分高,這是實力的體現,是建立在對內核的深刻理解基礎上的。本文的故事就源于一次日常的性能優化分析。我們在評估自動化性能調優軟件 tuned 的時候,發現它在服務器場景,對 Linux 內核調度器相關的參數做了一些微小的修改,但是這些修改卻很大程度改善了 hackbench 這款跑分軟件的性能。是不是很有意思?讓我們一起來一探究竟。

本文將從幾個方面展開,并重點介紹黑體字部分:

相關知識簡介
hackbench 工作模式簡介
hackbench 性能受損之源
雙參數優化

思考與拓展

二、相關知識簡介

2.1 CFS調度器

Linux 中大部分(可以粗略認為是實時任務之外的所有)線程/進程,都由一個叫 CFS(完全公平調度器)的調度器進行調度,它是 Linux 最核心的組件之一。(在Linux中,線程和進程只有細微差別,下文統一用進程表述)

CFS 的核心是紅黑樹,用于管理系統中進程的運行時間,作為選擇下一個將要運行的進程的依據。此外,它還支持優先級、組調度(基于我們熟知的 cgroup 實現)、限流等功能,滿足各種高級需求。CFS 的詳細介紹。

2.2 hackbench

hackbench 是一個針對 Linux 內核調度器的壓力測試工具,它的主要工作是創建指定數量的調度實體對(線程/進程),并讓它們通過 sockets/pipe 進行數據傳輸,最后統計整個運行過程的時間開銷。

2.3 CFS 調度器參數

本文重點關注以下兩個參數,這兩個參數也是影響 hackbench 跑分性能的重要因素。系統管理員可以使用 sysctl 命令來進行設置。

最小粒度時間:kernel.sched_min_granularity_ns

通過修改 kernel.sched_min_granularity_ns,可以影響 CFS 調度周期(sched period)的時間長短。例如:設置kernel.sched_min_granularity_ns = m,當系統中存在大量可運行進程時,m 越大,CFS 調度周期就越長。

如圖 1 所示,每個進程都能夠在 CPU 上運行且時間各有長短,sched_min_granularity_ns 保證了每個進程的最小運行時間(優先級相同的情況下),sched_min_granularity_ns 越大每個進程單次可運行的時間就越長。

圖 1:sched_min_granularity_ns 示意圖

喚醒搶占粒度:kernel.sched_wakeup_granularity_ns

kernel.sched_wakeup_granularity_ns 保證了重新喚醒的進程不會頻繁搶占正在運行的進程,kernel.sched_wakeup_granularity_ns 越大,喚醒進程進行搶占的頻率就越小。

如圖 2 所示,有 process-{1,2,3} 三個進程被喚醒,因為 process-3 的運行時間大于 curr(正在 CPU 上運行的進程)無法搶占運行,而 process-2 運行時間小于 curr 但其差值小于 sched_wakeup_granularity_ns 也無法搶占運行,只有 process-1 能夠搶占 curr 運行,因此 sched_wakeup_granularity_ns 越小,進程被喚醒后的響應時間就越快(等待運行時間越短)。

圖 2:sched_wakeup_granularity_ns 示意圖

三、hackbench 工作模式簡介

hackbench 工作模式分為 process mode 和 thread mode,主要區別就是以創建 process 還是 thread 為基礎來進行測試,下面以 thread 來進行介紹。

hackbench 會創建若干線程(偶數),均分為兩類線程:sender 和 receiver
并將其劃分為 n 個 group,每個 group 包含 m 對 sender 和 receiver。
每個 sender 的任務就是給其所在 group 的所有 receiver 輪流發送 loop 次大小為 datasize 的數據包
receiver 則只負責接收數據包即可。
同一個 group 中的sender 和 receiver 有兩種方式進行通信:pipe 和 local socket(一次測試中只能都是 pipe 或者 socket),不同 group 之間的線程沒有交互關系。
通過上面 hackbench 模型分析,可以得知同一個 group 中的 thread/process 主要是 I/O 密集型,不同 group 之間的 thread/process 主要是 CPU 密集型。

圖 3: hackbench 工作模式

主動上下文切換:

對于 receiver,當 buffer 中沒有數據時,receiver 會被阻塞并主動讓出 CPU 進入睡眠。
對于 sender,如果 buffer 中沒有足夠空間寫入數據時, sender 也會被阻塞且主動讓出 CPU。
因此,系統中"主動上下文切換"是很多的,但同時也存在“被動上下文切換”。后者會受到接下來我們將要介紹的參數影響。

四、hackbench性能影響之源

在hackbench-socket 測試中,tuned修改了 CFS 的 sched_min_granularity_ns 和 sched_wakeup_granularity_ns 兩個參數,導致了性能的顯著區別。具體如下:

接下來我們調整這兩個調度參數來進行進一步的深入分析。

五、雙參數優化

注:為了簡介表達下面會以 m 表示 kernel.sched_min_granularity_ns,w 表示 kernel.sched_wakeup_granularity_ns

為了探索雙參數對于調度器的影響,我們選擇每次固定一個參數,研究另一個參數變化對于性能的影響,并使用系統知識來解釋這種現象背后的原理。

5.1 固定 sched_wakeup_granularity_ns

圖 4: 固定 w,調整m

在上圖中我們固定了參數 w 并根據參數 m 變化趨勢其劃分為三個部分:區域A(1ms~4ms),區域B(4ms~17ms),區域C(17ms~30ms)。在區域A中四條曲線均呈現一個極速下降的趨勢,而在區域B中四條曲線都處于一種震蕩狀態,波動較大,最后在區域C中四條曲線都趨于穩定。

在第二節相關知識中可以知道 m 影響著進程的運行時間,同時也意味著它影響著進程的“被動上下文切換”。

對于區域A而言,搶占過于頻繁,而大部分搶占都是無意義的,因為對端無數據可寫/無緩沖區可用,導致大量冗余的“主動上下文切換“。此時較大的 w 能讓 sender/receiver 有更多的時間來寫入數據/消耗數據來減少對端進程無意義的“主動上下文切換“。
對于區域B而言,隨著 m 的增加漸漸滿足 sender/receiver 執行任務的時間需求能夠在緩沖區寫入/讀出足夠的數據,因此需要較小的 w 來增加喚醒進程的搶占幾率,讓對端進程能夠更快的響應處理數據,減少下一輪調度時的“主動上下文切換”。
對于區域C而言,m已經足夠大,已經幾乎不會有“被動上下文切換”發生,進程會在執行完任務之后進行“主動上下文切換”等待對端進程進行處理,此時 m 對性能的影響就很小了。

5.2 固定 sched_min_granularity_ns

圖 5: 固定 m,調整w

在上圖中我們固定了參數 m,同樣劃分了三個區域:

在區域A中,同樣存在圖 4 中的現象,較大 m 受 w 的影響較小,而較小的 m 隨著 w 的增大性能會越來越好。
在區域B中,中等大小的 m(8ms/12ms)進程還是存在較多“被動上下文切換”,并且其中的進程已經處理了相當一部分數據期望對端進程能夠盡快的響應處理,因此較大 w 會嚴重影響中等大小 m 的性能。
在區域C中圖5和圖4表現一致都是趨于穩定,因為 w 過大時幾乎不會發生喚醒搶占,因此這時單純 w 值的變化對性能的影響并不大,但是過大的 w 對于中等大小的 m 則會造成性能問題(原因同上條)。

5.3 性能趨勢總覽

下面是一個實驗數據的熱力總覽圖,來直觀展示 m 和 w 之間的制約關系,以供需要的同學參考分析。三個區域和圖 4、圖 5 的區域會略有不同。

圖 6:總覽圖

5.4 最優雙參數(對于 hackbench )

從上面兩節的分析可知對于 hackbench 這樣帶有“主動上下文切換”的場景可以選擇較大的 m(例如:15~20ms)。
在pipe/socket 雙向通信的場景中,對端的響應時間會對影響進程的下一次處理,為了讓對端進程能夠及時響應可以選擇一個中等大小的 w(例如:6~8ms)來獲取較高的性能。

六、思考與擴展

在桌面場景中,應用更偏向于交互型,應用的服務質量也更多的體現在應用對于用戶操作的響應時間,因此可以選擇較小的 sched_wakeup_granularity_ns 來提高應用的交互性。
在服務器場景中,應用更偏向于計算處理,應用需要更多的運行時間來進行密集計算,因此可以選擇較大的 sched_min_granularity_ns,但是為了防止單個進程獨占 CPU 過久同時也為了能夠及時處理客戶端請求響應,應該選擇一個中等大小的 sched_wakeup_granularity_ns。
在 Linux 原生內核中 m 和 w 的默認參數被設置為適配桌面場景,Anolis OS的用戶,需要根據自己部署的應用的場景,屬于桌面型還是服務器型,來選擇內核參數,或者使用tuned的推薦配置。而 hackbench 作為一個介于桌面和服務器間的應用,也可以作為配置的參考。

 

責任編輯:梁菲 來源: 阿里云云棲號
相關推薦

2018-05-12 09:32:37

云計算

2018-10-16 09:15:02

區塊鏈福布斯美聯社

2016-09-17 11:57:14

手機筆記本臺式機

2024-05-28 14:36:32

AI編碼場景

2012-04-01 09:44:22

云計算云成本

2018-04-26 10:43:28

2021-05-11 09:13:08

服務器存儲數據中心

2024-03-12 10:32:08

2022-08-09 14:21:27

元宇宙汽車VR/AR

2015-08-31 10:50:16

跑分手機

2025-09-04 08:13:00

2021-05-18 15:22:54

AI 數據人工智能

2011-06-29 16:27:26

數據中心操作系統

2009-09-08 12:00:44

2020-08-07 09:14:53

中臺戰略業務

2011-12-12 14:48:29

開放平臺

2015-12-14 09:32:05

DockerMesos開源

2020-05-07 10:53:04

人工智能技術開發

2015-06-30 11:04:05

路由器孕婦模式

2020-05-06 18:32:37

人工智能AI制藥
點贊
收藏

51CTO技術棧公眾號

神马电影网我不卡| 91麻豆成人精品国产免费网站| 秋霞综合在线视频| 欧美日韩在线直播| 久久久久久久久久久综合| 四虎成人免费在线| 韩国v欧美v日本v亚洲v| 98视频在线噜噜噜国产| 最新日韩免费视频| 开心激情综合| 欧美日韩国产精品自在自线| 六月婷婷在线视频| 老司机午夜在线视频| 91麻豆免费看| 99在线观看视频| 欧美国产一级片| 在线视频观看日韩| 久久精品一区中文字幕| 最近中文字幕免费视频| 98视频精品全部国产| 欧美亚洲一区二区三区四区| 91免费黄视频| 国产高清一区二区三区视频| 国产日韩综合av| 激情久久av| 不卡av中文字幕| 精品一区二区成人精品| 国产精品99久久99久久久二8| 国产污视频在线看| 在线精品国产| www.美女亚洲精品| 日韩女同一区二区三区| 免费成人av| 日韩的一区二区| 久久久男人的天堂| 午夜精品在线| 日韩女优制服丝袜电影| 九九热精品国产| 成人久久网站| 欧美午夜电影网| 国产精品人人妻人人爽人人牛| 国产社区精品视频| 天天操天天综合网| 你懂的av在线| 激情国产在线| 欧美日韩国产页| 久久久久久久久久久99| 丰乳肥臀在线| 亚洲不卡一区二区三区| 国产玉足脚交久久欧美| 国产丝袜在线观看视频| 亚洲一线二线三线久久久| 男人草女人视频| 综合久久2019| 亚洲宅男天堂在线观看无病毒 | 日韩欧美美女在线观看| 精品国产一区二区三区忘忧草| 丰满少妇一区二区三区专区| 秋霞午夜一区二区三区视频| 欧美一区二区三区婷婷月色| 永久av免费在线观看| 6080亚洲理论片在线观看| 精品对白一区国产伦| 免费不卡的av| 亚洲区小说区图片区qvod按摩| 日韩精品极品视频免费观看| 爱爱免费小视频| 精品国产乱码| 久久综合久久美利坚合众国| 欧美激情国产精品免费| 99伊人成综合| 国产脚交av在线一区二区| 亚洲无码精品国产| 国产酒店精品激情| 国产欧美在线一区二区| 九色国产在线观看| 中文字幕在线一区| 九九久久九九久久| 国产精品电影| 在线观看日韩国产| 亚洲精品性视频| youjizz欧美| 国产一区二区日韩| 久久国产在线观看| 午夜亚洲视频| 成人精品一区二区三区电影黑人 | 亚洲欧美综合精品久久成人| 欧美亚洲色综久久精品国产| 欧美激情第8页| 人九九综合九九宗合| 亚洲综合精品国产一区二区三区| 国产91精品一区二区麻豆网站| 精品午夜一区二区三区| 韩国av网站在线| 黄色精品在线看| 国产aⅴ爽av久久久久| 牛牛影视久久网| 色偷偷噜噜噜亚洲男人的天堂| 国产在线视频第一页| 日韩精品成人一区二区三区| 99久re热视频这里只有精品6| 午夜激情小视频| 中文字幕综合网| 欧美三级午夜理伦三级| 韩国一区二区三区视频| 亚洲欧洲日韩国产| 国产精品99精品无码视| 蜜臀av一区二区在线免费观看| 国产精品免费一区二区| 一级毛片视频在线| 欧美日韩亚洲激情| 国产成人av免费观看| 欧美午夜精品一区二区三区电影| 久久免费精品视频| 国产v片在线观看| 国产精品素人一区二区| 国产h视频在线播放| 精品一区二区三区亚洲| 这里只有精品在线观看| 亚洲免费在线观看av| 国产成人午夜片在线观看高清观看| 亚洲 国产 欧美一区| 亚洲国产福利| 亚洲第一天堂av| 欧美日韩综合一区二区| 久久99精品久久只有精品| 欧美在线3区| 在线看的毛片| 日韩精品免费综合视频在线播放| 亚洲国产美女视频| 韩国av一区二区三区四区| 亚洲乱码国产乱码精品天美传媒| 久久uomeier| 亚洲免费伊人电影在线观看av| 久操免费在线视频| 国产成人综合在线| 国产精品免费看久久久无码| 亚洲免费资源| 精品国偷自产在线| 91成人在线免费| 国产精品另类一区| 欧美成年人视频在线观看| 欧美日韩国产在线观看网站 | 成人免费毛片视频| 久久综合av免费| 欧美牲交a欧美牲交| 久久1电影院| 91精品国产色综合| 亚洲欧美一区二区三| 岛国av午夜精品| 久久亚洲AV成人无码国产野外| 国产精品久久久久久久免费软件| 精品久久sese| 欧美舌奴丨vk视频| 一区二区三区视频在线 | 日韩一区二区三区免费观看| 免费精品在线视频| 狠狠狠色丁香婷婷综合久久五月| 在线观看视频黄色| 日韩成人在线观看视频| 国内精品模特av私拍在线观看| 天天操天天射天天舔| 欧美日韩国内自拍| 亚洲天堂岛国片| 久久99精品网久久| 97超碰国产精品| 欧美一区 二区| 国产精品99久久久久久人 | 亚洲图片你懂的| 中文字幕18页| 免费在线播放第一区高清av| 亚州欧美一区三区三区在线| 久久久久亚洲精品中文字幕| 高清一区二区三区四区五区| 欧洲亚洲精品视频| 欧美日韩成人综合在线一区二区| 欧美黄色免费在线观看| 久久免费偷拍视频| 激情在线观看视频| 99视频一区| 亚洲韩国在线| 澳门久久精品| 国产精品精品视频一区二区三区| 国产原厂视频在线观看| 精品亚洲永久免费精品| 一级片免费观看视频| 亚洲一区二区三区爽爽爽爽爽| 波多野结衣 在线| 久久er99精品| 国产97在线 | 亚洲| 欧美好骚综合网| 精品一区二区国产| 日韩毛片免费看| 欧美综合一区第一页| 黄色网页网址在线免费| 精品亚洲永久免费精品| 99热在线只有精品| 日本久久电影网| 麻豆一区二区三区精品视频| 欧美国产成人在线| fc2成人免费视频| 九九**精品视频免费播放| 国产肥臀一区二区福利视频| 91精品国产91久久综合| 欧美大香线蕉线伊人久久| 玖玖精品一区| 国产女精品视频网站免费| 日韩脚交footjobhd| 欧美成人免费va影院高清| 风间由美一区| 国产丝袜一区视频在线观看| 午夜精品久久久久久久96蜜桃| 欧美日韩中文字幕一区二区| 国产黄色片免费看| 亚洲影视在线播放| 免费成年人视频在线观看| 国产欧美日韩在线观看| 亚洲AV无码国产精品| 国产成人精品免费在线| 欧美日韩精品区别| 免费人成黄页网站在线一区二区 | 日本免费新一区视频| 福利视频一区二区三区四区| **女人18毛片一区二区| 天天综合狠狠精品| 精品九九在线| 欧美久久久久久久| 任你弄精品视频免费观看| 波多野结衣一区二区三区在线观看| 福利一区二区三区视频在线观看| 欧美一级大片在线免费观看| 91av久久| 久久免费视频在线| 七七久久电影网| 九九久久久久久久久激情| 成人av黄色| 久久久久999| 91小视频xxxx网站在线| 久久久精品在线| 91精品久久| 欧美精品免费在线| 欧洲中文在线| 欧美精品www| 538在线视频| 欧美一区第一页| 欧美大片高清| 国产成人鲁鲁免费视频a| 都市激情综合| 国产精品大片wwwwww| 亚洲成人激情社区| 国产精品美女久久久免费| 福利精品一区| 91亚洲精品久久久久久久久久久久| 伊人久久大香| 91精品久久久久久蜜桃| 一区二区亚洲视频| 精品国产免费一区二区三区| 婷婷国产精品| 日韩午夜视频在线观看| 99久久九九| 欧美视频在线第一页| 1024精品一区二区三区| 成人小视频在线看| 久久爱www久久做| 中文字幕在线播放一区二区| 99久久777色| av手机在线播放| 亚洲人午夜精品天堂一二香蕉| 日本天堂中文字幕| 婷婷丁香激情综合| 亚洲av综合一区| 欧美一区二区三区系列电影| 四虎永久在线精品免费网址| 亚洲香蕉伊综合在人在线视看| 男人资源在线播放| 久久久最新网址| 欧美xnxx| caoporn国产精品免费公开| 老司机aⅴ在线精品导航| 日韩欧美一区二区三区久久婷婷| 亚洲国产日韩欧美在线| 男女日批视频在线观看| 久久激情一区| 爱情岛论坛亚洲自拍| 99久久99久久综合| 神马午夜精品91| 欧美视频一区二区三区…| 91女人18毛片水多国产| 欧美一级艳片视频免费观看| 性感美女视频一二三| 精品国产一区二区三区在线观看| av女在线播放| 国产精品人成电影| 日本妇女一区| 成人在线免费观看视频网站| 天堂精品中文字幕在线| 又黄又色的网站| 国产精品久久久久久久久晋中 | 国产精品国精产品一二| 国产精品 欧美在线| 成人免费直播在线| 天天爱天天做天天操| 亚洲色诱最新| gogo亚洲国模私拍人体| 国产视频一区在线观看| xxxxxx国产| 欧美一卡二卡三卡四卡| 成黄免费在线| 97avcom| 精品视频一区二区三区在线观看| 欧美精品七区| 亚洲人www| 日本50路肥熟bbw| 日韩美女啊v在线免费观看| 一二三区免费视频| 日韩av中文在线| hd国产人妖ts另类视频| 91av免费看| 久久久久国产精品| 777视频在线| 久久精品亚洲精品国产欧美kt∨| 日韩精品一区二区三| 欧美不卡在线视频| 成人在线免费看黄| 国产在线观看一区二区三区 | 久久久久久av无码免费网站下载| 日本vs亚洲vs韩国一区三区二区| 国产交换配乱淫视频免费| 精品久久久久久国产91| 日本高清视频在线| 欧美精品18videos性欧| 五月亚洲婷婷| 国产又粗又猛又爽又黄的网站| 精品一区二区三区视频在线观看| 女教师淫辱の教室蜜臀av软件| 日本乱人伦aⅴ精品| 久草在线青青草| 国产xxx69麻豆国语对白| 综合综合综合综合综合网| 欧美在线观看成人| 久久久久久99久久久精品网站| 天堂中文在线网| 亚洲免费av电影| 日韩福利一区| 午夜精品一区二区三区在线观看 | 国产精品久久久久久久一区探花| 免费成人高清在线视频theav| 亚洲欧洲日产国码无码久久99 | 欧美成人精品3d动漫h| 四虎影院观看视频在线观看| 91在线观看网站| 国产综合欧美| 手机在线成人av| 欧美午夜激情在线| 欧美成人综合在线| 国产成人久久久精品一区| 久久免费大视频| 亚洲自拍第三页| 亚洲午夜精品一区二区三区他趣| 亚洲国产精品久久久久爰性色| 国内精品久久久久| 在线视频亚洲专区| 91制片厂毛片| 亚洲免费观看在线视频| 欧美特黄一级视频| 日本国产欧美一区二区三区| 精品九九在线| 无套内谢丰满少妇中文字幕| 亚洲国产成人av| 国产在线中文字幕| 成人黄在线观看| 99香蕉国产精品偷在线观看 | 亚洲激情综合网| 四虎永久在线精品免费网址| 国产精品久久久久久久久| 888久久久| 亚洲国产第一区| 欧美日韩情趣电影| 日韩特级毛片| 茄子视频成人在线观看| 激情丁香综合五月| 国产午夜精品一区二区理论影院 | 国产成人l区| 精品综合久久久| 精品一区二区在线视频| 日韩精品一区二区在线播放 | 免费av一区二区三区| 久久国产精品无码网站| 精品久久免费视频| 色吧影院999| 六月丁香久久丫| 伊人免费视频二| 欧美性生交大片免费| 免费网站看v片在线a| 久久精品一二三区| 国产又粗又猛又爽又黄91精品| 日韩欧美一区二区一幕| 精品国产一区二区三区久久久狼| 日本成人7777| 久久久久亚洲AV成人网人人小说|