CPU와 GPU 렌더링: 어느 것이 더 좋은가?
컴퓨터 그래픽과 렌더링 분야에서 CPU와 GPU 렌더링 중에서 선택하는 것에 대한 혼란과 오해가 많습니다. 눈길을 끄는 헤드라인과 산업 성장의 대부분은 속도 때문에 GPU 렌더링을 중심으로 전개됩니다. 아티스트는 가능한 한 빨리 렌더링을 원하기 때문에 이는 당연한 일입니다.
우리는 종종 “CPU 렌더링이 여전히 실행 가능한가?”라는 질문을 받습니다. 그러나 차이점은 훨씬 더 미묘합니다. 이 선택은 렌더링의 속도, 효율성 및 정밀도를 결정하는 데 중요한 역할을 합니다. 이러한 컴퓨팅 강국은 각각 고유한 장점과 한계를 가지고 있습니다.
3D 렌더링의 핵심 측면 중 일부를 검토하고 CPU 또는 GPU 선택이 렌더링 프로세스의 다양한 측면에 어떤 영향을 미치는지 살펴보겠습니다.
다재다능함: CPU와 GPU 렌더링
CPU는 컴퓨팅의 주력입니다. CPU는 수십 년 동안 컴퓨터의 기본 컴퓨팅 장치였습니다. 따라서 광범위한 작업을 처리하도록 설계되었으며, 대부분의 소프트웨어는 CPU의 강점과 약점을 중심으로 설계되었습니다. CPU는 오랫동안 렌더링의 기본 옵션이었고, 사실상 모든 렌더러는 더 많은 코어나 여러 CPU로 매우 잘 확장됩니다. 렌더링 외에도 많은 3D 애플리케이션은 CPU를 물리 시뮬레이션에 사용하여 CPU에서 무거운 장면을 렌더링하는 것 사이에 시너지를 만듭니다.
아티스트가 동시에 여러 개의 까다로운 프로그램을 여는 것도 매우 일반적입니다. 일반적으로 CPU 코어가 많을수록 각 애플리케이션이 더 적은 코어 수 CPU의 리소스를 놓고 경쟁하지 않고도 몇 개의 코어를 충분히 활용할 수 있으므로 더 매끄러운 경험이 가능합니다.
반면 GPU는 거의 전적으로 그래픽 계산을 위해 설계되었습니다. 이 분야에서 탁월하지만 3D 전문가에게는 다른 용도가 많지 않습니다. Cinema 4D와 같은 일부 애플리케이션은 물리 시뮬레이션에 GPU를 사용하기 시작했지만, 이는 현재로서는 일반적이지 않습니다.
속도: CPU와 GPU 렌더링
GPU는 3D 계산과 관련하여 순수한 속도를 위해 설계되었습니다. GPU는 병렬 처리를 통해 여러 계산을 동시에 수행할 수 있습니다. 특히 실시간 애플리케이션에서 렌더링 작업에서 GPU는 그 위력을 보여줍니다. 3D 장면에서 렌더러는 수백만 개의 정점, 광선, 텍스처 등의 위치를 계산해야 합니다. 이러한 모든 특정 계산은 순차적으로 수행할 필요가 없으며 병렬로 또는 어떤 순서로든 수행할 수 있습니다. 최신 GPU는 수천 개의 코어를 가질 수 있지만(이 글을 쓰는 시점에서 RTX 6000 Ada는 18,176개의 CUDA 코어를 가짐) 최고급 CPU는 64개에 불과합니다. CPU 코어는 일반적으로 GPU보다 훨씬 빠르지만 차이를 상쇄하기에 충분하지 않습니다.
CPU와 GPU 렌더링: 어느 것이 더 좋은가? 이미지 출처: NVIDIA
GPU는 또한 NVIDIA가 그래픽 계산을 위해 특별히 개발한 CUDA 프로그래밍 라이브러리의 이점을 얻습니다. 이 사용 사례에 맞게 특별히 설계된 하드웨어와 소프트웨어의 조합으로 인해 매우 빠른 렌더링 옵션이 가능해졌습니다. 이러한 GPU 렌더링 엔진 중 다수는 기존 방식대로 더 깨끗한 이미지를 만들기 위해 더 많은 광선을 투사하는 데 훨씬 더 오랜 시간을 소모하지 않고도 NVIDIA의 AI 노이즈 제거를 사용하여 렌더링을 정리하고 렌더링을 더욱 빠르게 만듭니다. 어떤 사람들은 이 AI 노이즈 제거의 결과를 좋아하지 않을 수 있지만, 얻을 수 있는 균형이 있습니다.
정밀도와 정확도: CPU와 GPU 렌더링
최고의 정밀도가 필요할 때 CPU는 타의 추종을 불허합니다. CPU는 과학 및 엔지니어링 렌더링과 같이 복잡한 계산과 수치 시뮬레이션을 요구하는 작업에서 탁월합니다. 유체 역학 시뮬레이션, 구조 분석 또는 분자 모델링의 응용 프로그램을 생각해 보세요. 이는 CPU가 이중 정밀도 부동 소수점 계산 또는 FP64를 더 잘 지원하기 때문입니다. 최신 GPU는 이 측면에서 개선되고 있으며 일부 전용 컴퓨팅 카드는 CPU를 앞지를 수 있습니다. 전반적으로 CPU 렌더링은 여전히 선두를 달리고 있지만 GPU 렌더링이 따라잡고 있습니다.
메모리 용량: CPU와 GPU 렌더링
CPU는 시스템의 RAM을 사용하여 응용 프로그램 및 장면 데이터를 저장합니다. 이를 통해 메모리 제약 없이 방대한 데이터 세트와 광범위한 장면을 처리할 수 있습니다. AMD의 Threadripper Pro 및 Epyc 또는 Intel의 Xeon과 같은 많은 서버 등급 CPU는 최대 2048-4096GB의 RAM을 지원합니다. 그러나 가장 많은 VRAM을 가진 GPU는 여전히 48GB에 불과합니다. 장면 크기와 복잡성이 삼각형 수, 텍스처 크기, 물리 시뮬레이션 등으로 증가함에 따라 GPU는 빠르게 메모리가 부족해져 렌더링 속도가 훨씬 느려지거나 더 나쁜 경우 시스템이 충돌할 수 있습니다. Octane과 같은 많은 GPU 렌더러는 더 작은 VRAM 풀에서 더 큰 장면을 가능하게 하기 위해 이 분야에 많은 노력을 기울이고 있지만 CPU 렌더링은 여전히 방대한 장면에 더 좋습니다.
실시간 렌더링: CPU와 GPU 렌더링
실시간 상호 작용과 몰입형 시각적 경험이 가장 중요할 때 GPU는 확실한 챔피언입니다. 비디오 게임, 가상 현실 시뮬레이션, 건축 워크스루, 대화형 3D 애플리케이션을 생각해 보세요. CPU가 실시간 3D 작업을 할 수 없다는 것은 아닙니다. Zbrush는 수백만 개의 폴리곤으로 모델을 만드는 최고의 3D 조각 애플리케이션이며 거의 전적으로 CPU 기반입니다. 많은 CPU에는 디스플레이 출력이 가능한 통합 GPU 또는 iGPU가 포함되어 있습니다. 그러나 전용 GPU에 비해 전력이 상당히 낮습니다. Unreal이나 Chaos Vantage와 같은 프로그램의 경우 전용 GPU는 더 높은 충실도의 이미지로 좋은 성능을 얻을 수 있는 유일한 방법입니다.
전력 효율성: CPU와 GPU 렌더링
여기서 상황이 약간 흐릿해질 수 있습니다. CPU는 전력 소비로 악명이 높습니다. 이로 인해 렌더링 팜의 에너지 요금이 높아지거나 전력이 제한된 환경에서 렌더링 시간이 길어질 수 있습니다. 몇 개의 시스템을 넘어 확장하려면 충분한 전력을 확보하기 위해 전용 전기 배선이 필요합니다. 전통적으로 하이엔드 CPU는 GPU보다 더 많은 전력을 소모했고 전력 소모도 계속 증가했지만, 최신 GPU의 전력 소모는 CPU에 근접하고 있습니다. 이는 더 이상 CPU에만 국한된 단점이 아닐 수 있습니다.
CPU와 GPU 렌더링: 어느 것이 더 좋은가? 이미지 출처: TechSpot
비용 고려 사항: CPU와 GPU 렌더링
고성능 CPU는 종종 엄청난 가격표와 함께 제공됩니다. 이 글을 쓰는 시점에서 AMD의 Threadripper Pro 5995WX 64코어 CPU의 MSRP는 6,000달러에 가까우며 여전히 마더보드와 나머지 시스템이 필요합니다. 최대 2TB의 RAM을 지원하지만 가격표도 엄청납니다. 사용자가 렌더링 기능을 확장하려면 추가 머신을 구매해야 합니다. 마찬가지로 새 CPU로 업그레이드하려면 새 마더보드와 잠재적으로 새 RAM이 필요할 수 있습니다.
예를 들어, 사용자가 현재 렌더링에 Threadripper Pro 5995WX 64코어 CPU를 사용하고 있고 새로운 Threadripper Pro 7995WX 96코어로 업그레이드하려는 경우, 새로운 CPU뿐만 아니라 새로운 마더보드도 구매해야 합니다. 새로운 CPU는 이전 마더보드에 맞지 않기 때문입니다. 새로운 마더보드는 또한 새로운 DDR5 RAM을 사용하므로 이전 RAM을 재사용할 수 없습니다. 이 업그레이드는 현재 시장 상황에 따라 쉽게 12,000~15,000달러가 넘을 수 있습니다. GPU 렌더링 사용자가 RTX 3090에서 RTX 4090으로 업그레이드하려는 경우 비용은 2,000달러 미만이며 하드웨어를 변경하는 데 몇 분 밖에 걸리지 않습니다.
CPU와 GPU 렌더링: 어느 것이 더 좋은가? 이미지 출처: NVIDIA
폼 팩터: CPU와 GPU 렌더링
많은 사람들이 간과하는 또 다른 고려 사항은 사용 중인 시스템의 폼 팩터입니다. 데스크톱 워크스테이션은 단일 CPU로 제한되며 Threadripper 또는 Xeon과 같이 코어 수가 매우 많은 CPU가 있는 시스템은 일반적으로 매우 큽니다. 누군가가 여러 개의 CPU로 자체 렌더 팜을 만들고 싶다면 여러 개의 대형 데스크톱이 필요할 것입니다. 이것이 렌더 팜이 랙마운트 서버 섀시에 의존하는 이유입니다. 일부 전용 CPU 서버 섀시는 비교적 작은 공간에 4~8개의 CPU를 장착할 수 있습니다. 그런 다음 이러한 서버 여러 개를 함께 쌓을 수 있으며 Deadline 또는 Tractor와 같은 렌더 대기열 관리 소프트웨어가 사용 가능한 CPU에 프레임을 공급합니다.
GPU는 책상에 더 잘 맞는 작은 시스템을 허용하거나 더 큰 데스크톱에서 여러 개의 GPU를 지원하기 때문에 데스크톱으로 제한된 사용자에게 매력적입니다. 이는 아티스트가 작업하는 동안 워크스테이션에서 GPU 렌더링을 사용하여 빠르게 미리 본 다음 최종 픽셀을 위해 장면을 팜으로 보내는 CPU 렌더 팜과 함께 작동할 수 있습니다. 이는 Pixar 및 Dreamworks와 같은 대형 스튜디오에서 가장 일반적인 워크플로였습니다.
렌더링 소프트웨어: CPU와 GPU 렌더링
퍼즐의 마지막 조각은 소프트웨어입니다. 사용할 렌더러를 선택할 때는 위의 모든 요소를 고려하지만 모든 요소를 무시할 수도 있습니다. 예를 들어, 건축 및 제품 시각화에서 Chaos Group의 Corona는 실제 조명을 쉽게 구현하도록 맞춤 제작되어 매우 선호됩니다. 이는 최종 제품을 고객에게 매우 정확하게 표현해야 하기 때문에 중요합니다. 따라서 타겟 렌더러가 Corona라면 위의 고려 사항은 중요하지 않습니다. 한편, 영화 제작에서는 과학적 정확성의 필요성은 믿을 만해 보이는 한 중요하지 않으므로 Octane 및 Redshift와 같은 소프트웨어에서 더 많은 GPU 지원을 찾을 수 있습니다.
V-Ray, Arnold, Renderman과 같이 CPU와 GPU를 모두 지원하는 프로그램에서는 사용할 하드웨어를 선택하는 것만큼 간단하지 않습니다. CPU 렌더링에서 GPU 렌더링으로 간단히 이동하면 최종 렌더링에서 약간 다른 결과가 반환되는 경우가 많습니다. 때로는 특정 기능이 CPU와 GPU에서 모두 지원되지 않는 경우도 있습니다. 각각 다른 API를 사용하여 계산이 달라지므로 동일한 결과를 반환하도록 설정을 구체적으로 구성해야 합니다. 이는 짧은 클립이나 스틸을 만드는 독립 크리에이터에게는 그다지 큰 문제가 아닐 수 있지만, 장편 영화를 만드는 수백 명의 아티스트가 있는 대형 스튜디오에서는 고려해야 할 사항입니다.
결론: CPU와 GPU 렌더링
3D 렌더링 환경은 항상 진화하고 있습니다. 더 빠른 렌더링 시간과 더 높은 품질의 렌더링에 대한 끊임없는 검색이 있습니다. GPU는 완전히 새로운 세대의 렌더링 엔진을 만들어 3D 세계에 진입하는 데 드는 비용을 낮추는 데 도움이 되었습니다. 그러나 CPU도 코어 수가 폭발적으로 증가했으며 렌더 팜과 기타 하이엔드 사용자에게 여전히 강력한 선택입니다. 최종 사용자는 룩 개발 중에 GPU가 제공하는 빠른 처리 속도를 좋아할 것이고, 독립 아티스트는 여전히 드로우 드롭 렌더링을 제작할 수 있으면서도 더 낮은 비용을 좋아할 것입니다. 그러나 CPU는 여전히 업계에서 지배적인 세력입니다. 신뢰성, 방대한 RAM 풀, 렌더 팜의 확장성으로 인해 많은 하이엔드 스튜디오에서 선택하는 옵션입니다.
CPU와 GPU 중에서 선택하는 것은 그 어느 때보다 복잡해졌습니다. 렌더 엔진을 선택하고 해당 엔진에 적합한 하드웨어를 구성할 때 고려해야 할 요소가 많습니다.
관련 게시물