시스템 메모리를 모두 소모하는 내용을 어떻게 찾습니까? (수퍼페치 아님)


62

작업 관리자가 올바르게보고하지 않는 경우 메모리 관련 문제를 어떻게 진단 / 발견합니까?

메모리 누수 등이 있어야합니다. 12GB 메모리 사용량이 75 %이지만 프로세스의 메모리 사용량 목록이 추가되지 않습니다 (예 : "모든 사용자의 프로세스 표시"가 선택되어 있음) ).

이 "가상 (phantom)"메모리 사용량은 시스템 작동 시간과 관련하여 증가하는 것처럼 보입니다. 총 118 개의 프로세스가 있음을 보여줍니다. 상위 5 개 외에 모두 50MB 미만입니다.

최고 프로세스는 2.6GB를 사용하는 파이어 폭스입니다. 900MB의 Adobe Premiere 300MB의 플러그인 컨테이너. 창백한 달 275 MB. 94MB의 Explorer.exe

세상에서 남은 메모리를 어떻게 사용하고 있는지 어떻게 알 수 있습니까? 작업 관리자가 사용중인 모든 것을 보지 못하는 것처럼 보입니다. 아마도 어떤 종류의 메모리 누수가 있습니까? 또는 프로그램이 사용한 메모리를 올바르게 해제하지 않습니까?

리소스 모니터 보고서 (더 큰 버전을 보려면 클릭) :

리소스 모니터 출력

노트:

  1. 주 OS 드라이브가 SSD이므로 시스템에서 SuperFetch가 비활성화되어 있습니다.
  2. 그리고 저는 사용하지 않는 램이 "폐기 된"램이라는 원칙을 이해합니다. 그러나 메모리 사용량이 거의 최대 용량에 사용되는 것을 보았을 때 (나의 관심사에 따라) 후속 프로그램을 실행 /로드하지 못하게하고 메모리 사용량을 줄이는 데 거의 영향을 미치지 않으면 서 많은 프로그램을 종료하는 작업으로 보냈습니다. 적어도 눈에 띄게 짧은 시간 내에).
  3. 메모리가 가득 차면 SSD의 1GB 페이지 파일이 내가 설정 한 6GB 제한으로 확장되는 것을보고 싫어합니다. "나쁜"SSD가 Windows에 비해 먼지가 많을 가능성이 있다는 사실을 알게 되었기 때문입니다. / rampantly 본격적인 메모리 스틱으로 사용합니다. (참고로 페이지 파일을 정적 1GB로 하드 캡해야합니까?)

4
참고 사항 : 사용 된 RAM은 그 자체로 나쁜 것이 아닙니다. 사물을 영리하게 캐싱하면 속도가 빨라집니다. "omg, programm xyz가 너무 느리게 시작해서 램에서 다른 것들을 버려야하기 때문에 간신히 가져갈 수 있습니다"와 같은 문제가 없다면 전혀 문제가되지 않을 것입니다.
akira


고맙지 만 SuperFetch가 내 시스템 (기본 SSD OS 드라이브 사용)에서 비활성화되어 있기 때문에 질문이 다릅니다. 원래 질문을 업데이트 중입니다.
Coldblackice

@Coldblackice 단 하나의 (답을 얻지 못한) 대답이 당신에게 도움이되지 않는다고해서 동일한 질문이 아니라는 것을 의미하지는 않습니다. 다른 질문의 OP는 SuperFetch를 변경해도 도움이되지 않았다고 말했습니다. :)
Ƭᴇcʜιᴇ007

사실이지만,이 경우에는 정답이 아니므로 다른 질문이 필요합니다. 이 특정 사항을 반영하여 질문이 업데이트되었습니다.
Coldblackice

답변:


58

일반적으로 RamMap 과 같은 도구를 사용하여 메모리를 사용하는 내용에 대한 통찰력을 얻을 수 있습니다 .

여기에 이미지 설명을 입력하십시오클릭하면 확대

종종 메모리를 성능 향상을 위해 RAM으로 가져온 메모리 매핑 파일이 메모리를 사용할 수 있습니다.

RamMap 의 활성 열을 기록해 두십시오. 그것은 실제로 현재 사용되고있는 메모리입니다. 사용 가능한 메모리 관련 지표 는 종종 오도 될 수 있습니다. 여기에는 작업 관리자와 같은 Windows 도구가 포함됩니다.

추가 정보


또한 귀하의 질문에서 몇 가지 추가 사항을 다루고 싶었습니다.

그러나 메모리 사용량이 거의 최대 용량에 사용되는 것을 보았을 때 (나의 관심사에 따라) 후속 프로그램을 실행 /로드하지 못하게하고 메모리 사용량을 줄이는 데 거의 영향을 미치지 않으면 서 많은 프로그램을 종료하는 작업으로 보냈습니다. 적어도 눈에 띄게 짧은 시간 내에).

당신의 추론은 완벽합니다. 그러나 메모리 부족으로 인해 문제가 발생하지 않으면이 방법을 사용하지 않아야합니다. 실제 메모리가 필요할 때 운영 체제는이 작업을 처리하고 페이징 파일로 데이터를 플러시해야합니다.

