在使用 NUMA 處理器且運行 Windows Server 2008 R2 或 Windows 7 的電腦上,若執行緒請求大量記憶體(且該記憶體位於前 4 GB 內)就會出現效能不佳

症狀

請考慮以下案例:

  • 你的電腦運行的是 Windows Server 2008 R2 或 Windows 7。
  • 該電腦的記憶體存取方式 (基於 NUMA) 的處理器具有非均勻的存取能力。
  • 執行緒請求的實體記憶體量在前 4 GB (GB) 內。
  • 前 4 GB 記憶體內的實體記憶體不足以執行請求。 因此,記憶體管理器必須交換頁面以增加可用的實體記憶體。

在這種情況下,作業系統需要很長時間才能滿足記憶體請求。 例如,作業系統需要幾秒鐘才能滿足記憶體請求。 在此期間,CPU 使用率很高。

原因

此問題發生是因為記憶體管理員會將記憶體頁面移至所有節點的虛擬記憶體,即使這些節點在前 4 GB 記憶體內沒有實體記憶體。 然而,這種行為並非必要。 因此,效能問題發生在「症狀」章節中所述。

解決方式

要解決這個問題,請安裝這個熱修補程式。 安裝此熱修補後,記憶體管理員會將記憶體頁面移至虛擬記憶體,僅在請求範圍內擁有實體記憶體的節點。

Hotfix 資訊

Microsoft 已提供支援的熱修補程式。 不過,這個熱修正僅針對本文所述的問題進行修正。 此熱修正僅適用於遇到本文所述問題的系統。 這個熱修補可能會有額外的測試。 因此,如果您沒有受到此問題嚴重影響,我們建議您等待下一次包含此熱修補丁的軟體更新。

如果熱修補程式可供下載,這篇知識庫文章頂部有一個「熱修補丁下載可用」的區塊。 若此部分未出現,請聯絡 Microsoft 客服與支援以取得熱修正。

注意:如果發生其他問題或需要排除故障,您可能需要另行申請服務。 一般的支援費用將適用於不符合本次熱修正範圍的其他支援問題與問題。 欲查詢完整的 Microsoft 客戶服務與支援電話號碼清單,或建立獨立服務請求,請造訪以下 Microsoft 網站:

http://support.microsoft.com/contactus/?ws=support 注意「熱修正下載可用」表單顯示該熱修正可用的語言。 如果你看不到你的語言,那是因為該語言沒有熱修正。

先決條件

要套用此熱修補,您必須執行 Windows 7 或 Windows Server 2008 R2。

登錄資訊

使用此套件中的熱修補,無需更改登錄檔。

重新啟動需求

你可能得在套用這個熱修補程式後重新啟動電腦。

熱修正更換資訊

這個熱修補並不取代先前釋出的熱修補。

檔案詳細資訊

英文 (美國) 版本的熱修補程式安裝的檔案包含以下表格中列出的屬性。 這些檔案的日期與時間是以國際標準時間 (UTC) 表示。 本機電腦上這些檔案的日期與時間,是以您當地的時間和目前的日光節約時間 (DST) 的時差來顯示。 此外,當您對檔案執行特定作業時,其日期與時間可能會改變。

Windows 7 和 Windows Server 2008 R2 檔案資訊注意事項

重要 Windows 7 hotfixes 和 Windows Server 2008 R2 的 hotfixes 隨附於相同的套件中。 但是,Hotfix 要求頁面上的 Hotfix 會列在各自的作業系統中。 如果要請求適用於其中一或兩個作業系統的 Hotfix 套件,請選取頁面上列於「Windows 7/Windows Server 2008 R2」下方的 Hotfix。 請一律參照文章中的<適用於>一節,以判定每個 Hotfix 適用的確切作業系統。

  • 每一個環境安裝的 MANIFEST 檔(.manifest)和MUM 檔(.mum)皆會分別列在「Windows Server 2008 R2 和Windows 7 的其他檔案資訊」一節中。 對於維持已更新元件的狀態,MUM 及 MANIFEST 檔案及相關的安全性目錄 (.cat) 檔案都很重要。 屬性未列出的安全性目錄檔案是以 Microsoft 數位簽章簽署。

適用於所有支援的 x86 版本 Windows 7

