Computer >> 컴퓨터 >  >> 체계 >> Windows Server

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

메모리 압축 Windows 10 및 11의 기능은 RAM의 일부 페이지를 압축하여 물리적 RAM 사용률을 최적화하는 데 사용됩니다. 프로세스 메모리 압축을 사용하면 디스크에서 페이징하지 않고도 실제 메모리에 더 많은 프로세스를 유지할 수 있습니다. 필요한 데이터는 압축/압축 해제에 추가 CPU 리소스를 사용하더라도 RAM에서 더 빨리 검색됩니다. 메모리 압축을 사용하면 I/O 작업량을 줄여 RAM 사용량, 하드 디스크 부하를 줄이고 SSD 리소스를 절약할 수 있습니다.

Microsoft는 Windows 10 및 Windows Server 2016에서 메모리 관리자(MM) 프로세스에 의한 메모리 압축을 처음 도입했습니다. 이 기사에서는 Windows에서 압축 메모리 사용 통계를 보는 방법, RAM 압축을 활성화 또는 비활성화하는 방법(컴퓨터가 메모리 압축 프로세스의 높은 로드로 인해 느립니다.

Windows 10 및 11의 압축 메모리

Windows 메모리 관리자가 메모리 부족을 감지하면 디스크의 페이징 파일에 쓰는 대신 사용하지 않는 메모리 페이지를 압축하여 다른 프로세스를 위한 RAM을 확보합니다.

원래 시스템 및 압축 메모리 프로세스 문제 해결에 너무 편리하지 않은 시스템 프로세스 내부에 있었습니다. 최신 Windows 빌드(Win 10 20H2 및 Windows 11)에서 이 기능은 별도의 메모리 압축으로 분리됩니다. 작업 관리자에서 숨겨진 프로세스입니다. Get-Process PowerShell cmdlet을 사용하여 이 프로세스에 대한 정보를 얻을 수 있습니다.

Get-Process -Name "Memory Compression"

Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
0 0 1548 380920 1,104.59 1764 0 Memory Compression

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

Windows 작업 관리자에서만 현재 메모리 압축 사용량 수준을 볼 수 있습니다.

실적으로 이동 탭에서 메모리를 선택합니다. 부분. 압축된 메모리 사용량의 현재 값은 사용 중(압축됨)에 표시됩니다. 매개변수. 내 예에서는 4.5GB가 사용되며 그 중 373MB가 압축됩니다. 압축된 초기 메모리 양을 이해하려면 메모리 구성 위로 마우스를 가져갑니다. 그래프:

압축 사용 중(373MB). 압축 메모리는 약 1,549MB의 데이터를 저장하고 시스템은 1,176MB의 메모리를 절약합니다.

보시다시피 메모리 압축률이 거의 315%에 이르므로 RAM 절약 효과가 상당히 큽니다.

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

또한 프로세스 탐색기를 사용하여 Windows 11/10의 메모리 압축 프로세스에서 사용하는 실제 CPU 사용량과 메모리 크기를 확인할 수 있습니다.

프로세스 탐색기를 실행하고 메모리 압축을 찾습니다. 시스템 프로세스 트리의 프로세스

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

메모리 압축 프로세스는 SysMain에서 서비스합니다. (이전 SuperFetch) 서비스. SysMain은 메모리 페이지를 압축하고 통합하여 디스크 쓰기(페이징)를 줄입니다. 이 서비스가 중지되면 Windows는 RAM 압축을 사용하지 않습니다.

PowerShell을 사용하여 SysMain 서비스의 상태를 확인할 수 있습니다.

get-service sysmain

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

대부분의 경우 컴퓨터가 정상적으로 작동하고 RAM 크기가 충분하면 압축 메모리 프로세스가 제대로 작동하며 관리자의 조치가 필요하지 않습니다.

시스템 및 압축 메모리 프로세스 높은 CPU 및 RAM 사용량

SysMain 서비스와 메모리 압축 프로세스는 컴퓨터 성능을 향상시키는 데 사용됩니다. 그러나 때때로 메모리 압축 프로세스가 컴퓨터의 CPU 또는 하드 드라이브를 과도하게 로드하기 시작하거나(최대 100%, 작업 관리자에서 볼 수 있음) RAM 리소스를 너무 많이 차지합니다. 물론 컴퓨터가 느리게 작동하기 시작하거나 끊깁니다.

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

이 경우 무엇을 할 수 있습니까?

압축 메모리 프로세스에 의한 높은 PC 리소스 사용 문제를 해결하는 데 도움이 되는 몇 가지 팁을 드리겠습니다.

  • 컴퓨터에서 페이지 파일을 일시적으로 비활성화합니다(페이징 파일 없음 옵션), 컴퓨터 다시 시작, 페이징 파일 활성화(모든 드라이브의 페이징 파일 크기 자동 관리 옵션), 다시 재부팅합니다.
  • 압축 메모리 프로세스에 의한 컴퓨터의 고부하 문제가 절전 또는 최대 절전 모드에서 깨어난 후에만 발생하는 경우(다시 시작한 후 사라짐) 스토리지 컨트롤러용 최신 버전의 드라이버를 다운로드하여 설치해 보십시오. (ACPI/AHCI/RAID/SCSI), 공식 웹사이트의 하드 드라이브 및 비디오 카드. 그 후에는 자동 드라이버 업데이트를 비활성화하는 것이 좋습니다. 메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

이러한 조치가 도움이 되지 않으면 Windows에서 압축 메모리를 사용하지 못하도록 완전히 차단할 수 있습니다.

Windows 10 및 11에서 메모리 압축을 비활성화하는 방법

압축 메모리를 사용하지 않고 Windows 10이 안정적으로 작동하는지 확인하려면 이 기능을 일시적으로 비활성화할 수 있습니다. 이를 수행하려면 관리자 권한 PowerShell 프롬프트를 엽니다. 압축 메모리가 활성화되어 있는지 확인합니다.

Get-mmagent

ApplicationLaunchPrefetching :TrueApplicationPreLaunch         :TrueMaxOperationAPIFiles         :512MemoryCompression             :TrueOperationAPI                 :TruePageCombining         

매개변수 MemoryCompression:True 압축 메모리가 활성화되었음을 나타냅니다.

Windows에서 압축 메모리를 비활성화합시다:

Disable-MMAgent –MemoryCompression

그리고 컴퓨터를 다시 시작하십시오.

Restart-Computer

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

압축 메모리를 비활성화한 후 전체 시스템 성능이 변경되었는지 확인합니다. 성능이 향상되면 압축 메모리를 비활성화한 상태로 Windows 10을 그대로 둘 수 있습니다.

경우에 따라 사용자는 다음 작업으로 압축 메모리 문제를 해결하는 것이 좋습니다.

  1. SysMain 비활성화 서비스(예:SuperFetch ) (services.msc -> SysMain -> 시작 유형:비활성화됨). 이렇게 하면 메모리 관리자에서 Windows 10/11 메모리 최적화 프로세스가 비활성화됩니다.
  2. 전체 메모리 진단 비활성화 RunFullMemoryDiagnostic 작업 스케줄러의 작업(작업 스케줄러 -> 작업 스케줄러 라이브러리 -> Microsoft -> Windows -> MemoryDiagnostic -> RunFullMemoryDiagnostic(물리적 메모리 – RAM의 문제 감지 및 완화) -> 비활성화; 메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량
  3. 네트워크 활동 모니터링 드라이버(네트워크 데이터 사용량, NDU)를 비활성화합니다(Windows의 비페이징 메모리 풀에 대한 문서에서 설명).
  4. 바이러스 백신에서 실시간 보호를 비활성화합니다. 압축 메모리에서는 제대로 작동하지 않을 수 있습니다.
  5. DISM 및 SFC를 사용하여 Windows 이미지 시스템 파일을 확인합니다.

이 팁은 압축 메모리 프로세스를 통해 컴퓨터의 높은 부하를 제거하는 데 도움이 될 수 있습니다. 그러나 이렇게 하면 기본 Windows 성능 최적화 기능이 비활성화되어 장치의 전체 성능에 부정적인 영향을 미칠 수 있습니다.

Windows Server 2016/2019/2022 또는 Windows 10에서 메모리 압축을 활성화하는 방법

메모리 압축은 Windows Server의 모든 버전에서 기본적으로 비활성화되어 있습니다.

Get-mmagent 실행 압축 메모리가 비활성화되어 있는지 확인하는 명령입니다. 아래 스크린샷에서 우리는 Windows Server 2022에서 Memory Compression =False의 값을 보여주었습니다. .

메모리 압축 프로세스:Windows 10 및 11의 높은 메모리 및 CPU 사용량

Windows에서 메모리 압축을 사용하려면 다음 조건이 충족되어야 합니다.

  • 페이징 파일을 활성화해야 합니다(최소 크기 16Mb 이상).
  • SysMain 서비스가 실행 중이어야 합니다.
  • Windows 10/11 또는 Windows Server 2016+를 사용 중입니다.

Windows에서 메모리 압축을 활성화하려면 PowerShell 명령을 실행하십시오.

Enable-MMAgent -MemoryCompression

컴퓨터를 재부팅하십시오.

메모리 압축을 활성화하면 다른 SysMain 기능인 페이지 집계가 자동으로 켜집니다. . 이 메모리 관리자 기능은 동일한 내용의 메모리 페이지를 병합하는 데 사용됩니다(일종의 RAM 중복 제거).

일반적으로 Windows 10 및 11의 메모리 압축 기능은 매우 효과적으로 작동하며 개입이 필요하지 않습니다. 메모리 압축으로 인해 컴퓨터에 문제가 발생하면 시스템 설정, 하드웨어 또는 드라이버에 문제가 있을 수 있습니다. 필요한 경우 메모리 압축을 완전히 비활성화할 수 있습니다.