Q100225: Nuke 스크립트를 프로파일링하여 성능 향상

팔로우

요약

이 문서에서는 스크립트 속도 저하의 원인을 식별하려고 할 때 Nuke 노드의 성능을 테스트하는 데 사용할 수 있는 두 가지 대체 방법에 대해 설명합니다.

추가 정보

재생/렌더링 시간을 늦추는 Nuke 스크립트 부분을 찾는 것은 어려울 수 있습니다.

이 프로세스를 용이하게 하기 위해 Nuke 는 스크립트에서 노드의 성능을 프로파일링하는 두 가지 대체 방법인 성능 프로파일링 모드프로파일 노드를 제공합니다.

두 가지 방법 모두 특히 느린 노드를 분리하고 워크플로를 최적화하는 데 사용할 수 있는 분석을 제공합니다. 프로파일링될 때 노드는 녹색에서 빨간색으로 색상으로 구분되며 빨간색은 느린 노드입니다.

아래 예에서 Defocus는 느린 노드인 반면 Merge는 전혀 작동하지 않는 것을 볼 수 있습니다.


성능 프로파일링 모드

성능 프로파일링 모드를 설정하면 각 노드의 분석과 노드 자체의 다양한 메트릭을 볼 수 있습니다.
성능 프로파일링 모드에서 Nuke 시작

실행하려면 Nuke 성능 프로파일 링 모드에서 당신은 시작할 때 -P 플래그를 사용할 필요가 Nuke . 이 작업을 수행하는 방법에 대한 지침 목록은 각 운영 체제에 대한 아래에서 찾을 수 있습니다.
윈도우 :
명령 프롬프트 창을 열고 다음 명령을 실행합니다.

리눅스:
터미널을 열고 다음 명령을 실행합니다.

/usr/local/Nuke12.2v3/Nuke12.2 -P

참고: 이 지침은 기본 위치에 Nuke 설치한 것을 기반으로 합니다. 그렇지 않은 경우 사용자 지정 설치 위치에서 실행하려면 그에 따라 명령을 수정해야 합니다.
성능 프로파일링 모드에서 보고된 정보
Nuke 가 성능 프로파일링 모드에서 시작되면 각 노드는 다음 정보를 보고합니다.
CPU - CPU가 처리 코드를 실행하는 데 사용한 시간(마이크로초)으로 모든 CPU 스레드에 대해 집계됩니다.
예를 들어, 다중 스레드 처리의 경우 이는 일반적으로 실제 시간보다 훨씬 큽니다. 스레드당 평균 CPU 시간(CPU를 사용된 스레드 수로 나눈 값)이 실제 시간보다 훨씬 짧으면 CPU 스레드가 코드를 실행하지 않고 잠금을 기다리는 데 많은 시간을 소비했음을 의미하며, 이는 성능을 나타낼 수 있습니다. 문제.

참고 : Mac OS X 및 Windows에서 CPU 시간은 현재 정확하지 않습니다. Mac OS X에서 CPU 값은 항상 벽 시간과 유사합니다.

wall - 벽에 있는 시계로 측정한 시간 - 처리가 완료될 때까지 기다려야 하는 실제 시간. 벽 시간도 마이크로초 단위로 측정됩니다.

ops - 노드에서 호출된 연산자의 수입니다. 운영자는 특정 작업을 수행하는 Nuke 노드에는 하나 이상의 작업이 포함될 수 있습니다.
예를 들어 노드가 무언가의 크기를 조정해야 할 때 동일한 작업을 수행하기 위해 자체 구현보다는 Transform 작업을 사용합니다.

메모리 - 노드에서 사용하는 시스템 메모리의 총량입니다.
Nuke 실행하면 아래와 같이 Nuke UI의 성능 메뉴에서 타이머를 재설정, 시작 및 중지할 수 있습니다.

프로필 노드

Nuke 11.1 릴리스(이상) 내에서 프로필 노드를 도입했습니다. 이 노드를 통해 사용자는 프로필 노드가 배치된 지점에서 노드 트리의 메트릭을 계산할 수 있습니다.

프로파일 노드를 노드 그래프에 배치하고 선택하면 프로파일 메뉴가 열립니다.


프로파일을 실행하려면 선택한 프레임 범위와 데이터 유형을 입력한 다음 '프로파일'을 클릭하십시오.

데이터가 수집되면 프로필 메뉴 내에서 데이터가 생성되어 사용률에 따라 차트에 표시됩니다.

참고: 이 데이터 필터링에 대한 자세한 내용은 프로필 데이터 필터링 문서를 참조하십시오.

방법의 차이점

프로필 노드는 차트 및 기타 GUI 기반 진단과 같은 몇 가지 새로운 기능을 제공하지만 성능 프로필 모드에서 사용하는 타이머 기반 분석이 아닌 백분율 기반 분석을 기반으로 성능을 계산합니다.


추가 정보
두 방법에 대한 자세한 내용은 성능 프로파일링 또는 프로필 노드 설명서에서 각각 찾을 수 있습니다.

    우리는 문제로 불편을 끼쳐 드려 죄송합니다

    이유를 알려주세요