PowerEdge:最佳化 Linux 中 PERC 控制器後方 NVMe 磁碟機的小型 I/O 效能

摘要: 在 Linux 中,連接至 PowerEdge RAID 控制器 (PERC) 的 NVMe 磁碟機在小型 I/O 工作負載測試期間,其效能可能會低於預期。 這是因為作業系統會將這些磁碟機識別為標準 SCSI 區塊裝置 (/dev/sdX),而非原生 NVMe 裝置 (/dev/nvmeXnX)。此標識會導致應用次優的預設 I/O 計劃程式。

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

說明

根本原因

  • 原生 NVMe:直接連接的 NVMe 磁碟機會使用深度的硬體管理命令佇列。Linux 將其調度程式預設為無,以繞過操作系統級別的瓶頸。
NVMe mq-截止日期
  • PERC 背後的 NVMe:由 PERC 控制器管理時,磁碟機會顯示為 SCSI 裝置。大多數 Linux 發行版預設為 SCSI 裝置的排程器為 mq-deadline
  • 衝突:可使用 mq-deadline 排程器專為舊式機械磁碟機而設計,可最佳化尋道時間並最小化磁頭移動。若為高速 NVMe 磁碟機,此排程器會增加不必要的延遲和 CPU 額外負荷,並限制總 IOPS。

驗證與即時調整

排程器應設為 「無 」,以達到小型 I/O 工作負荷的最大 IOPS。

  • 檢查目前的排程器:
  1. 以超級使用者身份執行以下命令(將 sdX> 替換為<您的裝置名稱,例如 <sda>):
cat /sys/block/{sdX}/queue/scheduler
範例輸出:(括弧表示活動的調度程式。)
NVMe 排程器
  1. 使用下列命令將排程器變更none (執行階段),以立即套用變更:
echo "none" > /sys/block/{sdX}/queue/scheduler

確保持續性

上述手動變更 並非持續存在 ,而且會在重新開機後恢復。另外, /dev/sdX 如果新增或移除磁碟機,識別碼可能會變更。要使此更改永久生效,建議基於設備的 WWID 創建 UDEV 規則
 

注意:大型 I/O 效能也可能受到影響。若為 PERC 控制器後方的 NVMe 磁碟機,建議將 Linux 佇列排程器設為「無」。

受影響的產品

PowerEdge R470, PowerEdge R570, PowerEdge R670, PowerEdge R6715, PowerEdge R6725, PowerEdge R770, PowerEdge R770AP, PowerEdge R7715, PowerEdge R7725, PowerEdge R7725xd
文章屬性
文章編號: 000443257
文章類型: How To
上次修改時間: 09 7月 2026
版本:  3
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。