한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

게임 렉 백서 › L2 클라이언트 OS·기기

클라이언트 메모리 부족·스왑 Paging / swap on client

원인 ID co-swap · 주 담당 외부·외부 · 함께 게임개발팀·클라이언트 개발

그림과 실험이 있는 원본 카드로 열기 →

브라우저 탭 수십 개와 게임을 함께 켜 두면 OS가 게임 메모리 일부를 디스크로 내보냅니다.

왜 전체 램이 부족해짐 → 그러면 OS가 당장 안 쓰는 게임 메모리를 디스크로 옮김 → 화면에서는 그 부분을 다시 쓰는 순간 저장장치에 따라 수십~수백 ms 멈춤

증상
멈춤, 뚝뚝 끊김
요인
정체
누가 겪나
나만
언제
이동 중·지역 전환 때, 가끔 무작위로
담당
주 담당 외부·외부 · 함께 게임개발팀·클라이언트 개발
게임개발팀 할 일
메모리 사용량 줄이기, 남은 메모리가 적으면 경고 표시.
외부 할 일
유저에게 최소 사양 안내, 게임 중 다른 프로그램(브라우저 탭 등) 종료 안내.
그래프에서는
가끔 무작위로 튐 · 하드 페이지 폴트, 메모리 사용량
확인할 곳
성능 모니터의 Memory\Pages Input/sec(하드 페이지 폴트를 해결하려고 디스크에서 읽은 페이지 수)와 작업 관리자 성능 탭의 메모리 사용량·커밋을 프레임 시간과 함께 기록
이러면 맞음
멈춘 순간 Pages Input/sec가 솟고 메모리가 거의 꽉 차 있음. 브라우저 등 다른 프로그램을 닫으면 사라짐
이러면 아님
메모리에 여유가 있고 Pages Input/sec가 조용하면 “메인 스레드 동기 로딩·셰이더 컴파일”이나 “저장장치가 느려 에셋 스트리밍이 밀림”
확인 수단
유저 쪽 환경에서 확인

출처

  1. Introduction to the page file Microsoft
    페이지 파일은 디스크에 있는 파일로, 자주 안 쓰는 수정된 메모리 페이지를 램에서 내보내는 데 씀
  2. Working Set Microsoft
    램에 없는 페이지를 건드리면 페이지 폴트, 하드 폴트는 페이지 파일 등 디스크에서 읽어 와야 해결됨
  3. Chapter 12 - Detecting Memory Bottlenecks Microsoft
    Memory\Pages Input/sec: 페이지 폴트를 해결하려고 디스크에서 읽은 페이지 수(하드 페이지 폴트)

함께 보면 좋은 원인

같은 층: L2 클라이언트 OS·기기

같은 증상(멈춤)의 다른 층 원인

그림과 실험이 있는 원본 카드 보기