자유롭게 게시물을 올릴수있는 게시판입니다.
  • 유년추억
  • 학교생활
  • 입시준비
  • 대학생활
  • 군생활
  • 알바생활
  • 취업준비
  • 직장생활
  • 원룸생활
  • 연애중
  • 결혼준비
  • 집안살림
  • 자녀교육
  • 창업준비
  • 이민유학
  • 노후생활
  • 전체보기


엔비디아 , 지포스 FX로 CG 시장 노린다.

 


엔비디아 , 지포스 FX로 CG 시장 노린다.







     2003.02.06







코드명 NV30으로 알려진 엔비디아의 야심작, 지포스 FX의 정식공개가 얼마 남지 않았습니다. 이미 잘 알려진대로 최근 수세에 몰린 엔비디아를 구하기에는 성능의 도약이 그리 크지 않다는 의견이 지배적입니다. 이에 대한 전문적인 설명을 올립니다. 참고로 모든 이미지는 www.pcpop.com의 것입니다. 아직 정식공개가 되지 않은 점을 참고하시기 바랍니다.



인텔과 마찬가지로 ATI의 파상적인 공세에 한동안 시달려야 했던 엔비디아. 그동안의 설움을 한꺼번에 날려버릴 비밀병기인 FX가 등장을 기다리면서 다시 비상을 준비하고 있다.

다이렉트X 9.0에 최적화된 지포스 FX는 강화된 쉐이더를 바탕으로 차세대 그래픽 카드의 가야할 방향성을 보여줌과 동시에 VGA 명가로서의 재건에 힘을 쏟고 있는 엔비디아에 힘을 실어줄 전망이다.



1. 엔비디아가 추구하는 방향성


엔비디아가 목표로 하는 궁극의 GPU는 어떤것일까? 지포스 FX(NV30)의 모습이 점차 윤곽을 들어내면서 사용자들의 많은 관심을 끌고 있는 것도 사실이다. 단지 현재 시점에서 여지껏 알려진 지포스 FX의 모습에서 추측해 볼 수 있는 사실은 기존의 GPU와는 완전히 다른 차세대 프로세서가 될 것이라는 것이다.

지금까지의 GPU는 기능이 한정된 프로그램이 자유롭지 않은 고정된 그래픽 처리 회로의 덩어리였다. 그러나 멀티미디어 API인 DirectX9과 OpenGL 2.0이 등장하면서 다양한 프로그램을 실행할 수 있는 프로그래머블 프로세서로의 변신이 가능해졌고, 이에 맞게 GPU도 변화하고 있는 것이다.

엔비디아가 현재 가장 크게 주안점을 두고 있는 부분은 이번 기회를 통해서 GPU의 프로그램능력을 크게 확장시키고, GPU를 CPU와 동급의 프로그래머블 프로세서로 진화시키는 것이다.








» 독특한 디자인의 GPU. 기존 ATI 레이디언시리즈를 많이 본뜬 모습이다.

이러한 엔비디아의 방향성은 먼저 프로그래머블 연산 유닛 쉐이더의 프로그램능력을 크게 확장하고, 보다 복잡한 쉐이더 프로그램을 지원하는 것으로 나타나고 있다. 또한, 쉐이더의 효율성을 높이기 위해 CPU처럼 명령을 스케쥴링하는 장치의 도입도 필수가 되었다. 한편으로는 고정적인 하드웨어로 이루어지는 처리는 가능한 한 배제해 GPU의 기본구조를 단순화하기도 해야 한다.

결과적으로 이러한 아키텍처는 고클럭과 높은 효율을 실현할뿐만 아니라 프로그램능력을 높이면서 동시에 성능도 최대한 끌어올릴수 있게 된다.


2. 버텍스 쉐이더의 구조를 근본부터 바꾼다.


