--> -->
PC 하드웨어 전문 블로그입니다.


사용자 삽입 이미지

2009년 말에 NVIDIA는 코드네임 페르미를 사용하는 새로운 그래픽 아키텍처를 공개했었습니다. 거의 완전한 통용 계산용인 이 아키텍처는 NVIDIA의 새로운 영역에 대한 결심을 보여준 것입니다. 올해 초의 CES 2010에서 NVIDIA는 마침내 페르미 아키텍처를 사용하는 고급형 그래픽카드인 GF100을 공개하고, 멀티 스크린 환경을 구축하는 기술인 3D 비전 서라운드를 전시함과 동시에, 내부에서 여러 개의 새로운 데모를 시연했습니다.

오늘 NVIDIA는 마침내 페르미 GF100의 게임 부분에서의 여러 특징을 공개하였습니다. 이것이 바로 일반 소비자들이 제일 관심을 가지고 있는 부분이며, 우리도 여러분과 같이 나누려 합니다.

하지만 우린 아직도 최종 리테일 판매 버전의 GF100을 보지 못하였습니다. 상당 수의 중요 코어 스펙들도 아직은 부족하기에, 이런 것들을 기대하고 이 글을 클릭하신 분들이라면 실망하시게 될 것입니다.

- 코어 크기
- 클럭
- 제품 모델
- 전력 소모량
- 판매 가격
- 게임 성능

페르미 칩은 아직 제대로 된 양산을 시작하지 않았으며, 코어 크기가 매우 크기에 수율에 영향을 미치게 됩니다. 또한 수율은 클럭에도 관계가 있으며, 전력 소모량과 성능이 받쳐 주는 전제 하에 클럭을 정할 수 있습니다. 이것들은 전부 가격을 결정하는 중요 요소입니다. 당연히, GF100은 라데온 HD 5870보다는 빨라야 할 필요가 있으며, 그 차이는 커야만 합니다. 가격과 전력 소모량이 더 많아지는걸 피할순 없으며, 다만 그것이 얼마나 더 늘어나는지가 중요할 뿐입니다.

아래 그림은 2009년 9월 1일에 촬영한 페르미 GF100 칩의 코어 사진입니다.

사용자 삽입 이미지Canon | Canon EOS-1Ds Mark II | Aperture priority | Partial | 1sec | F/16.0 | 0.00 EV | 65.0mm | ISO-400 | Off Compulsory | 2009:09:01 13:27:17

1. GF100 게임 아키텍처에 존재하는 2개의 새로운 심장

우리는 이미 GF100이 TSMC의 40나노미터 공정으로 제조되고, 대략 30억개의 트랜지스터를 내장하며, 512개의 스트림 프로세서(SP)를 내장한다는 것을 알고 있씁니다. 혹자는 이것을 NVIDIA의 공식 설명대로 쿠다 코어라고 부르기도 합니다. 32개의 이런 코어가 모여 스트리밍 멀티 프로세서(SM) 배열을 구성하며, 이것이 4개가 모여 하나의 그래픽 프로세싱 클러스터(GPC)를 구성합니다. GF100도 이렇게 3개의 층으로 나뉘어져 있는데, 4개의 GPC, 16개의 SM, 512개의 SP가 됩니다.

그 밖에도 GF100은 64개의 텍스처 어드레싱 유닛, 256개의 텍스처 필터링 유닛, 48개의 ROP 유닛이 있으며, 메모리 버스는 384비트, GDDR5 메모리 칩을 사용합니다. 코어/쉐이더/메모리 클럭은 아직 정해지지 않았으며, 메모리 용량도 아직 확실하지 않습니다.

사용자 삽입 이미지

그럼 먼저 NVIDIA가 공개한 비교적 최신의 GF100 아키텍처 구조도를 보도록 합시다. 다음에 몇개의 중요한 부분을 설명하지요.

사용자 삽입 이미지

 NVIDIA가 페르미 GF100을 완전히 새로운 아키텍처라고 말하는 것이 아주 말이 안 되는 것은 아닙니다. 통용 계산 부분이건, 게임 부분이건 모두 상당한 변화가 있었으며, 거의 모든 모듈을 새로 조직하였습니다. 어떤 것은 없애고 어떤 것은 옳기고 어떤 것은 보강하였습니다. 또한 새로 라스터(Raster) 엔진과 폴리모프(Ploymorph) 엔진을 새로 증가하였습니다.

5.jpg