檔案名稱 檔案版本 檔案大小 日期 時間 平台
Ntdll.dll 6.1.7600.20731 1,286,440 2010年6月11日 14:07 x86
Ntkrnlpa.exe 6.1.7600.20731 3,965,320 2010年6月11日 07:21 不適用
Ntoskrnl.exe 6.1.7600.20731 3,909,504 2010年6月11日 07:21 不適用

对于所有受支持的基于 x64 的 Windows 7 版本和 Windows Server 2008 R2 版本

檔案名稱 檔案版本 檔案大小 日期 時間 平台
Ntdll.dll 6.1.7600.20731 1,736,600 2010年6月11日 05:59 x64
Ntoskrnl.exe 6.1.7600.20731 5,477,256 2010年6月11日 06:02 x64
Ntdll.dll 6.1.7600.20731 1,290,568 2010年6月11日 14:07 x86
Ntkrnlpa.exe 6.1.7600.20731 3,965,320 2010年6月11日 07:21 不適用
Ntoskrnl.exe 6.1.7600.20731 3,909,504 2010年6月11日 07:21 不適用

適用於所有支援的 IA-64 版本 Windows Server 2008 R2

檔案名稱 檔案版本 檔案大小 日期 時間 平台
Ntdll.dll 6.1.7600.20731 2,783,232 2010年6月11日 04:59 IA-64
Ntoskrnl.exe 6.1.7600.20731 11,129,216 2010年6月11日 05:02 IA-64
Ntdll.dll 6.1.7600.20731 1,290,568 2010年6月11日 14:07 x86
Ntkrnlpa.exe 6.1.7600.20731 3,965,320 2010年6月11日 07:21 不適用
Ntoskrnl.exe 6.1.7600.20731 3,909,504 2010年6月11日 07:21 不適用

狀態

Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。

更多資訊

下表提供更多關於自動檢查您 SQL Server 實例及該規則評估版本 SQL Server 產品版本的產品或工具的資訊。

規則軟體 規則標題 規則說明 用以評估該規則的產品版本
系統中心顧問 Windows 作業系統缺少更新KB2155311以防止 NUMA 電腦上的效能問題 System Center Advisor 會偵測 NTOSKRNL.EXE 檔案的版本、NUMA 設定以及監控電腦上是否有SQL Server實例,並產生此警示。 請參考本文資訊,並套用修正方法,以防止在運行 SQL Server 的 NUMA 電腦上出現效能不佳。 SQL Server 2008

SQL Server 2008 R2

SQL Server 2012

參考資料

如需有關軟體更新術語的詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

824684 描述用於描述Microsoft軟體更新的標準術語

其他檔案資訊

有關 Windows 7 和 Windows Server 2008 R2 的其他檔案資訊

所有支援的 x86 版本 Windows 7 的其他檔案

檔案名稱 更新.mum
檔案版本 不適用
檔案大小 1,881
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 X86_04264acaa7d7aabde54d6fb67d04d2d0_31bf3856ad364e35_6.1.7600.20731_none_420d27620bd0b10b.manifest
檔案版本 不適用
檔案大小 697
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 X86_581062e74d433c36df8e36ee5d8d87d4_31bf3856ad364e35_6.1.7600.20731_none_929118d5c9988de2.manifest
檔案版本 不適用
檔案大小 693
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 X86_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7600.20731_none_5968e5567679e7b5.manifest
檔案版本 不適用
檔案大小 3,802
日期 (UTC) 2010年6月11日
時間 (UTC) 07:45
平台 不適用
檔案名稱 X86_microsoft-windows-os-kernel_31bf3856ad364e35_6.1.7600.20731_none_6cc268b52e6f4e07.manifest
檔案版本 不適用
檔案大小 16,151
日期 (UTC) 2010年6月11日
時間 (UTC) 07:53
平台 不適用

所有支援的 Windows 7 和 Windows Server 2008 R2 x64 版本的其他檔案