아마도 당신은 또한 당신의 연습에 잘못된 지표를 사용하고 있습니다. 커밋 요금 ( 프로세스 탐색기 용어) 을 살펴 보고자 합니다.

여기에 이미지 설명을 입력하십시오

커밋 요금은 사용 된 모든 메모리의 합계입니다. 스크린 샷에서 볼 수 있지만 제한이 있습니다. 이 제한은 내 실제 메모리 크기 + 페이징 파일 크기입니다. 그 한계에 도달하면 문제가 될 것입니다.

다음 주제로 넘어갑니다.

메모리가 가득 차면 SSD의 1GB 페이지 파일이 내가 설정 한 6GB 제한으로 확장되는 것을보고 싫어합니다. "나쁜"SSD가 Windows에 비해 먼지가 많을 가능성이 있다는 사실을 알게 되었기 때문입니다. / rampantly 본격적인 메모리 스틱으로 사용합니다. (참고로, 페이지 파일을 통계 1GB로 하드 캡해야합니까?)

제 생각에는 여기에 몇 가지 잘못된 점이 있습니다. 일반적으로 페이징 파일의 크기에 제한을 설정하지 않는 것이 좋습니다. 마크 러시 노 비치 (Mark Russinovich)는 위에 링크 한 비디오에서 이것을 설명합니다.

그로부터 나쁜 것만 올 수 있습니다. 페이징 파일에 6GB 이상의 데이터를 플러시해야하지만 6GB로 제한 한 경우 Windows는 어떻게해야합니까? 그것은 중요한 문제입니다.

Windows가 페이징 파일을 처리하도록합니다. 내가 강력히 권장하는 것은 페이징 파일을 SSD에서 멀리 옮기는 것입니다. Tom Wijsman은 자신의 블로그 게시물에서 SSD의 수명을 최대화하는 방법 에 대해 잘 설명하고 있습니다.


1
아, 알 겠어요 예, "팬텀"메모리 사용량은 매핑 된 파일 범주 (특히이 열의 대기 열)에서 온 것으로 보입니다. 따라서 작업 관리자는 이러한 파일이 매핑되는 것으로보고하지 않고 메모리가 사용되고 있다고보고합니까?
Coldblackice

2
도움과 부록에 감사드립니다. 페이지 파일과 SSD에 대한 귀하의 참고 사항에 대해 정확히 반대의 말을 들었습니다 (따라서 내가 그것을 가지고있는 이유). 내가 결정적인 "올바른"을 가지고 있다고 말하지는 않지만 SSD의 속도 이점으로 인해 페이지 파일이 SSD에서 가장 좋습니다. 그리고 SSD의 수명을 저하시키는 것에 관해서는 페이지 파일이 제한되어있는 한 무시할 만하다고 들었습니다.
Coldblackice

1
Windows에서 관리하도록-Windows에서 내 페이지 파일을 최대 18GB까지 확장하려고합니다! 불행히도 페이징을 위해 SSD에 충분한 공간을 확보 할 수 없습니다. 나는 12GB의 메모리가 Windows가 작업하기에 충분할 것이라고 생각했습니다. 이상하게도, 메모리는 이상하게도 Windows는 가능한 한 많은 양의 메모리를 빠르게 훔쳐서 손에 넣을 수있는 모든 것을 캐싱하는 것처럼 보입니다. :) 따라서 원하는 페이지 파일을 많이 확보하면 페이지 파일을 완전히 채우는 데 신속하게 브리지 할 수있는 충분한 파일을 메모리에 매핑 할 수 있습니다.
Coldblackice 2016 년

1
@Coldblackice : 당신을 설득 할 수 없어서 미안합니다. Windows 메모리 관리에 대해 잘 알고있는 사람은 거의 없습니다. 그러나 많은 사람들이 권장 사항을 신속하게 제공합니다 (분명히 저를 포함합니다). 페이징 파일 크기를 제한하는 것이 유용한 지 자문 해보십시오. 왜 이것이 기본값이 아닌가? 또한 메모리 매핑 된 파일은 파일 (메모리에 매핑 된 파일)에 이미 존재하기 때문에 페이징 파일로 플러시 될 가능성이 거의 없습니다. 따라서 이와 관련하여 당신의 두려움은 아마도 잘못되었습니다.
Der Hochstapler

1
@ 올리버 잘츠부르크 (Oliver Salzburg)는 Windows 7이 SSD가 아닌 녹슬지 않고 12-4가 아닌 1-4GB의 RAM을 회전하도록 설계되었다는 점을 명심해야합니다. 모든 것이 맞지 않는 것은 적용되지 않으며, 해결책은 누군가가 문제를 더 깊이 이해하기를 원할 때 그에 대해 생각하지 않고 그 기본값을 절대로 만지지 말라고 주장하지 않습니다. 멍청한 놈에게는 좋지만 모든 사람에게는 해당되지 않습니다.
SilverbackNet

2

