2016-07-25 4 views
0

-fprofile-arcs 플래그를 사용하여 코드를 컴파일하면이 코드를 실행 한 후 .gcda 파일이 생성됩니다. -ftest-coverage 플래그와 함께 컴파일 후 .gcno 파일과 함께 실행 된 코드와 횟수에 대한 정보를 얻고 코드 커버리지 보고서를 얻을 수 있습니다.gcda 파일에서 "실행 시간 소비"정보를 얻을 수 있습니까?

.gcna 파일과 비슷한 방식으로 gprof와 유사한 프로파일 정보를 얻을 수 있습니까? 예 : 함수 호출 횟수 및 실행 시간 정보?

답변

0

나는 두려워하지만 여기서 용어를 오판하고 있습니다.

GPROF : 이것은 C/C++ 프로그램 프로파일 러입니다. 누구의 목적은 특정 기능 실행을위한 프로파일 링 정보를 생성하는 것입니다. 기능 정보는 여러 기능 간의 제어 흐름과 같은 성능 통계와 상위 기능 및 하위 기능이 소비하는 전파 시간과의 관계로 구성됩니다. 따라서 여기서 초점은 프로그램에서 성능 저하 점을 찾는 것입니다.

경우, 같은

gcov는 : 그것은 C/C++ 범위 분석 도구입니다. 누구의 목적은 각 진술, 지점 및 블록에 대한 실행 집계를 얻는 것입니다. 그래서 여기서 초점은 단지 커버리지 통계를 얻는 것입니다.

따라서 이야기의 도덕은이 두 도구가 삶의 목적이 다르다는 것입니다. ;)

많은 시나리오에서 한계가 있지만 gprof로 이동할 수있는 정보를 모두 얻으려면 메소드 수준의 세분성으로 범위 정보를 얻을 수 있습니다.