라스터 엔진은 엄격하게 말해서 새로운 하드웨어는 아닙니다. 오직 예전에 존재하던 관련 부분을 처리하던 하드웨어들을 떼내어 조합한 것이며, 스트림 과정 중에서 Edge/Triangle Setup, Rasterization, Z-Culling 등의 조작을 실행합니다. 클럭 사이클 순환 주기마다 8개의 픽셀을 처리할 수 있으며, GF100에는 4개의 라스터 엔진이 있어, 각각의 GPC마다 1개씩 분배됩니다. 따라서 전체 코어에서 1 사이클마다 32개의 픽셀을 처리할 수 있습니다.

6.jpg

폴리모프 엔진은 Vertex Fetch, Tessellator, Viewport Transform, Attribute Setup, Stream Output 등의 처리를 담당하며, 다이렉트 X 11에서 제일 큰 변화 중의 하나인 테셀레이터도 여기서 처리됩니다. GF100에는 16개의 폴리모프 엔진이 있어, 모든 SM마다 1개씩 포함되기에, 모든 GPC에 4개씩 있는 셈입니다.

사용자 삽입 이미지

폴리모프 엔진은 지오메트리 유닛을 바꾼 것이 아니며, 성능을 15배 강력하게 한 것입니다.이것은 지금까지 존재하던 고정 기능의 하드웨어 유닛을 결합하여 하나의 유기적인 총체를 만든 것입니다. 비록 한개 한개의 모든 폴리모프 엔진이 간단한 순서로 설계되어 있다고 하지만, 16개가 모여서 CPU와 똑같이 아웃 오브 오더(Out of Order) 명령을 진행하고, 병행 처리도 가능합니다. NVIDIA는 이 폴리모프 엔진에 전용 통신 채널을 설정하였느데, 그것의 임무는 처리 과정 중에 폴리모프 엔진의 유기적인 연결성을 유지해주는 것입니다.
당연히 이러한 변화는 매우 복잡하며, NVIDIA의 엔지니어들이 무수한 노력과 자원과 시간을 소모하게 하였습니다. 사실상 폴리모프 엔진이 GF100 코어에서 제일 큰 변화라고 말할 수 있는데, 이것이 작년에 제때 발표되지 못했던 제일 큰 원인이기도 합니다. NVIDIA의 제품 영엽 부사장인 Ujesh Desai는 "이렇게 큰 GPU를 설계하는 것은 정말 어렵다"라고 말했는데, 사실 여기서 그가 가리킨 것이 30억개의 트랜지스터를 가리킨 것은 아닙니다.

사용자 삽입 이미지
 
텔셀레이터 유닛의 지오메트리 복잡성에 대해 봅시다. 고정 기능 파이프라인이 이미 적용되지 않고, 전체 파이프라인이 수요에 따라 새로 평형을 맞추게 됩니다. 폴리모프 엔진을 통한 병렬 설계하여, 지오메트리 하드웨어는 이제 어떤 고정 유닛의 파이프라인에 국한되지 않고, 칩의 크기에 따라 탄력적으로 줄어들고 커지게 됩니다. 지금까지 GT200/G92나 AMD의 아키텍처와 비교하면 GF100은 또 다른 길을 걷고 있으며, CPU 아키텍처와 비슷한 방법을 취하고 있는 것입니다.

8.jpg

각각의 SM 어레이, 텍스처 유닛, L1/L2 캐시, ROP 유닛과 각각의 유닛 클럭은 모두 지금까지와 완전히 다릅니다. 각 조의 SM에는 4개의 텍스처 유닛이 있으며, 12KB의 L1 텍스처 캐시가 결합되고, 전체 칩에서는 768KB의 공유 L2 캐시와 어울리게 됩니다. 각각의 텍스처 유닛은 하나의 사이클에 1개의 텍스처 어드레스를 찾고, 4개의 텍스처 샘플링을 할 수 있으며, 다이렉트 X 11의 새로운 텍스처 압축 포멧을 지원합니다. ROP 유닛은 총 48개이며 6개로 나뉘는데, 각각 64비트 메모리 채널로 분배됩니다. 모든 ROP 유닛과 전체 칩은 768KB의 L2 캐시를 공유합니다(GT200은 공유 캐시가 아닙니다).

1.jpg

ROP 유닛과 L2 캐시를 제외하면, 다른 모든 유닛의 클럭은 모두 쉐이더 클럭(NVIDIA에서는 이것을 GPC 클럭이라고 부릅니다)과 관련되어 있습니다. L1 캐시와 쉐이더 유닛은 풀스피드로 속도를 맞추며, 텍스처 유닛, 라스터 엔진, 폴리모프 엔진은 하프 스피드입니다. GF100을 오버클럭하려면 여러 새로운 특징들을 이해해야 할 필요가 있습니다.

