나는 비디오 게임을 작성하고 perf(1)
있으며불꽃 그래프좋은 "전체 프로그램 성능" 정보를 얻으세요.
그러나 나는 또한 너무 오래 걸리는 특정 프레임과 같은 특정 최악의 경우를 조사하고 싶었습니다. perf를 사용하여 이러한 종류의 측정을 수행할 수 있는 좋은 방법이 있습니까?
다시 말하지만, 전체 처리량뿐만 아니라 전송되는 특정 느린 응답을 조사하려는 웹 서버 컨텍스트에서 이를 상상할 수 있습니다.
perf record
다음과 같은 아이디어가 있지만 더 잘할 수 있을지 궁금합니다. 이벤트의 전체 목록을 사용 및 덤프하고 perf script
게임에서 느린 프레임의 시작/종료 타임스탬프를 덤프합니다. 그런 다음 일부 스크립트를 사용하여 타임스탬프를 상호 연결하고 해당 기간과 관련된 성능 이벤트만 확인합니다. 작동하는 것처럼 보이지만 타임스탬프에 따라 약간 취약합니다.
perf.dat
매 프레임마다 파일을 생성하는 것처럼 "성능 이벤트 로깅을 즉시 시작"하고 "즉시 로깅을 중지"하는 호출을 내 코드에 추가할 수 있는 방법이 있을까요 ?
아니면 내 프로그램 실행에서 덤프된 전체 이벤트 로그에 포함될 "프레임 시작, 프레임 끝"과 같은 일부 특수 이벤트를 출력할 수 있습니까? 이렇게 하면 모든 것이 perf.dat 파일에 있으므로 두 개의 서로 다른 출력 파일을 연관시킬 필요가 없습니다.
아니면 다른 아이디어가 있나요?