Bạn gặp phải vấn đề hiệu suất ứng dụng và dịch vụ khi bộ đệm ẩn tệp hệ thống tiêu thụ hầu hết bộ nhớ RAM vật lý

Áp dụng cho: Microsoft Windows XP Professional x64 EditionWindows Vista Home BasicWindows Vista Home Premium

Triệu chứng


Bạn gặp sự cố hiệu suất ứng dụng và dịch vụ trong các phiên bản khác nhau của Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008 và Windows Server 2008 R2. Ngoài ra, bạn sẽ thấy các hiện tượng sau:
  • Bộ nhớ được hầu hết.
  • Bộ đệm ẩn tệp hệ thống tiêu thụ hầu hết bộ nhớ RAM vật lý.
  • Không liên tục và nhiều ổ đĩa lưu trữ tìm hiểu yêu cầu đĩa cứng.

Nguyên nhân


Quản lý bộ nhớ hệ điều hành Microsoft Windows sử dụng một thuật toán yêu cầu. Nếu bất kỳ quá trình yêu cầu sử dụng lượng bộ nhớ, tăng kích thước của nhóm làm việc (số trang bộ nhớ RAM vật lý) của quá trình. Nếu các yêu cầu liên tục và đánh dấu, nhóm làm việc trình sẽ tăng tiêu thụ bộ nhớ RAM vật lý. Trong trường hợp này, bộ làm việc cho tất cả các quá trình khác được phân trang trong đĩa cứng. Hiện tượng này làm giảm hiệu suất của ứng dụng và dịch vụ do trang bộ nhớ liên tục được ghi vào đĩa cứng và đọc từ đĩa cứng.

Hiện tượng này cũng áp dụng cho nhóm làm việc bộ đệm ẩn tệp hệ thống. Nếu có một số lượng cao và liên tục lưu trữ đọc yêu cầu bất kỳ quá trình hoặc bất kỳ trình điều khiển, việc thiết lập kích thước bộ đệm ẩn tệp hệ thống sẽ phát triển để đáp ứng yêu cầu này. Bộ đệm ẩn tệp hệ thống tiêu thụ bộ nhớ RAM vật lý. Do đó, đủ lượng RAM vật lý không có sẵn cho quá trình khác.

Phiên bản hệ điều hành Microsoft Windows trước đó với Windows Vista 32-bit, bộ đệm ẩn tệp hệ thống hoạt động có giới hạn lý thuyết bộ nhớ hơn 1 gigabyte (GB). Giới hạn trong phạm vi địa chỉ ảo ngăn việc bộ đệm ẩn tệp hệ thống hết bộ nhớ RAM vật lý.

Trên phiên bản 32-bit của hệ điều hành Windows Vista, lõi nguồn tài nguyên động. Hoạt động bộ đệm ẩn tệp hệ thống tăng tiêu thụ nhiều địa chỉ ảo chế độ lõi chi phí tài nguyên nhân khác. Giới hạn trong phạm vi bộ nhớ này là ít hơn 2 GB. Nếu máy tính có nhiều hơn 2 GB RAM vật lý, bộ đệm ẩn không thể thoát khí tất cả bộ nhớ RAM vật lý. Tuy nhiên, bộ đệm ẩn có thể thoát khí không gian địa chỉ ảo trong lõi. Điều này có thể gây ra lỗi phân bổ cho các cấu phần lõi.

Trên phiên bản 64-bit của hệ điều hành Windows, kích thước của địa chỉ ảo thường lớn hơn bộ nhớ RAM vật lý. Trong trường hợp này, nhóm làm việc cho bộ đệm ẩn tệp hệ thống có thể tăng tiêu thụ hầu hết bộ nhớ RAM vật lý.

Giải pháp


Thuật toán quản lý bộ nhớ trong hệ điều hành Windows 7 và Windows Server 2008 R2 được Cập Nhật để giải quyết nhiều tệp vào bộ đệm ẩn các vấn đề đã được tìm thấy trong các phiên bản trước của Windows. Đó là chỉ một số trường hợp duy nhất mà bạn phải thực hiện các dịch vụ này trên máy tính đang chạy Windows 7 hoặc Windows Server 2008 R2.

Làm thế nào để xác định xem hệ thống của bạn bị ảnh hưởng

Để xác định xem hệ thống của bạn bị ảnh hưởng bởi vấn đề này, cài đặt công cụ SysInternals RamMap. Bạn có thể tải xuống công cụ Windows Sysinternals website sau:
 
Khi bạn chạy công cụ, chọn tuỳ chọn Sử dụng tính . Điều này sẽ hiển thị một số cột hiển thị các mẫu hiện sử dụng bộ nhớ. Nhấp vào cột hoạt động để sắp xếp theo số byte được sử dụng và lưu ý sử dụng đầu dưới tổng số.

