RES 메모리와 관련하여 중단 또는 상단을 신뢰해야합니까?


0

시스템에서 일부 메모리 사용 메트릭을 테스트하는 프로그램을 작성 중이며 대상 메모리 소비량에 도달하고 싶습니다. 메모리 meminflate.exe -G 103.1를 사용 하려면 내 프로그램을 실행하십시오 103.1 GB.

내가 실행하면 meminflate.exe -G 63.3, 나는 맨 쇼 참조 VIRT등을 63.5(OK, 너무 멀리 떨어져)하지만, RES표시 63top그것은이다 63.5htop. 이 중 어느 것을 신뢰해야합니까? 나는 그것이 htop맞을 것으로 기대 하지만, 왜 거기에 차이가 있는지 궁금합니다.

답변:


0

Rss (상주 세트)의 정확한 바이트 수는 다음에서 얻을 수 있습니다 /proc/<pid>/stat.

echo $(($(cat /proc/$(pgrep -n meminflate.exe)/stat | cut -d' ' -f24)*4096))

설명 : 읽습니다 /proc/<pid>/stat(여기서는 PID 번호를 사용하여 찾을 수 있음 pgrep), cut24 번째 필드 (Rss) 만 선택합니다. 그런 다음 결과에 4096 (Linux의 일반 페이지 크기)을 곱합니다. kiB 단위의 크기를 얻기 위해 4를 곱하거나 MiB 단위의 크기로 256으로 나눌 수도 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.