37장. 메모리 액세스를 최적화하도록 운영 체제 구성

RHEL에 포함된 툴을 사용하여 워크로드 전체에서 메모리 액세스를 최적화하도록 운영 체제를 구성할 수 있습니다.

37.1. 시스템 메모리 문제 모니터링 및 진단 툴

시스템 성능을 모니터링하고 시스템 메모리와 관련된 성능 문제를 진단하기 위해 Red Hat Enterprise Linux 9에서 다음 툴을 사용할 수 있습니다.

  • procps-ng 패키지에서 제공하는 vmstat 툴은 시스템 프로세스, 메모리, 페이징, 블록 I/O, 트랩, 디스크 및 CPU 활동에 대한 보고서를 표시합니다. 머신이 마지막으로 켜졌거나 이전 보고서 이후 이러한 이벤트의 평균에 대한 즉각적인 보고서를 제공합니다.
  • Valgrind 프레임워크는 사용자 공간 바이너리에 계측을 제공합니다. dnf install valgrind 명령을 사용하여 이 툴을 설치합니다. 여기에는 다음과 같은 프로그램 성능을 프로파일링하고 분석하는 데 사용할 수 있는 여러 도구가 포함되어 있습니다.

    • Memcheck 옵션은 기본 valgrind 툴입니다. 다음과 같이 탐지하고 진단하기 어려울 수 있는 여러 메모리 오류를 감지하고 보고합니다.

      • 발생하지 않아야 하는 메모리 액세스
      • 정의되지 않았거나 초기화되지 않은 값 사용
      • 힙 메모리가 잘못 해제되었습니다.
      • 포인터 중복
      • 메모리 누수

        참고

        Memcheck는 이러한 오류만 보고할 수 있으며 이러한 오류가 발생하지 않도록 방지할 수 없습니다. 그러나 memcheck 는 오류가 발생하기 직전에 오류 메시지를 기록합니다.

    • cachegrind 옵션은 시스템의 캐시 계층 및 분기 예측자와 애플리케이션 상호 작용을 시뮬레이션합니다. 애플리케이션 실행 기간에 대한 통계를 수집하고 콘솔에 요약을 출력합니다.
    • 이 옵션은 지정된 애플리케이션에서 사용하는 힙 공간을 측정합니다. 이 명령은 하우스키핑 및 정렬 목적으로 할당된 추가 공간과 유용한 공간을 모두 측정합니다.

추가 리소스

  • vmstat(8)valgrind(1) 매뉴얼 페이지
  • /usr/share/doc/valgrind-version/valgrind_ECDHE.pdf 파일