Virtualization
Linux沒有I/O調度器是什麼意思
我有一些執行 Ubuntu 基於雲的映像 14.04-1 LTS 版本的虛擬機。我想查看 VM 上不同 IO 調度程序的 IO 性能,所以我
/sys/block/<drive>/queue/scheduler
在來賓作業系統上更改了 IO 調度程序。通常,應該有cfq
、deadline
、 或noop
可供選擇。但我看到的是none
。是說Canonical去掉了基於雲的鏡像中的I/O調度器還是none
這裡的調度器是重命名的noop
調度器?如果我們在系統中沒有 I/O 調度程序會發生什麼?所有的io請求都是按FIFO順序直接發送給主機的嗎?感謝您提供一些啟示!
低延遲 IO 調度器
(使用 NVMe 協議而不是 SATA 的 SSD 不需要此步驟,它繞過傳統的 I/O 調度程序並使用
blk-mq
模組代替。)預設的 I/O 調度程序對數據進行排隊,以最大限度地減少 HDD 上的尋軌,這對於 SSD 來說不是必需的。因此,使用
"deadline"
僅確保批量事務不會減慢小型事務的調度程序:安裝sysfsutils
和echo "block/sdX/queue/scheduler = deadline" >> /etc/sysfs.conf
(調整 sdX 以匹配您的 SSD)重新啟動或
echo deadline > /sys/block/sdX/queue/scheduler
所以,答案是:
none
不是noop
.none
表示“未使用調度程序”。