Tôi có một vấn đề rất lạ, đó là tôi đang gặp khó khăn trong việc chẩn đoán nguyên nhân gốc rễ.
Tôi có Mac Pro (2008, 8 lõi 2.8 GHz, 8800GT) với 14 GB RAM (gần đây đã được nâng cấp vì vấn đề này!).
Khi tôi khởi động hệ thống của mình và đăng nhập, vm_stat / top / Activity Monitor sẽ hiển thị rằng kernel_task có khoảng 150 MB được phân bổ và máy có khoảng 800 MB bộ nhớ có dây được phân bổ.
Ngay cả ban đầu, 800 MB có vẻ như rất nhiều bộ nhớ có dây được phân bổ mà không có ứng dụng nào chạy - nhưng, nó còn tệ hơn. (NB: Có dây bị khóa, bộ nhớ không thể tải được)
Sau một thời gian rất ngắn, đôi khi được kích hoạt bởi một thứ đơn giản như khởi chạy một thiết bị đầu cuối, kernel_task sẽ tăng tốc lên 8-900 MB Real Mem (RSIZE) và Bộ nhớ có dây sẽ tăng tốc lên 1.6 GB (ngụ ý rằng tất cả các yêu cầu bộ nhớ bổ sung đều dành cho RAM có dây trong kernel).
Nếu tôi thoát mọi thứ (IE: không có ứng dụng đang chạy, bỏ qua trình theo dõi hoạt động hoặc thiết bị đầu cuối để xem trên cùng), sẽ không có sự giảm đáng kể nào trong việc sử dụng kernel_task RSIZE hoặc sử dụng Bộ nhớ có dây. Đi ngược lại và tải hệ thống với các tác vụ cũng cho thấy bộ nhớ có dây không bị giảm - và điều quan trọng là nó không bị giảm sự ưu tiên đối với trao đổi nặng.
Nếu tôi đăng xuất và đăng nhập lại, nó sẽ giảm một chút (450 MB kernel_task, 1,28 GB có dây), nhưng không quay lại từ đầu.
Tôi không chạy bất kỳ kext s nào - và hơn nữa, kextstat cho thấy không có sự phân bổ bộ nhớ lớn ở đó; lớn nhất là com.apple.nvidia.nv50hal với khoảng 4 MB Bộ nhớ.
Máy cảm thấy chậm chạp hơn khi điều này xảy ra - không có gì đáng ngạc nhiên vì một lượng RAM khổng lồ như vậy đã được đánh dấu là không thể phân trang.
Vì vậy, tôi có một vài câu hỏi:
1) Có cách nào tốt để chẩn đoán những gì đã phân bổ tất cả bộ nhớ có dây này không? Nó thường lớn hơn 2 lần kích thước kernel_task, không chạy ứng dụng. Tổng bộ nhớ thực dường như không tăng lên - dường như có một loạt RAM không được tính ở bất cứ đâu.
2) Điều gì đang xảy ra khiến kernel đột nhiên cần bộ nhớ gấp 6 lần?