NVIdIA 지포스 30 시리즈의 기술에 대한 소개입니다.
우선 지포스 RTX 30 시리즈의 변화를 정리한 이미지입니다.
1. 성능 향상
2. GDDR6X 메모리
3. 2축 구조의 쿨러
4. 2세대 RT 코어
5. 3세대 텐서 코어
6. NVIDIA 리플렉스로 레이턴시 감소
7. RTX IO
8. 8K HDR 게임을 위한 지포스 RTX 3090
9. 방송의 AI 처리, NVIDIA 브로드캐스트
10. 컨텐츠 제작에 RTX 가속
지포스 RTX 20 시리즈(튜링)은 쿠다 코어, 레이 트레이싱 처리의 일부를 수행하는 RT 코어, AI 처리를 맡은 텐서 코어가 있었습니다.
지포스 RTX 30 시리즈는 RT와 텐서 코어가 발전했습니다.
지포스 RTX 2080 슈퍼의 TU104 코어. 48개의 SM에 64개의 쿠다 코어가 들어가고, 32비트 메모리 컨트롤러 8ㄱ개가 모여서 256비트 메모리 버스를 구성합니다.
지포스 RTX 3080의 GA102 코어. SM은 68개, 각각의 SM에 128개의 쿠다 코어가 들어갑니다. SM은 10개와 12개의 블럭이 있으니 나중에 12개의 SM을 쓴 완전체가 나올 가능성이 있습니다.
이런 식으로요.
전체적인 구조는 크게 변하지 않았습니다. 암페어는 쿠다 코어가 두배 이상 늘었지만, L2 캐시-코어 클러스터-메모리 컨트롤러로 이어지는 구조는 변화하지 않았습니다. 메모리 컨트롤러가 늘어나긴 했으나 구조는 비슷합니다.
하지만 코어의 클러스트는 구성하는 GPC (Graphics Processing Cluster) 안쪽의 작은 클러스터, SM (Streaming Multiprocessor)는 많이 바뀌었습니다. 1개의 SM에 4개의 파티션이 있고 거기에 쿠다 코어가 있다는 점은 튜링과 암페어가 같습니다. 하지만 튜링은 하나의 파티션에 16개의 코어가 있었으나 암페어는 32개로 늘었습니다.
또 암페어는 이 32개의 쿠다 코어를 두개의 그룹으로 나눠 2개의 데이터 경로를 넣었습니다. 둘 중 하나는 튜링처럼 INT32/FP32 작업 중 하나를 처리하지만, 다른 한쪽은 FP32 연산 전용입니다.
그래서 암페어의 SM은 32개의 FP32 명령을 실행하거나 16개의 INT32와 16개의 FP32를 처리할 수 있습니다. INT32와 FP32를 하나의 데이터 패스에서 수행하진 못합니다. 따라서 INT32 작업을 할 경우에는 쿠다 코어를 절반 정도 손해보지만, 실제 게임에선 FP32의 양이 압도적으로 많기에 FP32 전용 데이터 버스의 의미는 큽니다.
또 SM의 L1 캐시 용량을 128KB로 늘렸습니다. 튜링의 L1은 96KB였으니 33% 정도 늘어난 셈입니다.
다음은 모션 블러 하드웨어 가속을 봅시다. 튜링에선 BVH (Bounding Volume Hierarchy)라는 계층 구조를 사용해 광선이 충돌할 것으로 보이는 폴리곤을 수정하는 바운딩 박스 인터섹션, 폴리곤에 어떻게 충돌하는지를 계산하는 트라이앵글 인터섹션 처리를 수행했습니다.
암페어의 2세대 RT 코어는 트라이앵글 인터섹션을 수정했습니다. 움직이는 폴리곤에 레이 트레이싱의 모션 블러 처리를 할 경우, 다음 순간에 어떻게 광선과 충돌하는지를 추적해 결과를 내야 하는데요. 2세대 RT 코어는 트라이앵글 인터섹션의 처리를 하드웨어적으로 수행합니다.
모션 블러는 처리 부하가 높아 게임에서 잘 쓰진 않습니다. 따라서 레이 트레이싱에 이걸 넣어도 게이머에게 별 영향을 주지 못할 수도 있습니다.
하지만 3D 렌더링이라면 이야기가 달라집니다. 레이 트레이싱 성능의 향상으로 렌더링 성능이 더욱 빨라집니다.
렌더링 성능이 2배 정도 빨라집니다.
블렌더 렌더링에서 모션 블러 처리 시간을 획기적으로 줄였습니다.
암페어의 텐서 코어는 스파스 모델링을 지원합니다. 처음에는 dense지만 나중에는 가지치기된 모델링으로 전환해 데이터를 줄여 처리 속도를 빠르게 합니다.
암페어의 텐서 코어는 튜링보다 SM의 코어 수는 줄었으나, FP16 연산의 처리량은 더욱 늘었습니다. 튜링의 텐서 코어 1개는 64개의 작업을 수행했으나, 암페어는 dense의 경우 128개, 스파스라는 256개의 오퍼레이션을 처리합니다.
지포스 RTX 30 시리즈를 게임용으로 쓸 경우, 텐서 코어는 AI를 사용해 저해상도 렌더링에서 고해상도 이미지를 출력하는 DLSS, 레이 트레이싱에서 AI 노이즈 절감 등에 활용합니다. 쿠다 코어만 사용해서 레이 트레이싱을 처리하면 51밀리초가 필요하지만 rT 코어는 20밀리초, 텐서 코어까지 사용하면 12밀리초가 걸립니다.
튜링에선 RT+텐서 코어를 사용했을 때 13밀리초가 걸리지만 암페어는 7.5밀리초로, rT+텐서 코어를 함께 사용하면 6.7밀리초로 줄어듭니다.
지포스 GTX 1080 Ti, RTX 2080, RTX 3080에서 레이 트레이싱 처리를 했을 때의 프레임 타임 요약. 암페어는 튜링보다 1.9배 바른 속도를 냅니다.
다음은 GDDR6X 메모리입니다. GDDR6는 전압이 0이거나 1의 두 가지 값만 있으나, GDDR6X는 4단계의 전압을 사용하는 PAM4 신호를 사용합니다. 그래서 동일한 데이터를 전송하는데 GDDR6는 500피코초가 걸리는데 GDDR6X는 380피코초만에 끝납니다.
하지만 2비트 정보를 4단계의 전압으로 변환한다고 해서 끝나는 게 아니라, 전압과 신호의 품질을 유지하기 위한 처리가 필요합니다. Max Transitin Avoidance Coding가 그런 기술 중 하나입니다.
전력 대 성능의 변화. GPU 코어와 메모리 쪽의 전력 레일을 나눠서 효율적으로 전력을 공급합니다.
여기에서 소개한 내용을 보충합니다.
https://www.techpowerup.com/review/nvidia-geforce-ampere-architecture-board-design-gaming-tech-software/2.html
RTX 3090의 성능
RTX 3080의 성능
RTX 3070의 성능
쿨러는 여기에 올라왔습니다. https://gigglehd.com/gg/8149817
DLSS 8K. 실제 게임은 1440p 정도로 렌더링해 AI 슈퍼 샘플링으로 8K를 만들어 출력합니다. 네이티브 8K 처리까지는 힘들겠죠.
HDMI 2.1도 세계 최초로 지원합니다. DP 1.3 케이블 2개나 HDMI 2.0 케이블 4개로 전송해야했던 8K HDR 60Hz를 이젠 케이블 하나로 전송 가능합니다.
스토리지에는 오버헤드가 없습니다. 스토리지 I/O는 CPU에 의존합니다. 압축되지 않은 데이터를 PCIe 4.0 x4 SSD의 최대 속도인 7GB/s로 읽으려면 2개의 CPU 코어를 사용해야 합니다. 그리고 최신 게임에는 수십만개의 리소스를 압축돼 저장합니다. 이걸 압축을 풀어 전송하면 최대 14GB/s까지 나올 수 있습니다.
마이크로소프트는 GPU가 압축된 데이터를 가져오는 다이렉트스토리지 API를 도입해 이 문제를 해결합니다. NVIDIA RTX I/O는 다이렉트스토리지를 기반으로 하여 I/O 성능을 더 높여줍니다.
NVIDIA 리플렉스는 시스템의 레이턴시를 줄여주는 기능입니다. 게임 엔진의 3D 렌더링 파이프라인을 최적화해 렌더링 대기 시간을 동적으로 줄여, GPU가 렌더링하기 위해 대기열에 추가하는 프레임 수를 줄입니다.
그리고 지싱크 이스포츠 모니터. 360Hz IPS 패널을 사용합니다.
실시간 RTX 글로벌 일루미네이션
20시리즈도 가능할지도....
nvidia 사이트에 보면...
https://www.nvidia.com/ko-kr/geforce/news/nvidia-broadcast-app/
'NVIDIA Broadcast는 가장 인기 있는 라이브 스트리밍, 음성 채팅 및 화상 회의 앱과 호환되는 범용 플러그인입니다. 앱의 AI 네트워크가 게임과 함께 실시간으로 실행되도록 돕는 Tensor 코어라는 전용 AI 프로세서를 통해, NVIDIA Broadcast는 모든 NVIDIA GeForce RTX, TITAN RTX 또는 Quadro RTX GPU에서 지원됩니다.
AI 소음 제거 기능을 사용해 보고 싶지만, 아직 RTX GPU로 업그레이드할 준비가 되지 않으셨나요? NVIDIA GeForce GTX GPU를 지원하는, NVIDIA Broadcast 소음 제거 기능의 초기 베타판인 RTX Voice 역시 패치를 하고 있습니다. 당연하지만, 더욱 이전의 GPU에서는 사용 시 효과가 다를 수 있습니다.'
단 끝 부분의 말이 좀......