램(메모리) 커밋됨 사용량 증가시 줄이기 줄일 수 있을까
본문 바로가기

하드웨어/램

램(메모리) 커밋됨 사용량 증가시 줄이기 줄일 수 있을까

램(메모리) 커밋됨 사용량 증가시 줄이기 줄일 수 있을까 이야기해보는 시간을 가져볼까 합니다.

 

 

▶ 커밋됨이 무엇인가요?

물리메모리+가상메모리의 조합입니다.

▶ 커밋됨 크기가 너무 커집니다.

관련 프로세스를 강제로 종료하는것 외에는 별다른 방법이 없습니다.

 

 

이 내용은 본인의 IT지식을 정리한 글입니다.

 

램(메모리) 커밋됨 사용량 증가시 줄이기 줄일 수 있을까


예전부터 작업을 하면서 문제가 되었던 것이 있었습니다. 바로 메모리 부족으로 인한 컴퓨터 시스템 가동 중단 현상인데요 메모리(램)를 추가하면 되는거 아니냐고 물으신다면 이미 일반PC 메모리 최대치인 32GB 메모리 4개 128GB 장착을 해놔서 더 이상의 메모리 증설은 불가능한 상황입니다.

계산상 충분해보인다고 확신하고 여러 프로그램을 동시에 가동시키기 위해 가상 데스크탑을 가동중에 있으며 하나의 가상 데스크탑에는 약 4GB의 메모리를 할당하여 총 메모리 할당량은 110GB정도이므로 10GB가 넘는 여유메모리가 존재합니다. 하지만 PC를 사용하다보면 메모리 사용량이 125~126GB 혹은 그 이상 사용하고 있는 것을 볼 수 있는데요 이러한 문제 때문에 가동중인 프로세스가 꺼지고 재가동할깨 메모리 용량이 부족하여 실행을 하지 못하는 증상이 발생합니다.

커밋됨이 도대체 뭔데?


커밋됨의 정확한 의미는 물리메모리+가상메모리의 합이며 자동관리적 측면으로 인해 물리메모리가 부족하지 않은 경우를 제외하고는 가상메모리는 자동설정되어 수동설정을 하지 않습니다.


위에서 언급한대로 실제 메모리는 110GB대로만 사용하고 있으며 추가로 사용중인 프로세스의 합을 감안하더라도 절대 120GB를 넘어가지 않았습니다. 하지만 메모리 사용량을 보면 현재 사용량이 126GB/128GB이며 약 2GB정도 남은것을 알 수 있습니다. 지정된 메모리 용량까지 사용하는 것은 당연히 이해는 하겠지만 대체 어디서 문제가 발생한건지 이해를 할 수가 없습니다. 실제로 관련 문의를 찾아보면 본인이 설정한 메모리보다 물리메모리 사용량이 더 많은 사람들을 어렵지 않게 찾아볼 수 있습니다.


작업관리자를 보면 가상데스크탑에 할당된 110GB를 제외한 메모리 사용량이 그렇게 큰것은 아닌것을 금방 느낄 수 있는데요 저걸 다합친다고 해봐야 10기가 근처도 가지 못하기 때문입니다. 그렇다면 나머지 5~6GB는 어디에 간걸까요?


작업관리자의 추가 옵션인 리소스 모니터에서 메모리쪽을 보면 실제 메모리 사용량(개인)과 커밋 메모리를 볼 수 있는데 실제메모리 대비 커밋메모리가 몇배는 더 먹고 있는 것이 확인되어집니다. 여기 보이는 커밋메모리를 개인메모리에 맞춰 사용하지 않는 메모리를 되돌려받아야 우리가 원하는 답에 근접해진다는 것인데 대체 어떻게 저놈의 커밋메모리 사용량을 줄여야 할까요?

 

 

커밋메모리 사용량을 줄이는 방법은 존재하지 않는다


좋지 않은 이야기부터 먼저 하자면 프로그램이 켜져있는 상태로 커밋메모리를 줄이는 방법은 존재하지 않습니다. 이러한 현상을 두고 메모리 누수라고 부르고 있는데 램 용량은 사용되지만 사용된 메모리는 돌아오지 않는다는 표현이기도 합니다.

 

커널단에서 메모리를 관리하고 있어 실제로 저 부분을 건드릴 수 있는 방법이 없습니다. 인터넷에 떠돌고 있는 프로그램 중 커밋됨과 가장 연관성이 높은 프로그램을 꼽자면 rammap/emptystandbylist 크게 두가지가 나오는데 둘다 캐시됨 혹은 물리메모리의 용량 확보만 가능할뿐 이미 사용을 하겠다고 선포(?)해버린 커밋됨 용량을 줄일 수 없습니다. 위와 다른 이유를 꼽자면 그냥 윈도우에서 지원을 하지 않기 때문이라고나 할까요?

왜 이러한 현상이 나오는것인지 확신할 수는 없지만 추정하기로는 사용중인 물리메모리 뿐만 아니라 가상메모리에서 물리메모리 영역을 일부 침범하는게 아닌가 싶은것이 가장 유력한 의심후보(?)로 자리잡고 있습니다. 그렇지 않고선 본인이 할당한 이상의 물리메모리 + 가동중인 프로세스의 합이 120GB가 나오지 않는데 그걸 넘어서서 125~126GB의 메모리가 사용되는게 상식적으로 이해가 되지 않기 때문입니다. 다수의 컴퓨터에서 동일한 증상이 발생되고 있지만 전혀 해결을 하지 못하고 있는 상황이기도 합니다.

그렇다면 남은 결론은 단 하나입니다. 가동중인 프로그램을 일부 종료하는 방법 뿐입니다. 제 다른 PC를 예를 들어보면 가동중인 프로그램의 수를 줄여야 한다는 결론밖에는 나오지 않습니다.


위 작업관리자에 설정된 고정 메모리 사용량은 80GB입니다. 그런데 실제 사용되고 있는 메모리 용량은 무려 20GB 이상 더 사용하고 있는 103GB입니다.


세부정보 항목을 보면 메모리가 충분하여 프로세스 재시작을 하지 않다보니 이전 PC 메모리보다는 평균적으로 사용량대가 높은 편입니다. 물론 여기에서도 사용중인 실제 메모리의 총 합은 20GB 근처도 가지 않습니다만 어찌된 일인지 추가로 23GB를 더 사용하고 있습니다. 이정도로 메모리가 남기 위해서는 가동중인 프로그램을 최소한 5개 이상 종료해야 하는데... 개인사정상 그럴수는 없습니다.

 

 

램(메모리) 커밋됨 사용량 증가시 줄이기 줄일 수 있을까 이야기해보는 시간을 가져보았습니다. 커밋메모리의 물리메모리 침범 문제 과연 어떻게 봐야 하는 것일까요?