Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

2.13. valgrind

Valgrind는 애플리케이션 성능을 개선하는 데 도움이 되는 여러 탐지 및 프로파일링 도구를 제공합니다. 이러한 툴은 메모리 및 스레드 관련 오류와 힙, 스택, 배열 오버런을 감지하여 애플리케이션 코드에서 오류를 쉽게 찾고 수정할 수 있습니다. 또한 캐시, 힙 및 분기 예측 기능을 프로파일링하여 애플리케이션 속도를 높이고 메모리 사용량을 최소화할 수 있는 요인을 식별할 수도 있습니다.
Valgrind는 합성 CPU에서 애플리케이션을 실행하고 실행 시 기존 애플리케이션 코드를 조정하여 애플리케이션을 분석합니다. 그런 다음 애플리케이션 실행과 관련된 각 프로세스를 사용자 지정 파일, 파일 설명자 또는 네트워크 소켓에 명확하게 식별하는 설명을 출력합니다. 조정된 코드를 실행하는 데는 일반 실행보다 4~50배 더 오래 걸릴 수 있습니다.
Valgrind는 다시 컴파일하지 않고도 애플리케이션에서 그대로 사용할 수 있습니다. 그러나 Valgrind는 디버깅 정보를 사용하여 코드의 문제를 파악하고 있기 때문에 디버깅 정보를 사용하여 애플리케이션 및 지원 라이브러리를 컴파일하지 않은 경우 Red Hat은 이러한 정보를 포함하도록 다시 컴파일할 것을 권장합니다.
Valgrind는 또한 GNU 프로젝트 디버그기(gdb)와 통합되어 디버깅 효율성을 개선합니다.
Valgrind 및 해당 하위 툴은 메모리 프로파일링에 유용합니다. 시스템 메모리에 Valgrind를 사용하는 방법에 대한 자세한 내용은 7.2.2절. “Valgrind를 사용하여 애플리케이션 메모리 사용량 프로파일링” 을 참조하십시오.
Valgrind 사용에 대한 자세한 내용은 도움말 페이지를 참조하십시오.
$ man valgrind
valgrind 패키지가 설치된 경우 관련 문서는 /usr/share/doc/valgrind-버전에서 찾을 수 있습니다.