S06151132.jpg

2. NVIDIA가 어떻게 지오메트리 성능에 초점을 맞추었는가.

마이크로소프트가 다이렉트 X 11 스펙에서 엄격한 제한을 두면서, NVIDIA(와 AMD)가 특징을 자유롭게 발휘할만한 여지가 그리 크지 않게 되었습니다. 회사마다 개성이 크게 차이나지 않기에 그런 부분에 대해 말해봤자 소용이 없으니, 여기서는 NVIDIA가 어떻게 속도를 늘렸는가에 대해 말하겠습니다.

NV30 지포스 FX 5800부터 GT200 지포스 GTX 280까지, NVIDIA 그래픽카드의 지오메트리 성능은 3배가 채 안되게 개선되었습니다. 하지만 쉐이더 성능은 150여배가 늘어났습니다. 하지만 GT200에서 GF100으로 오면서 지오메트리 성능의 성장은 8x 정도에 불과할 뿐입니다.

강력한 지오메트리 성능을 위해, NVIDIA는 테셀레이션과 디스플레이스먼트 맵을 사용하여 더 복잡한 인물, 오브젝트,장면을 만들 수 있게 하면서, 경쟁 상대와 똑같은 수준의 성능을 유지하였습니다. 따라서 16개의 폴리모프 엔진과 4개의 라스터 엔진이 있는 것입니다.

테셀레이션은 AMD 다이렉트 X 11 제품을 선전할때 중요한 부분이지만, NVIDIA는 이보다 더 복잡하게 하여, 이론적으로 말하면 그 효과가 매우 뛰어납니다. 아래는 NVIDIA가 게임 개발사들이 GF100 아키텍처의 잠재력을 발휘하기 위해, 성능을 보장하면서 더 정밀한 게임 화면을 만들어 내게 해주었습니다.

사용자 삽입 이미지
사용자 삽입 이미지
 
9.jpg

테셀레이션의 과정

10.jpg

테셀레이션을 이용한 NVIDIA의 수면 효과 데모

11.jpg

테셀레이션을 이용한 NVIDIA의 머리카락 데모

3. 더 나은 화질

지터드 샘플링(Jittered Sampling) :

다이렉트 X 11에서 그래픽카드의 필요한 특징을 상세히 정의하였지만, 렌더링 후의 작업에 대해서는 언급이 매우 적습니다. 그래서 NVIDIA는 폴리모프 엔진 외에도 지터드 샘플링을 채택하였습니다.

지터드 샘플링은 신기술이 아니라 오랜 기간동안 쉐도우 맵핑과 각종 후처리에서 사용하던 것으로 인접한 텍셀이나 텍스처의 픽셀을 통하여 새로 더 부드러운 그림자의 테두리를 만들어내는 것입니다. 그 단점은 리소스를 엄청나게 소모한다는 것입니다.

다이렉트 X 9/10에서는 지터드 샘플링이 1개의 텍셀이나 픽셀 단위로 작업을 진행하였지만, 다이렉트 X 10.1에서는 Gater4 명령을 사용할 수 있게 되었습니다. NVIDIA는 하드웨어적으로 단독 벡터 명령을 사용합니다. NVIDIA는 자신들의 내부 테스트 결과 새로운 벡터 명령어를 사용했을 때 성능 향상이 두배가 있다고 밝혔습니다.

게임 개발사들에게 있어서, 이것은 하드웨어 리소스를 더 조금 사용한다는 것이고, 게이머들에게 있어서, 더 나은 화질을 볼 수 있다는 것입니다.

12.jpg

13.jpg

안티 얼라이싱의 가속:

AMD와 마찬가지로, NVIDIA도 ROP 유닛에 조정을 하여 MSAA(멀티 샘플링 안티 얼라이싱)에서의 성능 손실을 줄였습니다. 또한 더 많은 ROP 유닛을 통하여 성능을 개선하였습니다.

NVIDIA에서 제공하는 데이터에 의하면, H.A.W.X에서 8x/4x MSAA 모드의 GF100의 성능은 지포스 GTX 285의 2.33배와 1.61배에 달했습니다.

14.jpg

CSAA의 개선:

CSAA는 Coverage Sample Anti-Aliasing을 줄인 것으로, G80 지포스 8800 GTX에서 처음 사용되었는데 당시에는 최고 16x까지 지원했지만 지금은 32x까지 올라갔습니다. 뿐만 아니라 컬러 샘플링과 CSAA를 분리하여, 32x CSAA에서는 8과 24개가 되어, 성능이건 화질이건 명확한 개선이 있습니다. NVIDIA는 GF100 CSAA가 8x에서 32x까지 상승하는데 평균 성능 손실이 7% 정도에 그친다고 밝혔습니다.

