Q100380: 이미지를 스캔라인으로 읽는 것과 네트워크 액세스에 미치는 영향

팔로우

요약

이 기사에서는 Nuke 스캔라인 기반 이미지 아키텍처가 이미지 데이터 처리 및 읽기 측면에서 어떻게 작동하는지, 네트워크를 통해 파일을 읽을 때 성능에 어떤 영향을 미칠 수 있는지, 그리고 Nuke 의 현지화 기능을 활용하여 성능을 향상시킬 수 있는지 설명합니다.

추가 정보

Nuke 는 스캔라인 이미지 합성 시스템으로, 이미지 끝에 도달할 때까지 한 번에 한 픽셀씩 이미지를 처리하고 읽습니다. (이러한 스캔라인을 NDK 플러그인 개발 용어에서는 행이라고 합니다.)

예를 들어, 뷰어가 640x480 해상도 이미지를 표시하는 경우 이를 480개 행으로 분할하고 한 번에 한 행씩 요청하고 필요한 처리를 적용하여 표시합니다. 전체 조리개 Super 4K 이미지(4096x3112)를 표시하는 경우 3112개의 행 요청이 표시됩니다.

스캔라인 렌더링에는 두 가지 큰 장점이 있습니다. 첫째, 행 크기 청크로 이미지를 처리한다는 것은 전체 이미지가 동시에 컴퓨터 메모리에 상주할 필요가 없으므로 Nuke 거의 무제한의 이미지 크기 범위를 처리할 수 있다는 것을 의미합니다. 둘째, 눈에 보이는 픽셀이 처리되는 횟수를 최소한으로 유지합니다. 이 동작은 Nuke 시스템 리소스를 최대한 활용할 수 있도록 뛰어난 확장 가능한 성능을 제공하도록 설계되었습니다.

Nuke 의 아키텍처에 대한 자세한 내용과 뷰어가 데이터를 읽는 방법에 대한 광범위한 설명은 NDK 개발자 가이드 에서 찾을 수 있습니다.

Nuke 13.2부터 소프트웨어는 이제 하향식 방법에서 렌더링하는 기능을 제공합니다. 여기서 입력 데이터가 필요하지 않은 그래프의 모든 노드를 먼저 렌더링하여 스크립트 출력 속도를 높일 수 있습니다. 하향식의 역할에 대한 더 자세한 접근 방식을 보려면 다음 정보를 검토하십시오. https://learn.foundry.com/ nuke /developers/latest/ndkdevguide/2d/architecture.html#top-down-rendering

네트워크에서 읽기

Nuke 의 스캔라인 아키텍처가 파일을 읽는 방식은 네트워크를 통해 파일을 읽을 때 성능에 영향을 미칠 수 있습니다.

I/O(입/출력) 파일 액세스 요청을 통해 이미지를 읽어 소스 파일에서 요청자 애플리케이션(Nuke)으로 데이터를 가져옵니다. 소스 이미지가 요청을 보내는 머신의 로컬인 경우 I/O 요청이 빨라집니다. 특히 스토리지가 빠른 경우 더욱 그렇습니다. 그러나 소스 이미지가 네트워크 스토리지 시스템에 있는 경우 네트워크 읽기/쓰기 속도 및 대역폭은 파일 읽기 성능에 추가 대기 시간을 추가할 수 있습니다. 예를 들어 네트워크에서 Nuke 로 4k(4096x3112) 이미지를 읽으려면 3112개의 네트워크 액세스 요청이 필요합니다. 네트워크 파일 I/O 요청 수는 네트워크 대역폭의 영향을 받을 수 있으며 각 요청은 네트워크 읽기/쓰기 속도의 영향을 받습니다.

참고: 이미지 데이터를 검색하기 위해 다수의 작은 읽기 크기를 처리할 때 제대로 확장되지 않는 네트워크 스토리지 시스템으로 작업하는 경우 높은 파일 I/O 요청으로 인해 네트워크 지연 시간이 발생할 수 있습니다. Nuke 네트워크 대역폭에 의해 제한되어야 합니다.

