아직 86GB의 RAM을 사용할 수 있는데 시스템에서 스왑을 많이 사용하는 이유는 무엇입니까?

아직 86GB의 RAM을 사용할 수 있는데 시스템에서 스왑을 많이 사용하는 이유는 무엇입니까?

성능 문제라기보다는 무슨 일이 일어나고 있고 어떻게 작동하는지 이해하려는 욕구입니다. 내 시스템에는 128GB RAM을 포함하여 많은 리소스가 있습니다. 내가 발견한 것(그리고 충분한 런타임이 있을 때마다 일어난 일)은 여전히 ​​86GB의 메모리가 남아 있을 때 시스템이 사용 가능한 전체 스왑 공간을 사용하기 시작한다는 것입니다.

다음은 시스템 상태를 보여주는 htop의 스크린샷입니다.

최고 출력

Swappiness는 5로 설정됩니다.

$ sysctl vm.swappiness
vm.swappiness = 5

vmstat디스플레이는 대부분 0이지만 이벤트가 하나 있습니다.

$ vmstat 60                                                                                  
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----      
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st      
 2  0 8305756 5218320  31872 83460448    0    0     0  1411 11432 17991  1  1 98  0  0
 2  0 8305616 5042872  31872 83571392   66    0  1193  2068 12097 18650  2  1 98  0  0

시스템 세부정보:

열쇠
리눅스 배포판 페도라 37
커널 버전 6.4.11-100.fc37.x86_64

스왑을 사용하는 상위 프로세스(맨 아래에서 가장 높은 순서)

    PID User     Command                         Swap      USS      PSS      RSS
...
2835417 ben      /usr/lib64/firefox/firefox     60104   703736   710125   818252 
2835448 ben      /usr/lib64/firefox/firefox     63260  1179992  1185457  1288392 
2833473 ben      /opt/google/chrome/chrome -    64748    32896    34897   146000 
3090226 100998   /usr/lib/chromium/chromium     67612   101820   104321   136248 
2835394 ben      /usr/lib64/firefox/firefox     72476  1177840  1187600  1295372 
12678 100998   /usr/local/bin/python /usr/    75788   330820   330927   332536 
3682935 ben      /opt/google/chrome/chrome -    87196   207280   210962   350268 
1516354 ben      /home/ben/.rubies/ruby-3.0.    91728    28868    29182    32820 
3621825 ben      /opt/google/chrome/chrome -   108724   175184   178064   310136 
2833257 ben      /opt/google/chrome/chrome     110132   513256   545048   710296 
599920 ben      /usr/lib64/erlang/erts-13.2   113620    27728    28951    34700 
1281109 ben      /opt/google/chrome/chrome -   139388    24860    27513   153668 
1013489 qemu     /usr/bin/qemu-system-x86_64   774020 16138492 16138790 16150960 
1013519 root     /usr/libexec/virtiofsd --fd   816020       24      154     1880 
2863657 ben      /usr/lib/slack/slack         1504064   124068   143980   222196

편집 - 2024년 1월: 여전히 답변이 없지만 계속 사용하여 얻은 몇 가지 추가 정보를 추가했습니다. 스왑을 축적하는 가장 일반적인 프로세스는 일반적으로 동일하며 KVM/qemu 및 Google Chrome/Electron과 관련이 있는 것 같습니다.

답변1

스왑 파티션을 삭제하고 다시 넣으십시오. 이러한 것 중 일부는 커널이 메모리에 저장하지 않습니다.

관련 정보