Windows Server 2016頁面檔案不增加

Windows Server 2016頁面檔案不增加

如果這還不夠清楚,無法理解我的問題,我提前表示歉意,它有點長,但我已盡力使其易於理解。

我在 Windows Server 2016 VM 上執行 Exchange 2016 CU6,並且經常在應用程式日誌中收到警告,指出虛擬記憶體(頁面檔案)不足。

在此輸入影像描述

我的監控顯示,自從 4 月創建 VM 以來,頁面檔案一直是 4GB,從未增加到超過 4GB,也沒有減少。

在此輸入影像描述


為了解決此問題並了解問題所在,我創建了兩個測試虛擬機,其中安裝了 Windows Server 2016 Standard 和 Windows Server 2008 R2 Enterprise,兩者都具有相同的實體和虛擬記憶體配置:

測試虛擬機器配置

記憶體: 4GB

C碟(系統專用):32GB

G碟(專用於頁面檔案):8GB

C 碟的頁面文件:512 - 1024 MB

驅動器 G 的頁面文件:系統管理的大小

在此輸入影像描述

我的測試 VM 2016 目前在 C: 驅動器上使用 512MB,在 G: 驅動器上使用 1GB,總計 5.5 的已提交內存

在此輸入影像描述

測試 VM 2008 目前在 C: 驅動器上使用 512MB,在 G: 驅動器上使用 4GB,總計 12.5GB 已提交內存

在此輸入影像描述


在對提交記憶體進行了大量研究之後,我發現了 Mark Russinovitch 的這篇文章:https://blogs.technet.microsoft.com/markrussinovich/2008/11/17/pushing-the-limits-of-windows-virtual-memory/

我決定使用帶有 -m 開關的 testlimit64.exe 工具來查看頁面檔案在測試 VM 2016 和測試 VM 2008 上是否會增加。

結果反映了最初解釋的問題,即測試 VM 2016 上的頁面檔案在 G: 磁碟機上沒有增加,但在測試 VM 2008 上卻增加了:

在此輸入影像描述

在此輸入影像描述


根據此 Microsoft KB:https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/automatic-memory-dump,使用下面的自動內存轉儲設置控制面板->系統->進階系統設定->啟動與故障復原->寫入偵錯訊息將頁面檔案配置為系統管理後,它可以將頁面檔案的大小設定為小於實體記憶體的大小。

我執行的測試沒有使用此設置,測試 VM 2008 和測試 VM 2016 都配置了核心記憶體轉儲。

在此輸入影像描述

因此,如果我將 G: 磁碟機上的頁面檔案設定為測試 VM 2016 上的系統管理,則其大小將由 Windows 自動設置,並且在負載下不會增加。這是問題的核心,因為它是 Windows Server 2008 的行為變更。


我的最後一個測試是將 G: 驅動器上的頁面檔案手動配置為 4096 - 8100 MB,並再次使用 -m 開關運行工具 testlimit64.exe,如您所見,頁面檔案確實從 4GB 增加到 ~8GB

在此輸入影像描述 在此輸入影像描述


所以這是我的問題:為什麼 Windows Server 2016 在設定為系統管理時不增加頁面檔案的大小? Windows Server 2008 和 2016 之間有什麼變化?

非常感謝您的閱讀與回覆。

答案1

根據 本文,對於 Server 2016 系統管理的頁面檔案的大小會根據以下內容進行調整:

3 × RAM or 4 GB, whichever is larger. This is then limited to the volume size ÷ 8. However it can grow to within 1 GB of free space on the volume if required for crash dump settings.

對於 Server 2008,它指出:

3 × RAM or 4 GB, whichever is larger

所以聽起來您所看到的就是在 Server 2016 上強制執行的 1/8 規則。

希望有幫助...乾杯

相關內容