엔비디아가 이처럼 GPU의 성능을 끝없이 높이고자 하는 것은 영화나 게임에서 등장하는 CG 영화 수준의 리얼한 3D를 표현할 수 있도록 하고자 함이다. 게임의 오프닝 무비와 영화에서는 놀랄 정도로 현실감 넘치는 CG 화면이 등장하는 반면 실제 게임에서는 그 질이 상당한 차이를 보인다. 그 이유는 프로그램능력 때문이다.

GPU의 실시간 CG와 CPU의 CG 영화의 차이는 단순한 폴리곤 수와 텍스처 수의 차이가 아닌 프로그램에 따른 것이다. 따라서, 아무리 텍스처를 덧붙여도 CG 영화와 같은 품질의 CG를 만드는 것은 불가능하다. 이것은 정점(Vertex) 데이터와 픽셀(Pixel)데이터가 프로그램을 통해서 다양한 처리가 필요하기 때문이다. 그렇기 때문에 CG영화는 CPU 상에서 제작되며 비 실시간으로 제작된다.

그러나 엔비디아는 앞으로 GPU의 프로그램능력을 향상시킴으로서 CG무비 수준의 영상을 PC에서 실시간으로 표현할 수 있도록 한다는 계획이다.








» 이 정도 실사에 가까운 컴퓨터 그래픽을 개인용 PC에서 처리한다면...

이러한 목적을 위해 엔비디아가 어떤 아키텍처를 채용했는지 알아볼 필요가 있다. 엔비디아는 지포스FX의 현재까지도 내부구조를 확실하게 밝히진 않고 있다. 그러나 기능과 칩의 크기로 다음과 같은 대략적인 추측은 가능하다.

먼저 지포스FX에서 기존 GPU가 가지고 있던 하드웨어 T&L과 고정 텍스처 유닛은 제거되었다. 하드웨어 T&L은 버텍스 쉐이더에서, 기존 텍스처 처리는 픽셀 쉐이더에서 처리되는 것이다. 하드웨어적으로 가진 기능들을 소프트웨어적으로 바꾼 것이다. 이것이 DirectX9세대 GPU의 기본구조이다.

그러나 하드웨어 T&L과 고정 텍스처 유닛의 제거가 DirectX9 GPU의 특징이긴 하지만 지포스FX는 약간 특수한 형태를 띄고 있다. 예를 들어 지오메트리 처리를 담당하는 버텍스쉐이더가 지포스3에서 1개, Xbox의 XGPU와 지포스4Ti는 2개를 가지고 있었다. 그러나 지포스FX는 버텍스 쉐이더가 몇 개라고 말할 수 없는 거대한 연산 유닛으로 합쳐졌다.

지포스FX 버텍스 쉐이더의 연산 유닛은 다수의 연산 유닛으로 분해되어 그 연산 유닛들을 제어하는 컨트롤러를 장착한 형태이다. 그리고 컨트롤러는 쉐이더 프로그램을 멀티 쓰레드로 실행할 수 있도록 연산 유닛을 제어한다. 즉, 여러개의 쓰레드 처리를 다수의 연산 유닛이 나누어 처리하는 것이다. 결국 CPU가 연산 유닛에 명령을 스케쥴링해 보내는 것과 같은 구조를 지포스FX는 가지고있는 것이다. GPU는 처리의 기본이 스트리밍이기 때문에 CPU와 다르지만 유사한 것은 분명하다.

지포스FX는 이 아키텍처로 버텍스 쉐이더의 효율을 지포스4Ti에 비해 3배까지 향상시킨 것으로 알려졌다. 더불어서 엔비디아는 버텍스 쉐이더의 명령어 셋도 확장시켰다. DirectX9의 버텍스 쉐이더는 2.0이지만 지포스FX는 독자적인 확장을 통해 2.0+라 부르고 있다.

현재 DirectX9에서는 1개의 버텍스 쉐이더 프로그램이 최대 1024개의 명령어만을 지원하지만 지포스FX는 최대 65536개의 명령어를 지원한다. 즉, 규모가 크고 복잡한 쉐이더 프로그램을 만들 수 있는 기반이 된다.

