프로파일 링 보고서
프로파일 링 보고서 작성
프로세스 당 각 프로파일 링 세션이 끝날 때 프로파일 링 보고서가 생성됩니다 (katanaBin 대 renderboot(예 : 런타임 인스턴스 당) 호출하는 렌더링 Katana 예를 들어, 스레드마다 하나의 런타임을 인스턴스화하여 각각 다른 보고서를 생성하는 등 여러 스레드에서 절차 적. 각 보고서는 두 개의 파일로 구성됩니다.
1. | ㅏ .dot 프로파일 링 세션 종료시 Op 트리가있는 그래프가 포함 된 파일. |
2. | ㅏ .csv 기록 된 요리 시간을 표 형식으로 포함하는 파일. |
프로필 보고서는 기본적으로 Katana 세션의 임시 디렉토리 및 선택적으로 --profiling-dir 명령 줄 옵션. 예를 들면 다음과 같습니다.
./katana --profile --profiling-dir=/tmp/katana_profiling
보고서 이름은 다음 형식을 따릅니다.
Profiling__PID[P]__Runtime[R]__[YYYY]-[MM]-[DD]__[hh]-[mm]-[ss].csv
Profiling__PID[P]__Runtime[R]__[YYYY]-[MM]-[DD]__[hh]-[mm]-[ss].dot
어느 P 보고서를 생성 한 프로세스의 프로세스 ID R 런타임 인스턴스를 식별하는 숫자입니다. 여러 런타임을 인스턴스화하는 멀티 스레드 렌더에는 P ...에 대한 katanaBin 그리고 또 다른 renderboot 후자에서 하나 R 렌더링시 생성 된 런타임 인스턴스 당프로파일 링 세션이 종료 된 날짜 및 시간이 파일 이름에 추가됩니다.
그만큼 .dot 예를 들어, Graphviz가 필요한 다음 명령을 사용하여 파일을 PDF 문서로 변환 할 수 있습니다.
dot [DOT FILE] -Tpdf > [OUTPUT PDF FILE]
프로파일 링 보고서 분석
그만큼 .csv (쉼표로 구분 된 값) 파일에는 집계 된 조리 시간 및 조리 횟수가 포함됩니다. 스프레드 시트 응용 프로그램이나 다른보고 도구로 직접 읽을 수 있습니다. 각 항목 (행)에는 다음 값 (열)이 포함됩니다.
1. | OpId -Op 인스턴스의 정수 ID (또는 호출하는 경우 Op 인스턴스의 경우) IsExecOp 이다 true). |
2. | OpType -Op 유형 문자열 (예 : "AttributeSet") |
3. | IsExecOp -항목이 다음을 사용하여 호출 된 Op를 참조하는지 여부를 지정합니다. execOp() (true 또는 false). |
4. | Location -쿠킹 된 장면 그래프 위치의 경로 |
5. | TotalTime(usecs) -Op 인스턴스가 성공적으로 요리하는 데 소요 한 총 시간 Location (마이크로 초). |
6. | AbortTime(usecs) -Op 인스턴스가 중단 된 요리사에서 보낸 총 시간 Location (마이크로 초). |
7. | TotalCount -Op의 요리사 수 Location. |
8. | AbortCount -Op의 중단 된 요리사 수 Location. |
에 대한 항목 IsExecOp 이다 true 호출에 의해 호출하는 Op에 의해 명시 적으로 조리 된 Op의 시간을 나타냅니다. execOp(). 이 경우 OpId 호출하는 Op 인스턴스에 해당하는 반면 opType 호출 된 Op의 유형에 해당합니다.
노트 : 출품작에 대해보고 된 시간 IsExecOp 이다 true 호출 Op에 대한 항목에도 포함됩니다. 따라서 세션 중 총 요리 시간은 모든 항목에 대한 요리 시간의 합입니다. IsExecOp 이다 false.
예를 들어 Op A ( IsExecOp 이다 false) 전화 execOp() Op B에서 execOp() Op C에서 TotalTime Op A의 경우 Op B의 경우보다 엄격히 큽니다. Op C의 경우보다 훨씬 큽니다. 이러한 Ops는 모두 동일한 것으로보고됩니다. OpID: Op A의 것
노트 : 중단 시간은 Geolib3에서 장면 확장의 일반적인 구성 요소이지만 좋은 Op-writing 사례를 통해 최소화됩니다. 자세한 내용은 Op API.
현재 Geolib3 Runtime은 Ops와 해당 프로젝트 노드 사이의 맵핑에 대한 지식이 없습니다. 그러나 .dot 파일로 생성 된 그래프는 프로파일 링 세션이 종료 될 때 런타임의 Op 트리 구조를 보여 주며 Ops를 노드에 일치시키는 데 도움이 될 수 있습니다. 단일 세션 내에서 별개의 또는 변경된 Op 트리의 쿠킹 프로파일 링은 유용성이 떨어질 수 있으며, 아마도 용도가 다른 Op 인스턴스에서 집계가 잘못 될 수 있기 때문에 유효하지 않은 결과 일 수 있습니다.
Op 트리는 노드 그래프와 다른 UI 요소의 모든 암시 적 리졸버, 대화식 렌더 필터 및 터미널 Ops에서 직접 작성됩니다. 일부 노드는 여러 개의 Op를 생성합니다. OpId 물론 그래프의 값은 각각의 값에 해당합니다. .csv 파일.
로드 할 때 .csv 스프레드 시트의 파일을 사용하면 값을 쉽게 필터링, 정렬, 집계 및 합계 할 수 있습니다. 평균 시간은 시간을 요리사 수로 나누어 계산할 수 있습니다. 일반적인 스프레드 시트 소프트웨어에 완전히로드되지 않을 수있는 매우 큰 보고서 (수백만 항목까지)를 생성 할 수 있습니다. 이러한 경우 .csv 형식은 예를 들어 위치 또는 Op 유형별로 값을 집계하는 스크립트 또는 프로그램에 의해 쉽게 구문 분석됩니다.
도움이되지 않은 죄송합니다
왜 도움이되지 않습니까? (해당되는 모든 것을 체크하세요)
의견을 보내 주셔서 감사합니다.
찾고있는 것을 찾을 수 없거나 워크 플로에 대한 질문이있는 경우 시도해보십시오 파운드리 지원.
학습 내용을 개선 할 수있는 방법에 대한 의견이 있으시면 아래 버튼을 사용하여 설명서 팀에 이메일을 보내십시오.
의견을 보내 주셔서 감사합니다.