Máy: Dell r815, CentOS 5.4, RAM 256GB, 4 x 12 lõi.
Chúng tôi có một ứng dụng có tệp 275GB. Nó thực hiện sắp xếp tại chỗ trên 20GB dữ liệu cùng một lúc, nghĩa là nó hoán đổi các bit xung quanh và thay thế chúng trong cùng một tệp. Tất cả điều này hoạt động tốt.
Có một lượt cuối cùng sau đó đọc qua toàn bộ tệp và thực hiện sắp xếp hợp nhất trên các khối 20 GB khác nhau và xuất chúng thành một tệp hoàn toàn mới.
Quá trình này SEEMS để chạy ổn trong một thời gian và cuối cùng nó sẽ xả ra khoảng 50 GB vào đĩa. Sau đó, máy WHOLE bắt đầu hoạt động.
Các lệnh đơn giản như ps -ef
, ls -al
treo trong một thời gian dài và hiển thị là lấy 100% CPU (chỉ là một lõi).
Nhìn vào số liệu thống kê bộ nhớ trên top
, tôi thấy rằng nó đang sử dụng khoảng 120 GB RAM (miễn phí 128 GB) và có 120 GB trong phần "lưu trữ".
Có ai nhìn thấy loại hành vi này trước đây? Quá trình tương tự chạy tốt trên một máy có bộ nhớ 64GB - vì vậy bằng cách nào đó tôi nghĩ rằng nó có liên quan đến việc gắn RAM tôi có trong máy.
(như chúng tôi đã nói, tôi đang chạy thử nghiệm trên máy này với tất cả trừ 64GB - để loại trừ sự cố phần cứng).
Tôi có lẽ thiếu một số thông số vm trong /etc/sysctrl.conf
?
Cảm ơn!