3D 파이프라인의 GPU 애플리케이션
약 5~6년 전에 우리는 많은 사람들이 여전히 GPU가 더 중요한지 CPU가 더 중요한지, 파이프라인에서 GPU를 사용해야 하는지 여부에 대해 의구심을 가지고 있다고 믿었습니다. 그 당시 GPU는 그다지 강력하지 않았고 GPU 집약적 소프트웨어의 개발은 미미했습니다. 그러나 지금 당장 GPU에 대해 여전히 확신이 서지 않는다면 분명히 뒤처지고 있는 것입니다. GPU는 더 이상 게임만을 위한 것이 아니라 3D 파이프라인의 여러 단계에서 새로운 애플리케이션과 가능성을 열었습니다. 이에 대해 자세히 알려드리겠습니다.
GPU 란 무엇입니까?
GPU는 원래 그래픽 렌더링을 가속화하도록 설계된 특수 프로세서인 Graphics Processing Unit의 약자입니다.
처음에는 정보를 이미지로 변환하는 것이 CPU의 역할입니다. 그러나 CPU는 처리해야 할 의무가 많고 이러한 종류의 작업을 수행하는 데 탁월하지 않기 때문에 그래픽 가속기는 CPU가 수행하는 일부 특수 작업을 처리하도록 만들어졌습니다.
GPU는 이제 CPU에서 작업을 인계할 만큼 충분히 강력합니다. 하나의 GPU는 이제 복잡한 3D 그래픽을 처리하는 속도가 매우 빠릅니다. GPU는 또한 많은 데이터를 동시에 조작하는 것과 관련된 다른 프로세스를 효율적으로 실행할 수 있으므로 기계 학습, 비디오 편집 및 게임 응용 프로그램과 같은 일부 응용 프로그램에 유용합니다.
3D 파이프라인의 일반적인 단계는 무엇입니까?
3D 파이프라인의 일반적인 단계는 모델링, 레이아웃 및 애니메이션, 내보내기로 구성됩니다. 그러나 파이프라인을 자세히 살펴보면 다음을 포함한 개별 단계가 있음을 알 수 있습니다.
- 스토리보드 구상 및 제작.
- 모델링.
- 텍스처링, 리깅 및 애니메이션.
- 카메라 조명 및 설정.
- 표현.
- 합성 및 VFX.
- 음악, 폴리 및 편집.
- 최종 출력.
3D 파이프라인의 GPU 애플리케이션
사전 시각화를 위한 실시간 렌더링
위에서 말했듯이 GPU는 3D 이미지를 처리하는 작업을 수행합니다. 따라서 표시되는 이미지와 관련된 모든 작업에는 GPU 전원이 필요합니다.
예를 들어 모델링/조형을 할 때 CPU가 주로 포인트, 모서리 등을 만드는 작업을 하지만 실제로 작업하면서 만든 모델을 화면에서 실시간으로 보는 것은 GPU입니다. 그것은 그것을 렌더링합니다. 뷰포트에 표시되는 모델의 응답성과 속도는 GPU에 의해 결정됩니다.
물론 다른 단계에서도 GPU가 필요합니다. 단 1%만 있어도 모델에서 변경한 모든 내용을 볼 수 있습니다.
뷰포트의 텍스처링 및 응답성
3D에서 개체를 생성하면 뷰포트에 기본 회색이 표시됩니다. 3D 오브젝트에 색상 및 표면 속성을 적용하지 않았기 때문입니다. 3D 모델을 재료, 조명 효과 및 디테일로 감싸는 과정이 3D 텍스처링입니다. VRAM이 많은 고품질 GPU는 큰 텍스처를 처리하고 밉 매핑을 위한 더 작은 버전의 텍스처를 생성할 수 있습니다. 화면에 표시되는 텍스처뿐만 아니라 표시될 수 있는 모든 텍스처에는 GPU가 필요합니다. PC가 새 텍스처를 로드해야 하기 때문에 카메라를 돌리고 지연이 발생한다고 상상해 보십시오. 그런 일이 발생하는 것을 원하지 않을 것입니다.
최신 조명 효과로 더 빨라진 경험
우리 모두 레이 트레이싱에 대해 알고 있습니다. 그것에 대해 듣지 못했다고 말하지 마십시오. Nvidia는 레이 트레이싱 기술을 위한 전용 RTX 시리즈도 보유하고 있습니다. 광선 추적은 광선이 장면 주위를 반사할 때 광선의 경로를 추적하는 프로세스입니다. 인간의 눈이 실제 빛, 그림자, 색상 및 반사를 처리하는 것처럼 컴퓨터가 상호 작용 및 상호 작용을 계산하여 보다 사실적으로 보이는 렌더링된 장면을 생성하는 데 도움이 됩니다.
CPU가 레이 트레이스를 계산할 수 있습니까? 물론 그렇습니다. 하지만 GPU에 비해 매우 느립니다. CPU는 모든 광선을 동시에 계산할 수 없지만 GPU는 쉽게 병렬 처리를 수행할 수 있습니다. 코어 수와 관련이 있습니다. GPU에는 더 많은 코어가 있어 데이터가 무엇이든 상관없이 많은 병렬 데이터 스트림을 동시에 처리할 수 있습니다.
현재 제공되는 가장 높은 코어 수는 AMD의 Threadripper 3990X와 함께 64코어입니다. 그러나 RTX3090에는 10,496개의 코어가 있고 RTX3090Ti에는 10,752개의 코어가 있습니다. 차이점이 보이시나요?
전통적인 렌더링
여기서 할 말이 많지 않다고 생각합니다. GPU 개발자들은 (3D뿐만 아니라 많은 분야에서) 지속적으로 제품을 개선해 왔으며, 3D 산업도 GPU로 전환하는 것을 볼 수 있습니다. 요즘 점점 더 많은 GPU 기반 렌더링 엔진(Octane 및 Redshift 등)이 개발되고 있습니다. 점점 더 많은 CPU 기반 프로그램이 GPU(Arnold, Renderman)를 지원합니다. 아무도 GPU가 CPU보다 훨씬 빠르게 렌더링된다는 사실을 무시할 수 없습니다. 그리고 청중이 가장 빠른 방법으로 많은 디지털 제품에 의해 서비스를 받는 디지털 미디어 붐 시대에 뒤처지고 싶어하는 사람은 없습니다(렌더링이 완료될 때까지 기다리기 위해).
이것은 3D 파이프라인에서 매우 중요한 부분이고 사람들이 GPU가 사용된다고 생각하는 경향이 있는 가장 유명한 부분이기 때문에 더 빠르게 렌더링할 수 있도록 서비스를 제공하는 렌더 팜이 많이 있습니다. 최고의 GPU 렌더 팜 문서에서 최상의 선택을 소개합니다.
시각 효과(VFX)
3D의 VFX는 입자 시뮬레이션, 유체 시뮬레이션, 머리카락 및 털 시뮬레이션, 강체 시뮬레이션 및 연체 시뮬레이션과 같은 많은 시뮬레이션으로 구성됩니다.
GPU는 병렬 작업이기 때문에 GPU에서의 시뮬레이션은 CPU에서보다 빠릅니다. 컴퓨팅 집약적인 코드 부분을 동시에 실행할 수 있으므로 짧은 시간 내에 시뮬레이션을 수행할 수 있습니다.
아래는 6코어 Intel Core i5-9400F CPU와 Nvidia RTX 2060 GPU의 실행 시간을 비교한 시뮬레이션 결과입니다. 요소 수가 증가할수록 GPU와 CPU의 차이가 커집니다. 모든 요소 크기에서 GPU가 더 빠릅니다.
최종 단어
의심의 여지없이 CPU가 중요합니다. 다른 하드웨어에 수행할 작업을 알려줍니다. 그러나 보시다시피 3D 파이프라인에서 GPU의 참여는 중요합니다. 우리가 항상 논의한 것처럼 렌더링/내보내기 단계가 간단할 뿐만 아니라(가장 명확한 응용 프로그램임) 다른 많은 사용 사례를 보게 될 것이며 그 중 일부는 당연하게 받아들여집니다. 3Drenderfarms는 이 기사가 GPU의 역할을 더 중요하게 생각하는 데 도움이 되기를 바랍니다.