国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux 中的 I/O 調(diào)度算法解析及性能比較

本文詳細介紹了 Linux 操作系統(tǒng)中的不同I/O調(diào)度算法,如Noop、CFQ、Deadline、BFQ和預(yù)期I/O調(diào)度程序,并對它們的性能進行了比較。了解這些調(diào)度算法有助于提高系統(tǒng)的磁盤訪問效率和應(yīng)用程序響應(yīng)時間。

首先,讓我們回顧一下操作系統(tǒng)中的調(diào)度是什么。我們可以區(qū)分操作系統(tǒng)中的兩種類型的調(diào)度程序:進程調(diào)度程序和I/O調(diào)度程序。我們對后者感興趣。I/O 調(diào)度程序是塊設(shè)備和低級驅(qū)動程序之間的一層。它旨在提供對磁盤設(shè)備的最佳進程訪問。盡管調(diào)度程序的工作表面上很簡單,但由于磁盤操作是一個非常慢的操作并且在磁盤上搜索必要的扇區(qū)不會很快發(fā)生,因此這種簡單性被消除了。同時,進程正在等待輪流訪問磁盤。I/O 調(diào)度程序應(yīng)該能夠按照優(yōu)先級提供信息,并確保應(yīng)用程序在一定時間內(nèi)接收到數(shù)據(jù)。

在早期版本的 Linux 中,只有一個 I/O 調(diào)度程序:Linus Elevator。太原始了,因此在2.6內(nèi)核中,又出現(xiàn)了三個調(diào)度器。讓我們詳細考慮調(diào)度程序。

Noop

Noop是最簡單的調(diào)度程序。它簡單地將所有請求放入 FIFO 隊列中并執(zhí)行它們。請注意,無論 I/O 請求的類型如何,系統(tǒng)中存在的所有進程都會發(fā)生這種情況。此外,noop 能夠合并一些請求。類似目的的讀/寫請求被組合起來,以減少磁盤操作次數(shù)并增加系統(tǒng)調(diào)用的長度。

CFQ

CFQ 作為網(wǎng)絡(luò)調(diào)度程序 SFQ(隨機公平隊列)的擴展出現(xiàn)。CFQ 與 Noop 的不同之處在于,它為每個進程都有單獨的隊列。當隊列不為空或指定的時間片未過期時,調(diào)度程序會循環(huán)服務(wù)每個進程(最后一個條件與進程調(diào)度程序類似)。在每個隊列的范圍內(nèi),讀操作的優(yōu)先級高于寫操作。 

Deadline

Deadline 是標準調(diào)度程序。從其名稱可以明顯看出,Deadline 嘗試在指定時間執(zhí)行請求。Deadline 支持兩個特殊的截止時間隊列(按過期時間排序)和兩個用于讀寫操作的排序隊列(按扇區(qū)編號排序)。截止日期隊列旨在防止請求匱乏。Deadline 批量處理請求。批次是按 LBA 遞增順序排列的 I/O 操作序列。讀操作比寫操作具有更高的優(yōu)先級,就像在 CFQ 中一樣,因為進程通常會阻塞讀操作。因此,讀操作的過期時間為 500 毫秒,而寫操作的過期時間為 5 秒。在下一個請求之前,Deadline 必須選擇一個隊列以供使用(讀或?qū)懀?。該算法更適合讀操作較多的系統(tǒng),如數(shù)據(jù)庫、Web服務(wù)器等。

BFQ

BFQ(Budget Fair Queueing)是一種基于CFQ的比例份額磁盤調(diào)度算法。BFQ將基于時間間隔的Round Robin調(diào)度算法進行了轉(zhuǎn)換,使其更加關(guān)注磁盤扇區(qū)數(shù)。每個任務(wù)都有一個專用的部門預(yù)算,該預(yù)算可能會根據(jù)任務(wù)的行為而有所不同。BFQ 保證磁盤流量會在任務(wù)之間更加誠實地分配,并將查詢磁盤數(shù)據(jù)的復(fù)雜度降低到 O(1)。

預(yù)期 I/O 調(diào)度程序

預(yù)期 I/O 調(diào)度程序嘗試猜測后續(xù)請求將在磁盤的哪些塊上執(zhí)行,并嘗試聚合和/或重新排序請求,從而改進局部性并減少磁盤尋道操作。該算法在當前讀操作看似完成時為下一次讀操作做好準備。

對讀取操作有效的調(diào)度算法(例如 Deadline 或 Anticipatory)可以為 Web 服務(wù)器或數(shù)據(jù)庫帶來性能提升。您可以通過調(diào)整調(diào)度程序參數(shù)來充分加快 Apache Web 服務(wù)器的速度。

您可以通過此命令檢查可用調(diào)度程序的列表(當前調(diào)度程序分配在方括號中):

$ cat /sys/block/sda/queue/scheduler

我的 Linux 機器上的輸出是 noop [deadline] cfq .

有很多不錯的工具可以比較調(diào)度算法的性能。我用于 hdparm 寫作基準。hdparm 包含默認基準(但您可以使用自己的基準)。的用法hdparm 是:

$ apt-get install hdparm
$ hdparm -tT /dev/sda

為了比較算法的性能,我們必須將調(diào)度程序從默認更改為任意。您可以使用下一個命令來執(zhí)行此操作:

$ echo {SCHEDULER_NAME} > /sys/block/sda/queue/scheduler

hdparm 提供定時緩存讀取和定時緩沖磁盤讀取。當然,您可以使用其他方法進行測試,例如 dd 命令或bonnie++。


文章來源地址http://www.zghlxwxcb.cn/article/427.html