Nếu sử dụng trên máy tính là "Metafile", và nếu một phần của bộ nhớ được sử dụng, bạn đang gặp phải vấn đề bộ đệm ẩn tệp hệ thống được mô tả trong phần "Triệu chứng". Bạn có thể kiểm tra này bằng cách sử dụng theo dõi hiệu suất giám sát truy cập Memory\System bộ đệm ẩn cư byte và xem bộ nhớ cache tăng liên tục theo thời gian.

Hình 1. Ví dụ RamMap ra khi máy tính đang gặp sự cố.



Hình 2. Ví dụ RamMap ra khi máy tính không gặp sự cố.



Nếu truy cập Memory\System bộ đệm ẩn cư byte trong theo dõi hiệu suất cho thấy một xu hướng trở lên theo thời gian, máy tính đang gặp sự cố, như minh hoạ trong hình 3.

Hình 3. Ví dụ theo dõi hiệu suất ra khi máy tính gặp phải sự cố theo thời gian.

Yêu cầu khởi động lại

Bạn không phải khởi động lại máy tính khi bạn cài đặt, dỡ cài đặt hoặc sử dụng dịch vụ này.
Nếu bạn là bạn đọc bài viết này bởi vì bạn đang làm việc với khách hàng tin rằng họ bị ảnh hưởng bởi sự cố này, hãy làm theo các bước để giải quyết vấn đề.
  1. Xác minh rằng khách hàng RamMap ra, hiệu hay poolmon dữ liệu xác nhận bộ đệm ẩn tệp hệ thống tiêu thụ hầu hết bộ nhớ RAM vật lý, như được mô tả trước đó.
  2. Để có được dịch vụ bộ đệm ẩn động của Windows, tải xuống ở đây.
  3. Một số thiết đặt đăng ký Cache động là như sau:

    Máy chủ tệp, bạn có thể muốn thử 1GB.
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "MaxSystemCacheMBytes"=dword:00000400
    "MinSystemCacheMBytes"=dword:00000064
    "SampleIntervalSecs"=dword:0000003c
    "CacheUpdateThresholdMBytes"=dword:00000064

    Exchange 2007, bạn có thể muốn thử 500 MB:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "MaxSystemCacheMBytes"=dword:000001F4
    "MinSystemCacheMBytes"=dword:00000064
    "SampleIntervalSecs"=dword:0000003c
    "CacheUpdateThresholdMBytes"=dword:00000064

    SQL 2005 và cao hơn, trước đây khi làm việc với SQL EE, đã sử dụng 2GB:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "MaxSystemCacheMBytes"=dword:000007D0
    "MinSystemCacheMBytes"=dword:00000064
    "SampleIntervalSecs"=dword:0000003c
    "CacheUpdateThresholdMBytes"=dword:00000064

Thông tin


Để khắc phục sự cố này, sử dụng hàm GetSystemFileCacheSize API và chức năng SetSystemFileCacheSize API để đặt giá trị kích thước tối đa hoặc tối thiểu cho hoạt động bộ đệm ẩn tệp hệ thống. Sử dụng các chức năng là phương pháp duy nhất được hỗ trợ để hạn chế tiêu thụ bộ nhớ vật lý của bộ đệm ẩn tệp hệ thống.

Dịch vụ bộ đệm ẩn động Microsoft Windows là một dịch vụ mẫu trình bày một chiến lược sử dụng các API để giảm thiểu ảnh hưởng của sự cố này.

Cài đặt và sử dụng dịch vụ bộ đệm ẩn động của Microsoft gây loại trừ hỗ trợ cho Microsoft Windows. Dịch vụ này và mã nguồn được cung cấp như một ví dụ về cách sử dụng Microsoft hỗ trợ API để giảm sự phát triển của bộ đệm ẩn hệ thống tệp.

Bạn có thể tải dịch vụ và mã nguồn từ website sau của Microsoft:
 

Tài nguyên bổ sung

Đọc chương 9 (quản lý bộ nhớ) và 10 (trình quản lý bộ nhớ Cache) của bên trong cửa sổ, phiên bản 5.

Bài đăng Blog (vấn đề bộ đệm ẩn hệ thống lớn) quản lý bộ nhớ

Bài đăng Blog vấn đề sao chép tệp lớn chậm

Giới hạn bộ nhớ cho các phiên bản Windows

976618 bạn gặp phải vấn đề hiệu suất ứng dụng và dịch vụ khi bộ đệm ẩn tệp hệ thống tiêu thụ hầu hết bộ nhớ RAM vật lý

918483 làm thế nào để giảm hoán trang bộ nhớ đệm nhóm trong phiên bản 64-bit của SQL Server

895932 yếu tố cần xem xét trước khi bạn bật chế độ đệm ẩn hệ thống trong Windows XP

232271 làm thế nào để tối ưu hóa Windows NT Server bằng cách sử dụng sổ đăng ký

837331 về quản lý bộ nhớ Cache trong Windows Server 2003

http://technet2.microsoft.com/windowsserver/en/library/EFA621BD-A031-4461-9E72-59197A7507B61033.mspx

LargeSystemCache TechNet chủ đề

Bài đăng RamMap Blog

Trạng thái


Microsoft đã xác nhận rằng đây là sự cố trong sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".