GF100에서 Alpha to Coverage는 최대 32개의 샘플 포인트를 전부 사용할 수 있고, 33개의 알파 값 레벨이 있어, TMAA의 품질이 상당히 개선되었습니다.

15.jpg

아래는 NVIDIA에서 제공하는 효과 그림입니다.

사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지

Compute for Gaming:

통용 계산이 발달되면서, 전문 영역과 민간 영역에서의 용도가 끝없이 늘어나고 있습니다. NVIDIA 쿠다의 병렬 계산 아키텍처는 GF100에서도 계속 강력해졌을 뿐만 아니라, 용도가 광범위해져 여러 분야에서 쓸 수 있습니다.

먼저 쿠다 아키텍처는 여러 종류를 통하여 실현될 수 있습니다. 쿠다 C, 쿠다 C++, 오픈 CL, 다이렉트 컴퓨트, PhysX, OptiX Ray-Tracing 등등이 있습니다. 여기에는 NVIDIA가 개발한 방식이 있고, 업계에서 사용하는 표준이 있어, 개발사들이 자유롭게 선택할 수 있습니다.

사용자 삽입 이미지

게임에서, NVIDIA 쿠다 계산 아키텍처는 화면 처리, 가상 묘사, 혼합 렌더링 등을 처리할 수 있으며, 배경의 심도, 모션 블러, 물리 효과, 애니메이션, 인공지능, OIT, 부드러운 그림자 맵핑, 광선 추적 등의 효과를 낼 수 있습니다.

아래는 예입니다.

사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지

NVIDIA는 GF100의 게임 성능이 GT200보다 대폭 상승하였다고 했습니다. 예를 들면 PhysX의 데모에서는 3배의 성능 향상이 있고, 다크 보이드의 게임 물리 가속은 2.1배, 광선 추적은 3.5배, 인공 지능은 3.4배입니다.

3D 비전 서라운드

NVIDIA가 CES에서 공개한 3D 비전 서라운드는 GF100만의 전유물은 아니며 GT200에서도 실현할 수 있습니다. 다만 이제 나온 것을 보니 ATI Eyefinity에 대한 반응인듯 합니다.

ATI Eyefinity는 6대의 모니터에 출력할 수 있지만 3D 비전 서라운드는 최대 3대의 스크린에 출력할 수 있습니다. 하지만 3D 서라운드 효과를 쓸 수 있어, 3D 비전의 강화버전이라 할 수 있습니다.

유감인 것은 라데온 HD 5000 시리즈가 일반 제품도 3대의 모니터에 출력할 수 있는데 비해, 한 장의 GF100이 출력할 수 있는 모니터의 수는 여전히 최대 2대라는 것이고, 3대나 그 이상으 출력하기 위해서는 2장의 GF100으로 SLI를 구성해야 한다는 것입니다. 이것은 듀얼 그래픽 카드 시스템을 사용하여 성능은 괜찮아 지겠지만 돈은 그만큼 더 들게 됩니다.

GF100 아키텍처의 신기술이 아니기 때문에 GT200 지포스 GTX 200 시리즈에서도 똑같이 3D 비전 서라운드를 지원합니다. 사실 NVIDIA는 CES에서도 2장의 지포스 GTX 285를 사용한 시스템을 전시했었습니다.

3D 비전 서라운드 시스템은 3대의 모니터에서 동시에 3D 비전을 이용하여 하나의 모니터에 최고 1920x1080의 해상도로 출력할 수 있습니다. 만약 3D 비전을 사용하지 않고 보통 출력이라면 2560x1600까지 가능합니다.

사용자 삽입 이미지
사용자 삽입 이미지

아래는 NVIDIA의 데모인 Supersonic Sled입니다. 여기서 테셀레이션, 다이렉트 컴퓨트, 피직스등을 사용하며, 3D 비전 서라운드도 지원합니다.

http://images.anandtech.com/reviews/video/NVIDIA/GF100/GF100_Architecture_WMFG_R1.wmv 

사용자 삽입 이미지
사용자 삽입 이미지
 

신고
* 이 포스트는 blogkorea [블코채널 : PC 하드웨어] 에 링크 되어있습니다.
신고
-->
Posted by 네베르쩨바



달력

«   2017/11   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    


Statistics Graph
오늘 방문자 : 127
어제 방문자 : 901
전체 방문자 : 6,876,969