이 문서에 설명된 단계에 따라 네트워크 저장소 시스템의 읽기/쓰기 속도를 테스트할 수 있습니다. Q100296: 네트워크 속도를 확인하는 방법

현지화 기능을 사용하면 네트워크에서 영상 작업을 할 때 Nuke 의 대화형 성능을 향상시킬 수 있습니다. 이에 대한 자세한 내용은 아래에 있습니다.

EXR 이미지 및 압축 유형 읽기

EXR 이미지 유형은 Nuke 이미지 유형을 한 번에 한 행씩 처리하는 스캔라인으로 읽는 위 규칙의 예외입니다. EXR 이미지의 압축은 Nuke 스캔라인에 개별적으로 로드하기 전에 한 번에 압축을 풀어야 하는 데이터의 양을 결정합니다. ZIP(1)은 기본적으로 읽고 쓰는 가장 빠른 압축입니다. Nuke 읽기 시작하기 전에 더 큰 데이터 청크가 풀릴 때까지 기다리지 않고 스캔라인 안팎으로 직접 압축을 풀 수 있기 때문입니다. 하지만 압축되지 않은 파일은 ZIP(1)보다 더 빠르게 읽혀집니다.

EXR 이미지의 특정 압축 옵션의 경우 Nuke 한 번에 1개의 스캔라인이 아닌 더 큰 청크를 읽습니다. ZIP(16), PIZ, PXR24, B44, B44A 압축 옵션은 한 번에 64개의 스캔라인 블록으로 해석되고 읽혀 이미지에 대한 전체 액세스를 줄입니다.

Nuke 사용하는 EXR 압축 유형 목록은 Nuke 문서에 나열되어 있습니다.

전체 입력 이미지를 검색하기 위한 네트워크 액세스가 우려되는 경우 위의 압축 중 하나로 압축된 EXR 데이터를 사용하면 전체 네트워크 액세스가 최소화될 수 있습니다. 그러나 이는 사용된 네트워크 스토리지 시스템의 읽기/쓰기 속도에 따라 달라지며, 큰 해상도를 처리할 때 여전히 속도 저하가 나타날 수 있습니다.

현지화

네트워크를 통해 파일을 읽을 때 발생하는 성능 저하에 대응하는 한 가지 방법은 Nuke 의 현지화 기능을 사용하여 Nuke GUI 세션에서 파일 I/O 속도를 높이고 네트워크 상호 작용을 줄이는 것입니다.

현지화가 활성화되면 Nuke 스크립트가 읽는 이미지의 로컬 캐시를 저장합니다. 로컬 캐시를 생성하기 위해 복사된 파일은 먼저 네트워크 위치에서 스캔라인으로 읽혀지지만 그 후에는 원본이 아닌 로컬 버전을 사용합니다. Nuke GUI에서 스크립트 작업을 하는 동안 네트워크 파일을 사용할 수 있습니다.

Nuke 스크립트가 다른 사용자나 렌더 팜에 전송될 때 찾을 수 있도록 스크립트 내의 네트워크 파일에 대한 참조를 유지하지만 많은 작은 파일 I/O 요청을 반복적으로 사용하지 않음으로써 네트워크의 부담을 줄입니다. 스크립트 작업을 하면서 네트워크를 통해 이미지 데이터를 읽습니다.

파일 및 미디어 지역화에 대한 자세한 내용은 다음 링크의 온라인 도움말에서 확인할 수 있습니다.

Nuke : 더 나은 성능을 위해 파일 지역화

NukeStudio : 미디어 현지화

추가 도움말

이 문서에 설명된 제안 사항을 사용한 후에도 파일 읽기 및 쓰기 성능 문제가 계속 발생하는 경우 지원 티켓을 열고 발생한 문제와 지금까지 수행한 문제 해결 단계를 알려주십시오.

지원 티켓을 여는 방법에 대한 자세한 내용은 Q100064: 지원 포털 사용 문서를 참조하세요.

실시간 재생에 문제가 있는 경우 다음 문서에서 제공되는 정보를 검토하십시오. Q100297: 실시간 재생 문제 해결

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

    이유를 알려주세요