VirtualBox:分配比物理 CPU 核心數量更多的虛擬 CPU 核心是不是一個壞主意
VirtualBox:因為我有支持超執行緒的CPU,我想知道:
如以下警告所示,分配比多個物理 CPU 核心更多的虛擬 CPU 核心是否是一個壞主意(例如,只需使用 4 個物理核心 CPU 的所有 8 個虛擬核心):
成績單:
分配給虛擬機的虛擬 CPU 數量多於主機系統上的物理 CPU 數量 (4)。這可能會降低虛擬機的性能。請考慮減少虛擬 CPU 的數量。
有人可以對這個話題進行推理嗎?
有問題的 CPU 是 Intel Core i7-4700HQ, Ark Intel , CPU Benchmark
假設沒有過時的硬體,例如 HDD(而不是 SSD)和/或低 RAM(此處為 16GB,最小
vm.swappiness
,此 VM 為 4GB)等等。
硬體/作業系統/軟體
主機:Linux Mint 18 Cinnamon 64 位(完全更新);核心版本 4.4.0-47-generic
訪客:Windows 8.1 Pro 64 位(完全更新)
處理器:Intel Core i7-4700HQ,(6MB 記憶體,4 個物理核心,或 8 個使用超執行緒),CPU Benchmark
VirtualBox:版本 5.1.10 r112026 (Qt5.5.1)
來賓添加:已安裝且是最新的
基準測試工具 #1:WinRAR 5.40 最終版 64 位
基準工具#2:VeraCrypt 1.19 版最終 64 位
準備
在這兩種情況下,我在啟動後一直等到 CPU、RAM、磁碟驅動器穩定在接近零點的位置。
方法
- 複製原始虛擬機以擁有兩個相同的虛擬機。
- 對於第二遍,我有,因為在這個答案的底部指出了重新啟動禁用的防病毒軟體,並在這兩種情況下都將 WinRAR 從 Beta 更新到了最終版本。
- 我已經做了與前面指出的相同的準備工作。
- 虛擬機在前台執行,沒有任何其他佔用 CPU 時間的應用程序執行,為了不影響測試,我已經禁用了我所能做的。
- 為了在系統內部或外部包括潛在的記憶體,我因此執行了兩次相同的測試。好處幾乎沒有。
結果
WinRAR
- 4核 => 7.5分鐘(時間越短越好)
啟用4核的WinRAR,在7.5分鐘內處理了 1.5GiB 。 2. 8核 => 4.5分鐘(時間越短越好)
啟用8核的WinRAR,在4.5分鐘內處理了 1.5GiB 。
VeraCrypt
- 4核 => 速度2.6 GiB/s(速度越高越好)
VeraCrypt啟用4核,硬體加速 AES (AES-NI)速度2.6 GiB/s。 2. 8核 => 速度3.9 GiB/s(速度越高越好)
VeraCrypt 啟用了8個核心,硬體加速的 AES (AES-NI)速度為3.9 GiB/s。
結論
我可以根據需要執行盡可能多的測試。但我想,如果這兩個,其中一個是相當複雜的壓縮測試,第二個是一組相當複雜的加密測試,那還有什麼意義。
兩個基準都顯示出顯著差異。我認為沒有理由相信他們的結果是不准確的,因為我遵循了相當嚴格的準備和方法,而且這些測試是在 RAM 中進行的,以排除 I/O 瓶頸。從我的角度來看,問題中提到的警告可能適用於某些情況,但肯定不是全部。在與您分享了這些非常顯著的結果後,我確信您同意我的觀點,即對於具有最新 VirtualBox 版本的超執行緒的現代 CPU,可能不應該如此認真地對待這個警告。可以肯定的一件事:在您決定永久應用此設置之前,不要相信我並在您自己的條件下對其進行測試。
新基準
主機 + 訪客:Linux Mint 19.2 “Tina” - Cinnamon(64 位);都帶有核心:
5.3.0-24-generic
.處理器:英特爾® 酷睿™ i7-7700HQ;6 MB 高速記憶體,最高 3.80 GHz,4 個物理核心,或 8 個使用超執行緒,CPU 基準比較
VirtualBox:版本 6.1.0 r135406 (Qt5.9.5)
來賓添加:已安裝且是最新的
Benchmark Tool : VeraCrypt version 1.24 Hotfix1 64-bit final (網頁,直接deb下載連結)
製備方法
與之前的基準測試相同。
結果
VeraCrypt AES 加密 4 核
⟶ 速度 4.8 GiB/s (速度越高越好)
VeraCrypt 8 核 AES 加密(發出超執行緒警告)
⟶ 速度 7.2 GiB/s (速度越高越好)
結論
啟用超執行緒後性能提高了 50% ,但遺憾的是只有 AES,我將不得不執行一些更全面的測試。將在幾天后返回結果。