Performance

Hyper-V 第 2 代 VM 的硬體性能損失

  • March 29, 2016

我有以下配置:

  • 使用 Hyper-V 安裝在裸機上的 Windows Server 2012 R2 作業系統。作業系統安裝在 RAID1 850 PRO 驅動器上。
  • Windows Server 2012 R2 Guest OS Generation 2 VM 位於 Windows Storage Space Mirrored 950 PRO 驅動器上。

我使用 Crystal Disk 在 Windows Storage Space Mirrored 950 PRO 驅動器上執行了一些測試。這些是以下統計數據。

在裸機上測試時

  Sequential Read (Q= 32,T= 1) :  4178.159 MB/s
 Sequential Write (Q= 32,T= 1) :  1504.286 MB/s
 Random Read 4KiB (Q= 32,T= 1) :   460.155 MB/s [112342.5 IOPS]
Random Write 4KiB (Q= 32,T= 1) :   266.983 MB/s [ 65181.4 IOPS]
        Sequential Read (T= 1) :  2042.397 MB/s
       Sequential Write (T= 1) :  1500.305 MB/s
  Random Read 4KiB (Q= 1,T= 1) :    40.059 MB/s [  9780.0 IOPS]
 Random Write 4KiB (Q= 1,T= 1) :    76.623 MB/s [ 18706.8 IOPS]

在 VM 中測試時

  Sequential Read (Q= 32,T= 1) :  4635.549 MB/s
 Sequential Write (Q= 32,T= 1) :  1502.071 MB/s
 Random Read 4KiB (Q= 32,T= 1) :   181.225 MB/s [ 44244.4 IOPS]
Random Write 4KiB (Q= 32,T= 1) :   110.272 MB/s [ 26921.9 IOPS]
        Sequential Read (T= 1) :  1624.129 MB/s
       Sequential Write (T= 1) :  1381.203 MB/s
  Random Read 4KiB (Q= 1,T= 1) :    24.528 MB/s [  5988.3 IOPS]
 Random Write 4KiB (Q= 1,T= 1) :    34.563 MB/s [  8438.2 IOPS]

我的隨機讀/寫性能下降了近 50%。我重新測試了幾次以確認值。這是可以預料的嗎?

首先,最好使用 DiskSPD 而不是其他任何東西。僅僅因為微軟在其內部 QA 過程中使用了 DiskSPD。

https://blogs.technet.microsoft.com/josebda/2014/10/13/diskspd-powershell-and-storage-performance-measuring-iops-throughput-and-latency-for-both-local-disks-and-smb-file-shares/

其次,這是 Hyper-V 的已知問題。它甚至在 Windows Server 2016 中以或多或少相同的方式存在。簡而言之,如果您的底層儲存具有非常低的延遲,通常會有 2 到 4 倍的 I/O 性能下降。您可以嘗試幾種解決方法來改善您的狀況:

**使用多個卷。**不要在單個虛擬磁碟或命名空間上分配多個 CSV,而是確保本地掛載點(如果您直接從 DAS 執行虛擬機)、CSV 或 SMB3 共享在不同的邏輯卷上結束!您必須擁有一個包含多個 VHD 文件或多個 VM 的 VM 才能以這種方式“聚合”組合性能。如果您有一個帶有單個附加 VHD 的 VM,則此方法顯然無濟於事。

**使用“中間人”。**這是列出的第一種方法中的一種增量改進。您可以獲得多個邏輯卷,在頂部封裝一些基於 Windows 的軟體定義儲存,並允許它為連接了單個 VHD 的單個 VM 聚合 I/O 性能。如果您執行單個 Oracle RAC 或 SQL Server VM,並且它正是您想要高 IOPS 的那個,則可能會發生這種情況。

**禁用 I/O 調度程序。**設置系統資料庫項…

“HKLM\SYSTEM\CurrentControlSet\Control\StorVSP\IOBalance\Enabled”

……歸零!PS不要忘記重新啟動,因為沒有任何變化。

這個可能會也可能不會。我們在 RAID0 中的一對三星 850 Pro SSD 上獲得了 ±20% 的提升。

希望有些東西對你有用。請為未來的潛伏者更新您的結果:)

引用自:https://serverfault.com/questions/766016