입력 : 2010-01-20 19:53:21
엔비디아 GF100은 쿼드 코어 GPU? |
지난 번 기사에 이어 이번에는 GF100 프로세서의 구조를 조금 더 자세히 살펴보도록 하자.
이미 지난 기사에서 언급한 것처럼 GF100은 512개의 쿠다 코어를 가지고 있으며 16개의 지오메트리 유닛, 래스터 유닛 4개, 64개의 텍스처 유닛, ROP 유닛 48개를 갖추고 있다. 또 64비트 GDDR5 메모리 컨트롤러 여섯 개를 통해 총 384비트 메모리 대역폭을 가진다.
이 제원에 대해 단순히 말로만 듣는다면 어떤 점이 바뀌었는지 쉽게 와 닿지 않는다. GF100은 기존 GPU의 설계 구조를 버리고 완전히 새롭게 뜯어 고친 GPU이기 때문에 먼저 그 구조를 알아둬야 할 필요가 있다.
▲ GF100의 블록 다이어그램. GPC 및 SM 블록을 주목할 필요가 있다.
GF100의 블록 다이어그램을 통해 그 구조를 유심히 살펴보면 흥미로운 모습을 볼 수 있다. GF100은 GPU 하나에 크게 네 개의 GPC 구간을 가지고 있으며 다시 그 GPC 안에 4개의 SM 블록을 갖추고 있다.
GPC는 그래픽 프로세싱 클러스터(Graphic Processing Cluster)를 뜻한다. GF100은 모두 네 개의 GPC를 가진다. 각각의 GPC는 네 개의 스트리밍 멀티 프로세서(SM, Streaming Multiprocessor)를 담고 있다.
GPC는 래스터 엔진을, 또 SM은 폴리모프 엔진을 각각 하나씩 갖추고 있다. 래스터 엔진은 트라이앵글 셋업, 래스터화, z-컬을 처리하며 폴리모프 엔진은 버텍스, 테셀레이터, 뷰포트 트랜스폼, 속성 설정, 스트림 출력 등을 수행한다.
이러한 구조는 다이렉트X 11에서 강조되는 테셀레이션을 처리하기에 적절한 편이다. 네 개의 SM이 처리한 테셀레이션 결과물을 GPC의 래스터 엔진이 클럭당 8개의 픽셀 형태로 표현하게 된다. 상당히 효율적인 구조다.
캡슐화 된 GPC는 버텍스, 지오메트리, 래스터, 텍스처, 픽셀 처리 능력을 모두 갖췄다. 한 마디로 ROP(Render Output) 기능을 뺀 GPU라 봐도 좋다. 더 쉽게 설명하자면 이렇다. GF100은 4개의 GPU를 하나로 통합한 것과 유사한 구조를 가진다.
이러한 블록 형태의 설계는 단순히 병렬 처리 능력을 향상시키는 장점만 있는 것이 아니다. 추후 제품군의 확장에도 큰 도움이 될 것으로 보인다. 상황에 따라 GPC 숫자를 조절하면 다른 GPU 라인업을 만들 수 있기 때문이다.
개선된 내부 구조, 더욱 빨라진 성능 돋보이는 GF100 |
이번엔 GF100이 채택한 3세대 스트리밍 멀티프로세서를 조금 더 자세하게 살펴보자. GF100의 스트리밍 멀티 프로세서는 아래와 같은 구조를 가진다.
▲ GF100의 스트리밍 멀티 프로세서는 위와 같은 형태로 구성되어 있다
GF100의 스트리밍 멀티 프로세서는 32개의 쿠다(CUDA) 코어를 가진다. 이는 GT200의 네 배다. 이러한 스트리밍 프로세서를 16개나 갖춘 GT100은 총 512개의 쿠다 코어를 가진다.
각각의 쿠다 프로세서는 정수 산술 논리 장치(ALU, arithmetic logic unit)와 실수 연산 장치(FPU, Floating point unit) 파이프라인 구성을 가진다. 이를 통해 32비트 정수 처리가 가능하며 실수 처리의 경우 IEEE 754-2008 FP 표준을 따른다. 덧셈과 곱셈 연산을 동시에 수행하는 FMA(Fused multiply-add)를 지원해 다중 덧셈 성능 향상 및 렌더링 오류를 최소화 시키는 효과도 기대할 수 있다.
또 각 SM 당 16개의 로드/스토어 유닛이 들어간 것을 볼 수 있다. 클럭 당 16개의 입출력 스레드를 처리할 수 있다는 소리다. 캐시 및 메모리와 빠르게 자료를 주고 받을 수 있어 성능 효율이 더욱 높아졌다.
SM 하나에 담긴 특수 기능 유닛(SFU, Special Function Unit)은 모두 네 개다. SFU는 사인, 코사인, 역수, 제곱근 등 말 그대로 특수한 연산을 수행한다. 그래픽 인터폴레이션 기능 또한 SFU에서 수행한다. 각 SFU는 클럭 및 스레드 당 하나의 연산을 처리한다.
SM 상단부에 위치한 듀얼 워프 스케줄러는 병렬 스레드 처리에 더욱 효율적인 모습을 보이도록 구현된 것이다.
기존 엔비디아 GPU는 3개의 SM과 텍스처 유닛이 TPC(Texture Processing Cluster)로 그룹화 되어 있었다. GF100은 이와 달리 각각의 SM이 4개의 독립적인 텍스처 유닛을 가진다. 각 텍스처 유닛은 클럭당 텍스처 주소 계산 및 4개의 텍스처 샘플을 불러올 수 있다.
개선된 캐시 구조도 눈에 띈다. GF100은 효율적인 캐시 설계를 통해 메모리 접근에 낭비되는 시간을 크게 줄였다. 버텍스 정보를 불러올 때, 픽셀 쉐이더를 처리할 때, 결과물을 보여주는 렌더 아웃풋 때를 제외하면 메모리에 굳이 접근할 일이 없다. 캐시를 통해 대부분의 자료를 공유하기 때문이다.
▲ 내부 캐시의 개선 역시 처리 성능 향상에 일조한다
64KB 용량의 1차 캐시는 레지스터 할당, 입출력 등에 주로 쓰이며 16/48KB로 분배해 효율적으로 쓴다. 768KB 용량의 2차 캐시는 버텍스, 쉐이더 모델, 텍스처 및 ROP 데이터를 공유하는 데에 주로 쓴다. 캐시의 적용 범위도 늘었다. 캐시 효율과 더불어 공유 메모리와 2차 캐시 용량도 세 배로 늘었다. GF100이 기존 세대 GPU보다 빠른 것은 실로 당연해 보인다.
▲ 기존 GT200과 GF100의 캐시 구조 비교
아래는 엔비디아가 공개한 ROP 및 텍스처 성능 표다. 개선된 아키텍처를 가진 GF100의 효율이 상당히 뛰어나다는 점을 엔비디아가 내세우는 것을 볼 수 있다.
▲ ROP 및 텍스처 성능이 더욱 올라간 것을 볼 수 있다
32x CSAA 지원, 8x AA와도 속도 차이 별로 없어 |
GF100의 텍스처 유닛은 바이리니어(Bilinear), 트라이리니어(Trilinear), 비등방성 필터링(anisotropic filtering) 모드를 기본 지원한다. 텍스처 처리 성능 또한 더욱 좋아졌다.
기존 GT200 아키텍처에서는 3개의 스트리밍 멀티 프로세서로 구성되는 TPC당 8개의 텍스처 유닛을 가지고 있었지만 GF100은 각각의 SM이 4개의 텍스처 유닛 및 캐시를 갖췄다. L1 텍스처 캐시 및 통합 L2 캐시는 GF100의 성능 향상에 한 몫 한다. 기존 GT200과 비교해 세 배 더 빠르다고 엔비디아 측은 말한다.
GF100의 텍스처 유닛은 다이렉트X 11의 BC6H 및 BC7 텍스처 압축 포맷을 지원한다. 덕분에 메모리 자원을 최대한 아끼며 HDR 텍스처 밋 대상 렌더링을 할 수 있다.
▲ GF100은 네 개의 샘플을 통한 효율적인 지터드 샘플링을 지원한다
텍스처 유닛은 또 다이렉트X 11의 개더4(Gather4)를 적용한 지터드 샘플링(jittered sampling)을 하드웨어적으로 지원한다. 128x128 픽셀 그리드 단위로 프로그램가능한 네 개의 텍셀 위치를 잡아 스케일러 데이터를 불러내는 방식이다. 기존 지터드 샘플링은 1개의 텍셀 또는 픽셀로 작업을 진행했다.
GF100의 새로운 ROP 유닛은 더욱 뛰어난 안티애일리어싱을 가능하게 만들었다. GF100의 ROP 파티션 하나에 8개의 ROP 유닛이 포함되어 있으며 각 ROP 유닛은 클럭 당 32비트 정수 픽셀을 처리한다. FP16 픽셀은 2클럭으로, FP32 픽셀은 4클럭으로 처리 가능하다.
이를 바탕으로 GF100은 더욱 강력한 안티 애일리어싱 성능을 보여준다. 특히 32x CSAA(Coverage Sampling Anti-Aliasing)를 지원한다는 점은 주목할 필요가 있다. 8개의 컬러 샘플, 24개의 커버리지 샘플을 통해 더욱 자연스러운 화질 보정 효과를 보여준다. 윤곽선은 물론 색상 농도 표현까지 더욱 매끄럽게 처리한다.
▲ 32x CSAA로 더욱 뛰어난 화질을 그려내는 GF100
TMAA(Transparency Muitlsample AA) 기술 덕에 기존 다이렉트X 9 게임에서도 눈에 띄는 실력을 보인다. 다이렉트X 9 API는 알파-투-커버리지를 직접 지원하지 않는다. TMAA는 기존 DX9에 쓰이는 기존 쉐이더 코드를 알파-투-커버리지로 사용할 수 있도록 변환해 준다. 덕분에 기존 GT200보다 자연스러운 결과물을 빠른 속도로 그려낸다.
GF100의 뛰어난 안티 애일리어싱 성능은 주목할 만 하다. 32x CSAA 옵션을 쓸 때도 8x AA 설정 시와 프레임 차이가 그리 크지 않다.
▲ 32x CSAA 설정 시에도 성능 저하가 크지 않다는 것이 장점
GPU 컴퓨팅 성능도 대폭 상승한 GF100 |
GF100의 강력한 병렬 처리 성능은 게이밍을 위한 GPU 컴퓨팅에서도 실력을 발휘한다.
지포스 8 시리즈 때부터 엔비디아가 강조한 쿠다(CUDA)는 다이렉트X 11 시대에 와서 더욱 빛나고 있다. 다이렉트X 11 API는 아예 다이렉트컴퓨트라는 기술을 추가했다.
▲ 다양한 GPU 컴퓨트를 지원하는 GF100
GF100은 다양한 GPU 컴퓨팅 방식을 지원한다. 쿠다 C와 쿠다 C++, 오픈CL, 다이렉트컴퓨트, PhysX, OptiX 레이 트레이싱 등 엔비디아가 내세우는 표준 및 업계 표준 기술까지 두루 쓸 수 있어 상대적으로 활용도가 높다.
게임에서 GPU 컴퓨팅은 어떤 이점을 줄 수 있을까. 크게 세 가지로 나눌 수 있다. 이미지 프로세싱, 시뮬레이션, 하이브리드 렌더링이다.
▲ 앞으로 나올 게임에서는 GPU 컴퓨팅 덕에 더욱 화려한 영상을 즐길 수 있다
GPU 컴퓨팅은 심도 효과, 모션 블러 등의 특수한 영상 처리에 쓸 수 있으며 물리 연산 가속 및 인공지능 등의 처리도 도울 수 있다. 이 밖에도 OIT(Order-independent transparency), 부드러운 그림자 매핑, 레이 트레이싱 등의 효과를 낼 때도 쓰인다.
엔비디아 측은 ‘다크 보이드’ 등의 데모를 통해 이러한 범용 컴퓨팅 성능 향상을 강조했다. GPU 컴퓨팅 성능의 경우 종전 GT200보다 3~4배 정도의 성능 향상이 있을 것으로 보인다.
▲ GF100은 기존 GT200보다 3배 이상 빨라진 GPU 컴퓨팅 성능을 보인다
내일의 익스트림 게임 환경은? 엔비디아 3D 비전 서라운드 |
엔비디아는 또 CES 2010을 통해 ‘3D 비전 서라운드’라는 새로운 익스트림 게임 환경을 들고 나섰다. 기존 익스트림 HD 게임 환경은 2,560x1,600 고해상도를 기준으로 했지만 3D 비전은 한 술 더 뜬다.
엔비디아가 내일의 익스트림 게이밍 환경이라며 자신 있게 내세운 3D 비전 서라운드는 간단하게 얘기하자면 120Hz를 지원하는 HD 모니터 세 대를 붙여 즐기는 3D 비전의 DX11 다중 디스플레이 버전이다.
1초에 7억 5천만 픽셀을 처리하는 성능은 물론이요, 테셀레이션 기술을 뽐내는 다이렉트X 11, PhysX 및 GPU 컴퓨트를 제대로 즐길 수 있는 환경이 바로 3D 비전 서라운드다.
물론 웬만한 성능을 가진 그래픽 카드 하나로는 어림도 없는 일이다. 엔비디아가 자신 있게 내세우는 GF100이나 못해도 GT200 급은 되어야 시도해 볼 만한, 그야말로 꿈의 게임 환경이라 할 수 있다.
▲ 3D 비전 서라운드는 익스트림 게이머를 타깃으로 한다
지금까지 GF100의 특징에 대해 알아봤다. GF100의 특징을 다시 한 번 요약하자면 아래와 같다.
GT200보다 8배 이상 높은 지오메트리 성능
32x CSAA 및 3배 빠른 쉐도우 맵으로 이미지 품질 향상
물리 연산 가속, 인공지능, 레이 트레이싱 등 4배 빠른 GPU 컴퓨팅
고해상도 및 8xAA 설정에서도 GT200보다 두 배 이상 빠른 차별화 된 성능
이번에 공개된 내용만 보더라도 충분히 GF100의 성능을 기대할 만 하다. 아직까지 제품을 직접 만져볼 수 없다는 것은 아쉬운 일이지만 현재 추세라면 약속대로 3월 중에 제품을 내놓을 수 있을 것으로 보인다. 엔비디아 GF100이 정말 그렇게 잘난 녀석인지는 그 때 다시 확인해 보면 될 일이다.
베타뉴스 방일도 (idroom@betanews.net)
Copyrights ⓒ BetaNews.net
-
- 목록
- 위로