檔案名稱 Amd64_04264acaa7d7aabde54d6fb67d04d2d0_31bf3856ad364e35_6.1.7600.20731_none_9e2bc2e5c42e2241.manifest
檔案版本 不適用
檔案大小 699
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Amd64_14fed2ffa49769d9e75ec6728c65f4a4_31bf3856ad364e35_6.1.7600.20731_none_2c5658d6479dedf6.manifest
檔案版本 不適用
檔案大小 701
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Amd64_57a77acd6f82c92e0289ba25a0649f70_31bf3856ad364e35_6.1.7600.20731_none_3895f6148c45f62a.manifest
檔案版本 不適用
檔案大小 697
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Amd64_76ade3a09828c724dba0f5b0f1ebbdb6_31bf3856ad364e35_6.1.7600.20731_none_e57060d458415e3a.manifest
檔案版本 不適用
檔案大小 697
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Amd64_ad3c7ed603f842e508dde41aed1a47d2_31bf3856ad364e35_6.1.7600.20731_none_3652421c2d3d246f.manifest
檔案版本 不適用
檔案大小 1,036
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Amd64_b4d538fb3154570d4485551d96200e14_31bf3856ad364e35_6.1.7600.20731_none_2438eb75e87f2a8a.manifest
檔案版本 不適用
檔案大小 1,042
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Amd64_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7600.20731_none_b58780da2ed758eb.manifest
檔案版本 不適用
檔案大小 3,806
日期 (UTC) 2010年6月11日
時間 (UTC) 08:32
平台 不適用
檔案名稱 Amd64_microsoft-windows-os-kernel_31bf3856ad364e35_6.1.7600.20731_none_c8e10438e6ccbf3d.manifest
檔案版本 不適用
檔案大小 15,291
日期 (UTC) 2010年6月11日
時間 (UTC) 08:40
平台 不適用
檔案名稱 更新.mum
檔案版本 不適用
檔案大小 2,537
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Wow64_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7600.20731_none_bfdc2b2c63381ae6.manifest
檔案版本 不適用
檔案大小 3,566
日期 (UTC) 2010年6月11日
時間 (UTC) 07:41
平台 不適用
檔案名稱 X86_microsoft-windows-os-kernel_31bf3856ad364e35_6.1.7600.20731_none_6cc268b52e6f4e07.manifest
檔案版本 不適用
檔案大小 16,151
日期 (UTC) 2010年6月11日
時間 (UTC) 07:53
平台 不適用

所有支援的 Windows Server 2008 R2 IA-64 版本的其他檔案

檔案名稱 Ia64_04264acaa7d7aabde54d6fb67d04d2d0_31bf3856ad364e35_6.1.7600.20731_none_420ecb580bceba07.manifest
檔案版本 不適用
檔案大小 698
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Ia64_38af53f9bf3550c0a6e076484e98e896_31bf3856ad364e35_6.1.7600.20731_none_855043cc12d015a2.manifest
檔案版本 不適用
檔案大小 699
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Ia64_490c3871c2b892a999b7e15b81197bd9_31bf3856ad364e35_6.1.7600.20731_none_74f14de3d5c0e50c.manifest
檔案版本 不適用
檔案大小 695
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Ia64_76ade3a09828c724dba0f5b0f1ebbdb6_31bf3856ad364e35_6.1.7600.20731_none_895369469fe1f600.manifest
檔案版本 不適用
檔案大小 696
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Ia64_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7600.20731_none_596a894c7677f0b1.manifest
檔案版本 不適用
檔案大小 3,804
日期 (UTC) 2010年6月11日
時間 (UTC) 08:30
平台 不適用
檔案名稱 Ia64_microsoft-windows-os-kernel_31bf3856ad364e35_6.1.7600.20731_none_6cc40cab2e6d5703.manifest
檔案版本 不適用
檔案大小 15,289
日期 (UTC) 2010年6月11日
時間 (UTC) 08:37
平台 不適用
檔案名稱 更新.mum
檔案版本 不適用
檔案大小 1,690
日期 (UTC) 2010年6月11日
時間 (UTC) 16:08
平台 不適用
檔案名稱 Wow64_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7600.20731_none_bfdc2b2c63381ae6.manifest
檔案版本 不適用
檔案大小 3,566
日期 (UTC) 2010年6月11日
時間 (UTC) 07:41
平台 不適用
檔案名稱 X86_microsoft-windows-os-kernel_31bf3856ad364e35_6.1.7600.20731_none_6cc268b52e6f4e07.manifest
檔案版本 不適用
檔案大小 16,151
日期 (UTC) 2010年6月11日
時間 (UTC) 07:53
平台 不適用

DFGDFG