NVIDIA 에이다 러브에이스 아키텍처를 쓴 지포스 RTX 40 시리즈의 상세 소개입니다.
제조 공정이 삼성 8nm에서 TSMC 4N(4nm 커스텀)으로 발전하면서 트랜지스터 수가 대폭 늘었습니다.
또 클럭을 높였고 SM 유닛에서 전력 효율을 2배 개선했습니다.
그래픽의 최근 트렌드는 실시간 레이 트레이싱입니다. 지포스 RTX 시리즈 이후로 실시간 레이 트레이싱을 지원하는 게임이 늘어나고 있습니다.
이와 함께 픽셀 당 레이 트레이싱 처리량도 증가하고 있습니다. 2018년에 출시된 배틀필드 5는 1픽셀당 39번의 레이 트레이싱 처리가 이루어졌으나 사이버펑크 2077에선 635번으로 늘었습니다.
하지만 트랜지스터 수는 지난 4년 간 4배가 늘어나는데 그쳤습니다. 지포스 RTX 2080은 186억개, 4090은 760억개니까요. 그래픽은 병렬 처리가 가능하기에 트랜지스터 수를 늘리면 그만큼 성능이 향상되지만, 4배 늘어난 트랜지스터로 16배 늘어난 레이 트레이싱 처리량을 감당하긴 힘들겠지요.
그래서 에이다 아키텍처는 실시간 레이 트레이싱을 효율적으로 처리하는 구조를 도입했습니다. 모두 다이렉트 X 12의 실시간 레이 트레이싱 API인 DXR 기반이나, 그 확장 옵션이기에 게임 개발자가 이들 기능을 추가해야 합니다.
쉐이더 실행 재정렬(Shader Execution Reordering. SER)은 레이 트레이싱에서 병렬 처리가 불가능해진 쉐이딩 처리를 바로 다시 정렬해, 효율적으로 실행할 수 있게 해줍니다. 게임 개발자에게 이 기능을 제공하며, 사이버펑크 2077의 오버드라이브 모드에서 SER을 쓰면 44%, 포탈 RTX에선 29%, 레이서 RTX에선 20%의 성능 향상 효과가 있습니다.
마이크로 메쉬는 Displaced Micro-Mesh와 Opacity Micro-Map으로 나뉩니다. 모두 생물과 식물 같은 미세한 표현에 효과적입니다. 둘 다 다른 SDK라서 둘 다 쓰거나 둘 중 하나만 쓸 수 있습니다.
Displaced Micro-Mesh는 고화질 지오메트리에 효과적입니다. 암페어에서 고화질 지오메트리에 레이 트레이싱 처리를 하려면 BVH(Bounding Volume Hierarchy)가 복잡해지면서 메모리 사용량이 늘어나는 부작용이 있었습니다. 마이크로 메쉬는 매우 간단한 삼각형 데이터만 BVH에 넣고, 그 삼각형의 변위 맵 데이터를 RT 코어 안에서 적용해 복잡한 지오메트리를 만들어 냅니다.
Opacity Micro-Map은 복잡한 지오메트리를 삼각형이나 마이크로 메쉬에 효율적으로 맵핑하는 기능입니다. 기존의 알파 텍스처를 이용해 식물의 잎을 자세히 그려내려면, 빛이 통과하지 못하는 부분까지 히트 쉐이더를 불러내야 했지만 이 기능을 쓰면 잎의 가장자리만 쉐이더 처리하면 되기에 효율이 높아집니다.
특히 안개 효과에서 매우 효율적입니다.
NVIDIA가 가장 강조하는 기능은 DLSS 3입니다.
DLSS는 저해상도 그래픽에 AI 처리를 더해 고해상도로 높여주는 기능입니다. 4K 해상도를 풀HD 해상도로 렌더링한다면 그려야 하는 픽셀 수가 1/4로 줄어들기에 그만큼 성능에 여유가 생깁니다.
DLSS3는 DLSS로 초해상 처리가 된 이미지와 이미지 사이의 프레임을 AI 처리로 만들어냅니다. 그렇다면 30fps만 렌더링할 수 있는 상황에서도 프레임을 보완해 60fps로 만들 수 있다는 것입니다. 그래서 렌더링하는 픽셀 수가 대폭 줄어들게 됩니다.
마이크로소프트 플라이트 시뮬레이터는 DLSS 3로 프레임이 2배가 됩니다.
DLSS3가 중간 프레임을 AI로 만들어 내기에 실제로 렌더링하는 픽셀 수는 1/8이 됩니다.
프레임 생성은 CPU에 의존하지 않고 GPU가 처리합니다.
과거에 표시된 프레임을 통해 새 프레임을 만들어 내는데, 여기서 가장 큰 문제가 그림자입니다. 캐릭터가 이동하면 화면 안의 땅이 함께 움직이지만, 거기에 비친 그림자는 지면과 함게 움직이지 않고 캐릭터와 함께 움직입니다. 그래서 이걸 그대로 AI가 프레임을 만들면 지면에 비친 그림자가 땅과 함께 움직였다가 그 다음 프레임에서 제대로 렌더링했을 때 원래 위치에 돌아오는 현상이 생깁니다.
그래서 에이다 아키텍처는 옵티컬 플로우라는 기술을 도입해, 움직임의 벡터를 분석하고 그림자를 포함해서 어떤 오브젝트가 카메라와 함께 움직이고 또 고정되야 하는지를 분석합니다.
DLSS 3의 성능 향상
DLSS 3를 쓰기 위해선 4세대 텐서 코어가 필요합니다.
NVIDIA 리플렉스도 DLSS 3에서 캡처 처리합니다.
위에서 소개한 기능과 트랜지스터 수의 증가를 통해 4090은 3090 Ti와 비교해서 1.5~2배 정도의 성능 향상이 이루어졌다고 주장합니다. 아마도 DLSS 3를 포함한 거겠죠. 또 최신 기술을 쓴 게임이라면 최대 4배도 가능할거라 보고 있습니다.
지포스 RTX 4080 12GB만 하더라도 3090 Ti와 같은 수준의 성능을 내며, 4080 12GB의 전력 사용량은 285W로 3090 Ti의 450W보다 많이 낮으니 매우 효율적입니다.
대부분의 이스포츠 게임에선 2560x1440 해상도에서도 300fps 이상의 프레임이 나옵니다.
파운더스 에디션에선 전류도 안정화했습니다.
죄송하지만 윗글에 DLSS에 프레임 처리를 CPU가 아닌 GPU가 처리한다고 되어 있는데
이렇게 되면 DLSS 이용시 CPU에 의한 성능차는 미미한가요??
궁금한것이 FHD -> 4K 업스케일링을 하면 CPU 영향도 많이 받는데 DLSS3는 조금 덜한가해서요