天天看點

如何更改 Linux 的 I/O 排程器

Linux 的 I/O 排程器是一個以塊式 I/O 通路存儲卷的程序,有時也叫磁盤排程器。Linux I/O 排程器的工作機制是控制塊裝置的請求隊列:确定隊列中哪些 I/O 的優先級更高以及何時下發 I/O 到塊裝置,以此來減少磁盤尋道時間,進而提高系統的吞吐量。

目前 Linux 上有如下幾種 I/O 排程算法:

noop – 通常用于記憶體存儲的裝置。

cfq – 完全公平排程器。程序平均使用IO帶寬。

Deadline – 針對延遲的排程器,每一個 I/O,都有一個最晚執行時間。

Anticipatory – 啟發式排程,類似 Deadline 算法,但是引入預測機制提高性能。

檢視裝置目前的 I/O 排程器:

假設磁盤名稱是 /dev/sdc:

如何改變硬碟裝置 I/O 排程器

使用如下指令:

比如設定 noop 排程器:

以上設定重新開機後會失效,要想重新開機後配置仍生效,需要在核心啟動參數中将 elevator=noop 寫入 /boot/grub/menu.lst:

1. 備份 menu.lst 檔案

2. 更新 /boot/grub/menu.lst

将 elevator=noop 添加到檔案末尾,比如:

原文釋出時間:2017-03-27

繼續閱讀