“지포스 1180 출시 행사에 온 것을 환영합니다.”
시작과 동시에 엔비디아 CEO 젠슨 황이 던진 한 마디를 듣자 모두가 웃으며 긴장을 풀었다. 사실 현장에 있던 이들은 물론 온라인 생중계로 새로운 지포스 그래픽카드의 발표를 보던 이들은 이미 제품의 이름 정도는 다 짐작하고 있던 터. 10의 다음 수인 11 대신 20으로 껑충 뛴 엔비디아 지포스 RTX 20xx는 이미 모두 다 아는 비밀 아닌 비밀이었다.
그동안 점진적으로 숫자를 높여 그래픽 카드 세대를 구분했던 엔비디아는 11 대신 20을 선택한 이유를 따로 설명하지 않았다. 그저 수많은 숫자를 뛰어 넘을 만큼의 의미를 부여하려는 의도를 일부러 드러내고 싶었을 거라고 추측할 뿐이다. 물론 이러한 의도는 엔비디아의 게이밍 그래픽 카드에 붙였던 GTX라는 중간 이름을 RTX로 바꾼 것에도 있다. 그래픽 처리 성능을 중시했던 과거와 다른, 그동안 자신있게 말할 수 없던 게임 그래픽에 대한 이야기를 자신 있게 꺼낼 수 있는 제품이라는 상징성을 담았을 수도 있다.
실제로 지포스 RTX는 종전 GTX 10 시리즈까지 새로운 세대의 그래픽 카드를 내놓을 때마다 반복했던 게임 그래픽에 대한 이야기를 자제했다. 최대 해상도와 프레임, HDR에 대한 성능이나 품질에 대한 자랑은 쏙 들어간 것이다. 대신 젠슨 황 CEO는 게임 내에서 ‘빛’을 다루는 방법과 그 결과물을 보여주기 위해 준비해 온 모든 것을 무대에서 펼쳐 보였다.
엔비디아가 게임 그래픽의 ‘빛’을 말한 것에 의아한 이들도 많을 것이다. 왜냐하면 대부분은 수많은 3D 게임에서 수많은 빛을 봤기 때문이다. 하지만 대부분은 그 빛을 봤을 뿐 빛이 만드는 다른 현상은 보지 못한다는 사실을 깨닫지 못한다. 이를 테면 게임 속 어두운 동굴에서 손전등을 켰을 때 빛 주변을 밝게 해주는 정도의 효과는 볼 수 있어도, 빛의 차단에 의해 생길 수 있는 그림자나 사물 표면에 반사된 이미지는 거의 보지 못하는 것이다. 실제로 게임에서 손전등의 움직일 때마다 그림자의 위치나 길이의 변화가 거의 없다는 점을 볼 때, 실제 빛과 관련된 현상을 재현하지 못하는 그래픽은 결과적으로 현실감을 떨어뜨리는 원인이 되는 셈이다.
어쩌면 인트로나 엔딩에 나오는 3D 그래픽 기반 동영상에서 그림자나 각종 반사 효과를 본 경험은 있을 것이다. 하지만 이는 오랜 계산을 거쳐 렌더링된 결과물이지 게임 도중 실시간으로 볼 수 있는 게 아니다. 즉, 게임에서 이러한 효과를 보려면 빛의 물리적 변화를 추적하고 계산한 뒤 곧바로 렌더링을 할 만큼 충분한 능력을 갖춰야 한다. 엔비디아가 선보인 시그래프 2018에서 쿼드로 RTX와 8월 20일 발표한 지포스 RTX가 3D 그래픽 안에 있는 광원에서 나온 빛의 경로를 추적하는 레이트레이싱(Raytracing)에 따라 실시간으로 렌더링해 더 사실감 넘치는 그래픽을 경험할 수 있도록 만든 그래픽 카드다.
물론 앞서 나왔던 그래픽 카드에서 실시간으로 광선 추적을 처리할 수 없다는 이야기는 아니다. 종전 그래픽 카드로도 광원에서 나온 광선을 추적한 뒤 계산 값을 반영해 실시간으로 렌더링을 할 수는 있지만, 의미있는 결과를 내놓기에 미흡했을 뿐이다. 때문에 엔비디아는 기존 GPU 구조가 아니라 실시간으로 레이트레이싱을 처리할 수 있도록 튜링이라는 새로운 마이크로아키텍처를 설계했다.
쿠다(CUDA) 이후 가장 큰 도약이라 말할 정도로 큰 자부심을 갖고 있는 튜링은 실제로 종전 엔비디아의 마이크로아키텍처와 비교해 달라진 부분이 적지 않다. 거의 모든 그래픽 데이터를 처리하는 스트리밍 멀티프로세서(Streaming Multiprocessor)에 변화를 주고 튜링 SM으로 업그레이드했다. 볼타 마이크로아키텍처에서 일부 처리 성능을 높이는 데 영향을 준 전용 INT 코어를 추가 및 FP와 동시 처리하고, 대역폭을 2배 높인 통합된 캐시 구조(unified cache architecture), 포비티드 렌더링 같은 차기 그래픽 렌더링에 필요한 가변비율 쉐이딩 지원 등 튜링 SM은 적지 않은 변화를 담았다.
여기에 레이트레이싱의 처리를 가속하는 전용 RT코어를 넣었다. 3D 모델에 그림자나 반사가 들어간 렌더링을 하기 위해선 렌더링 전 3D 모델에 광선이 닿는 교차점을 찾아야 한다. 문제는 이 교차점을 계산하는 데 걸리는 시간이 상당하다는 것. 더구나 광선수를 늘릴 수록 계산 시간은 늘어날 수밖에 없던 터라 수많은 그래픽 전문가와 연구자들은 중복 정보를 제거하는 등 계산을 가속하는 방법을 찾아냈고, 엔비디아는 빛과 3D 모델을 구성하는 수많은 삼각형의 교차점 계산을 위한 전용 파이프라인(ASIC)인 RT 코어를 튜닝 마이크로아키텍처에 반영한 것이다. 결과적으로 SM에서 명령을 받은 RT 코어의 계산이 끝나면 값은 다시 튜링 SM의 레지스터로 전달되어 렌더링에 쓰인다.
하지만 RT 코어만으로 실시간 광선 추적을 계산하진 않는다. 엔비디아가 그동안 인공 지능의 기계 학습을 위한 텐서 코어 이번 튜링 마이크로아키텍처에 넣어 레이트레이싱을 돕도록 설계했다. 텐서 코어의 역할은 장면에서 필요한 광선의 양을 줄이는 것이다. 즉, 실제로 필요한 수보다 적은 광선으로 정리함으로써 실제 RT 코어에서 해야 할 계산을 줄여준다.
물론 텐서 코어는 3D 그래픽 성능에도 영향을 미친다. 특히 3D 모델의 가장 자리를 부드럽게 만들기 위한 안티 앨리어싱은 GPU 자원과 프레임 버퍼를 상당 부분 소비해 부담을 안겼다. 엔비디아는 각 장면 및 이미지에 대한 기계 학습으로 기존 안티 앨리어싱과 거의 같은 효과를 내는 DLSS(Deep Learning Super Sampling)라 부르는 새로운 형태의 안티 앨리어싱 기술을 넣었다. 덕분에 가장 자리를 부드럽게 만들어야 했던 GPU의 부담이 상대적으로 줄어 초당 프레임수를 더 늘릴 수 있게 됐는데, DLSS를 이용하면 종전 GTX 1080 대비 2배 안팎의 프레임 수 증가에 대한 결과를 엔비디아에서 내놓기도 했다.
( 차세대 가상 현실의 ‘게임 체인저’, 엔비디아 지포스 RTX(2)에서 계속…)
궁금한 내용 잘 보고 갑니다. 좋은 글입니다 짝짝짝