到此這篇關(guān)于Linux 中的 I/O 調(diào)度算法解析及性能比較的文章就介紹到這了,更多相關(guān)內(nèi)容可以在右上角搜索或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

原文地址:http://www.zghlxwxcb.cn/article/427.html

如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請聯(lián)系站長進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 性能比較 - Spring Boot 應(yīng)用程序中的線程池與虛擬線程 (Project Loom)

    性能比較 - Spring Boot 應(yīng)用程序中的線程池與虛擬線程 (Project Loom)

    ????????本文比較了 Spring Boot 應(yīng)用程序中的不同請求處理方法:ThreadPool、WebFlux、協(xié)程和虛擬線程 (Project Loom)。 ????????在本文中,我們將簡要描述并粗略比較可在 Spring Boot 應(yīng)用程序中使用的各種請求處理方法的性能。 ????????高效的請求處理在開發(fā)高性能后端應(yīng)

    2024年02月12日
    瀏覽(18)
  • 操作系統(tǒng)調(diào)度算法--高響應(yīng)比優(yōu)先調(diào)度算法解析

    操作系統(tǒng)調(diào)度算法--高響應(yīng)比優(yōu)先調(diào)度算法解析

    ? 高響應(yīng)比優(yōu)先調(diào)度算法(Highest Response Radio Next,HRRN)是一種對CPU中央控制器響應(yīng)比的分配的算法。HRRN是介于FCFS(先來先服務(wù)算法)與SJF(短作業(yè)優(yōu)先算法)之間的折中算法。FCFS算法所考慮的只是作業(yè)等待時間,而忽視了作業(yè)的運行時間(類似我們在生活中排隊買東西)。

    2023年04月18日
    瀏覽(18)
  • linux性能優(yōu)化-IO調(diào)度優(yōu)化

    Linux I/O調(diào)度器(Linux I/O Scheduler)Linux內(nèi)核中的一個組成部分,用戶可以通過調(diào)整這個調(diào)度器來優(yōu)化系統(tǒng)性能,介于通用塊層和塊設(shè)備驅(qū)動程序之間。 noop(No Operation) :通常用于內(nèi)存存儲的設(shè)備。 cfq(Completely Fair Scheduler ) :完全公平調(diào)度器,進程平均使用IO帶寬。 deadline :針對

    2024年02月10日
    瀏覽(18)
  • 【精選論文 | Capon算法與MUSIC算法性能的比較與分析】

    【精選論文 | Capon算法與MUSIC算法性能的比較與分析】

    本文編輯:調(diào)皮哥的小助理 【正文】 首先說結(jié)論: 當信噪比(SNR)足夠大時,Capon算法和MUSIC算法的空間譜非常相似,因此在SNR比較大時它們的性能幾乎一樣,當不同信號源的入射角度比較接近時,MUSIC算法的性能優(yōu)于Capon,這也是MUSIC算法(或者說子空間類算法)被稱為高分

    2024年02月11日
    瀏覽(32)
  • 磁盤調(diào)度算法例題解析以及C語言實現(xiàn)

    如果當前停留在第122號磁道上,接下來8個磁道按順序分別是 120,98,4,51,180,195,140,23。請寫出最短尋道時間優(yōu)先和掃描算 法的訪問順序以及各自的平均尋道長度。 最短尋道時間優(yōu)先算法: SSTF算法選擇調(diào)度處理的磁道是與當前磁頭所在磁道距離最近的磁道,以使每次的尋找時間

    2024年02月12日
    瀏覽(18)
  • SM4、AES、DES加解密算法性能比較

    SM4、AES、DES加解密算法性能比較

    加密算法 文件大小 加密耗時(ms) 解密耗時(ms) SM4 5M 1596 841 AES 5M 201 447 DES 5M 317 669 SM4 620KB 689 172 AES 620KB 109 186 DES 620KB 53 132 SM4 36KB 487 34 AES 36KB 20 57 DES 36KB 9 14 SM4 6Bytes 505 0 AES 6Bytes 13 24 DES 6Bytes 1 0

    2024年02月13日
    瀏覽(23)
  • 大數(shù)據(jù)Flink(五十二):Flink中的批和流以及性能比較

    大數(shù)據(jù)Flink(五十二):Flink中的批和流以及性能比較

    文章目錄 Flink中的批和流以及性能比較 ??????????????一、Flink中的批和流

    2024年02月15日
    瀏覽(15)
  • 操作系統(tǒng)中的調(diào)度算法

    操作系統(tǒng)中的調(diào)度算法

    處理機調(diào)度層次: 1.高級調(diào)度( 作業(yè) 調(diào)度/) 2.中級調(diào)度( 內(nèi)存 調(diào)度/) 3.低級調(diào)度( 進程 調(diào)度/) 一、作業(yè)調(diào)度算法 1.先來先服務(wù)算法(FCFS) 2.短作業(yè)優(yōu)先算法(SJF) 3.優(yōu)先級調(diào)度算法(PR) 4.高響應(yīng)比調(diào)度算法(PR特例) 5.時間片輪轉(zhuǎn)算法(RR) 6.多級隊列調(diào)度算法 7.基

    2024年02月10日
    瀏覽(27)
  • 云計算中的任務(wù)調(diào)度算法

    云計算中的任務(wù)調(diào)度算法

    一、云計算 1、云計算可以說是并行計算與分布式計算相結(jié)合的產(chǎn)物,利用互聯(lián)網(wǎng)和虛擬機技術(shù)使得各種資源能夠提供給用戶使用。按需服務(wù)、彈性可擴展是其主要特征。 ?一次正常的用戶服務(wù)流程為:?用戶提交任務(wù)到云端,?任務(wù)調(diào)度器將任務(wù)分配到合適的計算資源上執(zhí)行,?

    2024年02月03日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包