또한, 버텍스 쉐이더의 명령어 셋도 확장되었다. 지포스FX에서는 삼각함수 등의 연산명령을 통해서 물결치는 바다의 파도 같은 효과를 GPU상에서 간단한 연산으로 표현할 수 있다. 기존에는 CPU에서 모델의 데이터를 변환시켜 수행한 그래픽을 GPU에서 가능하게 되는 것이다. 즉, CPU에서 GPU로 더 많은 그래픽 처리 작업이 이전되고 있는 것이다.


3. 달라진 픽셀 쉐이더의 구조


픽셀 쉐이더의 구조도 크게 바뀌었다. 지포스4Ti의 픽셀 파이프라인은 4개였지만 지포스FX에서는 6개로 늘어났다. 또한, 파이프라인마다 장착되어있던 텍스처 유닛은 없어지고 대신 모든 파이프에서 억세스가 가능한 텍스처 유닛으로 대체되었다.

이 텍스처 유닛이 텍스처의 입출력을 처리하고 파이프라인 전체에 클럭당 8개의 텍스처를 처리하도록 되어있다. 이것은 CPU의 경우 데이터 입출력을 담당하는 로드 스토어 유닛(Load Store Unit)을 연산 유닛에서 분리해 효율을 높인것과 유사한 것이다.

더불어서 엔비디아는 픽셀 쉐이더의 아키텍처도 확장시켰다. 특히 눈에 띄는 것은 128비트 정밀도의 부동 소수점 데이터를 사용한 것이다. 즉, 지포스FX의 픽셀 쉐이더는 버텍스 쉐이더와 같은 정밀도의 데이터를 처리할 수 있게 된 것이다. 또한 명령어 셋도 버텍스 쉐이더에 가깝게 확장했다.


4. 발달하는 GPU와 CPU의 기능 차이


이렇게 보면 지포스FX는 다른 GPU보다 더욱 프로그래머블한 제품이다. 오히려 CPU와 유사한 면이 더욱 많다. 그러나 CPU와는 근본적으로 다를 수밖에 없다. 최대 차이는 병렬화부분이다. GPU는 기본이 스트리밍 데이터의 처리이므로 병렬처리가 용이하다.

각각의 처리에 의존성이 없는 경우가 많고, 병렬 유닛에서 지속적인 처리가 가능하다. 멀티 쓰레드로 처리를 진행시키는 것도 CPU에 비해 쉽고 한 클럭에 다수의 정점과 픽셀의 처리를 병렬로 할 수 있다.

반면 CPU의 병렬화에는 한계가 있다. 현재 CPU가 평균적으로 처리할 수 있는 명령이 한 클럭당 3개 정도이다. 하이퍼 쓰레딩의 경우 2개의 스레드를 처리하는 것에 불과하다.

이러한 차이로 GPU는 내부 연산 유닛을 계속 늘려 병렬화시키는 것이 용이하다. 현재의 지포스FX의 파이프라인은 8개지만, 다음 세대에서는 16파이프라인이 되는것도 특별한 일도 아닌 것이다.








» 전원부와 방열쿨러를 보면 엔비디아의 고민을 알 수 있다.

그에 비해 CPU는 기본적으로 1개 쓰레드를 처리하는데 그친다. 때문에 메모리에서 데이터와 명령 입출력으로 인한 막대한 손실이 발생한다. 이 손실을 줄이기 위해 CPU는 칩에 내장된 트랜지스터의 대부분을 캐시에 할당하고 있다.

반면에 GPU는 그러한 손실이 없다. 병렬로 처리되기 때문에 다소의 데이터 손실이 발생하더라도 다른 처리가 평행하게 진행되므로 늦어지는 경우가 없고, 스트리밍 처리가 주류이기 때문에 필요한 데이터를 미리 읽어들이는 것도 쉽다.