필자의 경우 메모리 사용량이 높은 이유는 RAM에 대해 동적 메모리 설정을 활성화 한 hyper-v 가상 머신이었습니다.

RamMap 도구는 근본 원인을 찾는 데 도움이되었습니다.

먼저 RamMap에서 Driver Locked가 32GB RAM에서 29GB 이상을 소비한다는 것을 알았습니다. 그런 다음 HyperV 동적 메모리 사용으로 인해 Driver Locked 높은 메모리 사용이 발생할 수 있다고 설명하는 기사를 찾았습니다.


0

스냅에 모든 프로세스가 표시되지 않고 표시된 프로세스 자체가 5.8GB 메모리를 사용하는 것으로 표시됩니다. 표시된 스냅에서 불필요한 백그라운드 프로그램이 많이 실행되고 있음을 보여줍니다. msconfig를 사용하면 불필요한 시작 프로그램이 제거되고 가상 메모리도 증가합니다 (실제 메모리의 1.5 배).


당신은 어떻게 할 가상 메모리를 증가 ? 그리고 요인 1.5의 원인은 무엇입니까?
Der Hochstapler

가상 메모리를 늘리면 (페이지 파일 크기를 늘림) 가치가 있지만 페이징이 많이 발생하여 시스템 성능이 저하 될 수 있습니다. 불필요한 프로그램이 모두 실행되지 않으면 더 많은 RAM을 설치하는 것이 가장 좋습니다.
Fran

가상 메모리를 늘리려면 경로를 따르십시오 : 내 컴퓨터 속성으로 이동-> "고급 시스템 설정"을 선택-> '고급'탭으로 이동-> 성능에서 "설정"을 선택-> 고급 탭으로 이동-가상 메모리에서 변경-> 사용자 정의 크기 선택을 선택하여 분을 지정하십시오. 그리고 최대. 크기 ...... 가상 메모리를 실제 메모리의 1.5 배까지 늘리는 것이 좋습니다 (예 : 4GB RAM이있는 경우 최대 6GB 가상 메모리를 할당 할 수 있음). 그러나 FRANs 제안도 정확합니다. 불필요한 백그라운드 응용 프로그램을 최소화하십시오.
tiki

따라서 전체적인 원시 성능 측면에서 페이지 파일을 늘리거나 줄이는 것이 더 낫다는 것이 입증 되었습니까? 1.5 배가 정말로 필요한가요?
Coldblackice

0

Sysinternal의 RAMMAP을 사용해 볼 수는 있지만 작업 관리자 및 리소스 관리자와 다른 방식으로 메모리 사용량을 보여 주므로 너무 도움이되지 않습니다.

작업 관리자 및 리소스 모니터에는 파일 캐시와 크기가 표시되지 않습니다. 메모리의 "사용 중"부분입니다 (리소스 모니터 참조). 파일 캐시는 특히 컴퓨터가 몇 시간 동안 계속 실행되는 경우 매우 큰 크기로 커질 수 있습니다. 파일 캐시 및 메모리 누수가 증가하여 시간이 지남에 따라 전체 프로그램 메모리 사용량이 증가합니다. 일부 프로그램은 단순히 메모리 관리가 까다 롭습니다.

메모리 사용량을 최소화하는 한 가지 방법은 프로세스 양을 줄이는 것입니다. (118 개의 프로세스가 실행되는 이유는 무엇입니까? 왜 Explorer.exe의 여러 인스턴스가 실행됩니까?)

정기적으로 메모리 사용량을 줄이고 파일 캐시를 정기적으로 축소하는 데 도움이되는 프로그램이 있습니다. (PcWinTech의 CLEANMEM). 이 방법으로 메모리 사용량을 줄이면 Windows가 메모리에서 스왑 파일 (SSD의)로 데이터를 쓰지 않아도되거나 줄어 듭니다. 따라서 SSD의 수명이 늘어납니다. 메모리 사용량을 줄이면 더 많은 "대기"메모리를 사용할 수 있으므로 Windows가 대기 메모리에 더 많은 파일을 미리로드하여 시스템 속도를 높일 수 있습니다.


1
이 소프트웨어와 제휴하고 있습니까? 마지막 단락은 마케팅이 저에게 말하는 것처럼 들리며, 이전 게시물 2 개에서 동일한 내용을 추천하고 있습니다.
Arjan

1
예, 프로그램 작성자가 프로그램을 개선하도록 도와주었습니다. 그러나 프로그램이 무료이기 때문에 프로그램을 홍보해야 할 (재무 적) 이유가 없습니다.
Willy2

0

RAMMap은 C:\Windows\SoftwareDistribution\DataStore\DataStore.edb매핑 된 파일이 내 소중한 4Gb RAM의 400Mb를 낭비하고 있음을 보여주었습니다 .

게다가 Windows Update는 그 거대한 파일을 업데이트하는 과정에서 시스템을 지속적으로 느리게하고있었습니다.

많은 저가형 PC에서 일반적인 문제 일 수 있습니다.

참조 PC 부츠 한 다음 컴퓨터를 늦추고 거대한 datastore.edb 파일 기록 가능한 해상도를.

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