이러한 장점으로 GPU는 트랜지스터의 대부분을 연산 유닛에 사용할 수 있다. CPU가 메모리 레이턴시를 줄이기 위해 방대한 트랜지스터를 사용하는 반면에, GPU는 트랜지스터를 순수한 컴퓨팅 성능 향상에 사용할 수 있는 것이다. 실제로 지포스FX는 트랜지스터의 대부분을 부동 소수점 연산에 사용한다.

또한 GPU의 경우 연산 유닛도 간단하게 구성된다. 연산 유닛에 내장된 명령은 텍스처 참조와 미분 계산등에 한정되기 때문이다. 때문에 부동 소수점 연산 유닛이라 해도 CPU보다 GPU가 크기를 줄일 수 있는 것이다.



5. 급속하게 전개되는 엔비디아의 GPU 진화


엔비디아는 프로그램능력이 GPU발전의 핵심이라고 생각하고 있는 듯 보인다. 그렇기 때문에 지포스FX를 선두로 GPU 아키텍처를 한꺼번에 DirectX9세대로 바꾸고자 하는 것이다.

앞으로 1년안에 엔비디아는 모빌용에서 밸류 제품군까지 지포스FX 아키텍처를 사용한 제품으로 대체할 예정이다.

또한, 2003년 중반에는 지포스FX의 아키텍처를 확장한 NV35를, 2003년 말에서 2004년 전반에 새로운 아키텍처의 NV40이 등장하게 된다.

NV40은 다음세대 공정인 90nm나 0.13㎛ 공정보다 더욱 미세한 공정으로 제조가 될 것이며, 내장된 트랜지스터는 지포스FX(1억 2500만개)의 2배인 2억개 이상될 것으로 전망된다.

물론 이같은 트랜지스터의 증가엔 어느정도 제약이 따른다. 그것은 바로 다이사이즈 때문이다. 기존 엔비디아의 GPU는 다이가 140~150㎟ 정도였지만 NV30의 다이는 그보다 더 클것으로 생각된다.

NV30의 다이사이즈가 비정상적으로 큰 것은 엔비디아의 GPU가 무어의 법칙을 넘어 비대해졌기 때문이다. 지포스FX를 제조하는 0.13㎛공정은 기존 지포스4Ti를 제조하던 0.15㎛공정에 비해 면적을 약 70%정도로 줄일 수 있다. 즉, 트랜지스터 수가 같다면 70%의 다이사이즈이며, 같은 면적이라면 140%의 트랜지스터를 내장할 수 있다.

그러나 지포스4Ti에 비해 지포스FX는 트랜지스터의 수가 2배로 증가했다. 그렇다면 계산상으로 지포스FX는 지포스4Ti에 비해 다이사이즈가 140%로 커졌다는 결론이 나온다. 즉, 약 200㎟정도가 되는 것이다. 반도체 비용은 다이사이즈가 클수록 높아진다. 200㎟라는 크기는 0.18㎛공정의 펜티엄4(Willamette)과 비슷한 정도이며, 결국 엔비디아는 NV30을 고가에 판매해야 할 것이다.

그러나 엔비디아는 가격 문제로 고민할 생각은 없는 듯 하다. 앞으로도 무어의 법칙을 뛰어넘어 GPU의 고성능화를 추진할 계획으로 있기 때문이다. 따라서 엔비디아의 GPU 가격은 더욱 높아질 수 밖에 없다. 이러한 가격상승은 기존 GPU시장만이 아닌 보다 고부가가치의 시장을 노리게 될 것이며 그것은 결국 CG 시장이 될 수밖에 없다는 것을 의미한다.

 



2004-01-07 13:46:53
477 번 읽음
☞ 로그인 후 의견을 남기실 수 있습니다
 캐시선물





365ch.com 128bit Valid HTML 4.01 Transitional and Valid CSS!
태그