본문 바로가기
IT/Hardware/Graphics

DirectX 10.1으로 만들어진 Windows 7

by 에비뉴엘 2009. 7. 27.
반응형


Windows 7으로 데스크탑 구현을 맡는 데스크탑 윈도우 매니저(DWM)는, DirectX 10.1 API를 사용하고 있다. 이것이「Windows 7은 DirectX 10.1으로 만들어졌다 」라고 말해지고 있는 이유다.

 그러나, Windows 7 RC판의 시스템 요건을 보면, 그래픽의 요건은「128 MB의 메모리를 탑재한 DirectX 9를 서포트하는 그래픽스」가 되고 있다. 즉 Windows 7에서는, 「DirectX 9 대응 GPU를 DirectX 10.1 대응으로서 동작한다」라고 하는 것이다. 도대체 무슨 일일까?


DirectX 10.1을 소프트웨어로 에뮬레이션 

DirectX 10.1에서는, DirectX 9세대의 GPU에서도 DirectX 10.1의 기능이 동작하도록, 소프트웨어 에뮬레이션의 기능이 준비되어 있다. 이것에 의해 DirectX 9세대의 GPU이어도, Windows 7의 유저 인터페이스(UI)에 사용되고 있는「Windows Aero」의 반투명 윈도우등을 이용할 수 있다. 그러기 위해서는 Vista용 드라이버가 아니고, Windows 7용의 드라이버를 인스톨 할 필요가 있다.


 DirectX 9세대의 GPU라고 해도, 기능 레벨(Shader Model)에는 차이가 있다. DirectX 10.1에서는 Sharder Model의 차이도 고려하고, 각 회사별로의 GPU를 성능레벨 나누어, 부족한 기능을 소프트웨어 에뮬레이션으로 보충한다.

 DirectX 9세대의 GPU는, Feature Level9_1으로부터 Feature Level9_3까지, 3 단계로 나눌 수 있고 있다. DirectX 9세대의 GPU로서 가장 저기능의 카테고리로 분류되는 Intel G965(GMA X3000), GeForce FX, S3사의 GPU, SiS Mirage에서도, Windows 7은 이용할 수 있다.

다만, GPU 기에 부족한 기능을 소프트웨어 에뮬레이션으로 실현되고 있기 때문에, Feature Level9_1 레벨의 GPU에서는, 다른GPU에 비하면 CPU 부하가 상당히 심해진다. 지금 판매되고 있는 신제품, 넷북/넷탑의 상당수가 이것에 해당한다.

 DirectX 9세대라도 상위에 위치하는 Feature Level9_3 레벨의 GPU로서는, SM3. 0을 지원하는 NVIDIA의 GeForce 6800 시리즈 이상, ATI(AMD) Radeon X1300 시리즈 이상이 포함된다. 이것들은 4~5년전의 GPU다. 

현재 매장에 줄지어 있는 신제품 PC에서는, DirectX 9세대의 GPU보다는 고성능인 GPU가 사용되고 있다. 이것들은 충분한 퍼포먼스로 Windows 7을 동작할 수 있다.


Warp10에 의해, WDDM 이전의 구식 GPU에서도 Windows 7은 움직인다

 또 DirectX 10.1에는, WDDM 대응은 아닌 낡은 GPU에서도 Windows 7을 이용할 수 있다. 이것은, DirectX 10.1 대응의 GPU 기능을 모두 소프트웨어 에뮬레이션으로 처리하는「Direct3D Warp10」기능이 준비되어 있기 때문이다.

 Warp10에 의해, DirectX 9 이전의 낡은 GPU에서도 Windows 7을 움직일 수 있다. 그러나, 모든 것을 소프트웨어 에뮬레이션으로 처리하기 때문에, 퍼포먼스는 매우 낮다. 그렇다고 DirectX 10게임이 동작되는건 아니다.
Warp10는 어디까지나, 기업에 남는 낡은 데스크탑이나 노트북에서도, 어떻게든 Windows 7의 Aero기능을 위해서 제공되고 있다고 말할 수 있다.

 많은 유저에게 있어서, 「Windows 7을 움직이기 위해서, 새로운 그래픽 카드를 구입한다」라고 한 필요는 없을 것이다. DirectX 9세대의 GPU에서도 동작은 한다. 물론 DirectX 10세대의 GPU라면, 보다 높은 성능으로 동작할 것이다.


신기능「Direct2D」와「DirectWrite」란?

 Windows 7에서는 새로운 그래픽스 API로서「Direct2D」와「DirectWrite」이 서포트되었다.

 Direct2D란, 2D의 벡터 그래픽이나 비트맵 등, 옛부터 있는 그래픽스 API「GDI」이나「GDI+」이 서포트하고 있던 기능을 DirectX 베이스로 이행해, GPU의 기능을 이용해(=CPU 부하가 적다) 고속으로 구현 할 수 있도록 한 것이다.




 DirectWrite는, 폰트의 표시 등에 GPU를 이용하고, 고속화한 API다. 예를 들면, Windows XP로부터 도입된 폰트의 서브 픽셀 렌더링 기술「ClearType」의 경우, GPU로 처리시켜 고속으로 표시할 수 있다. 폰트의 스무딩이나 그레이 스케일등을 GPU측에서 처리시키는 것으로, CPU에 부담을 주지 않고 표시할 수 있다.

 게다가 알파벳 문자를 변형시키는 일도, GPU로 처리할 수 있게 되어, CPU에 부하를 걸지 않고 열중한 문자 표시를 할 수 있다.


 Direct2D와 DirectWrite는, DirectX 10.1으로부터 추가된 API 때문에, 이러한 기능을 이용하려면 , 어플리케이션측이 대응할 필요가 있다. 또, Windows 7에 들어가 있는「계산기」 등은, Direct2D나 DirectWrite는 사용하고 있지 않다.

 Direct2D나 DirectWrite의 기능을 충분히 활용한 어플리케이션이 나올 때까지는, Windows 7 릴리스 후 당분간 시간이 걸릴 것이다(MS Office 2010에서는 지원한다). 장래적으로 어플리케이션은, GDI/GDI+로부터 Direct2D/DirectWrite로 이행해 간다고 생각된다. 그렇게 되면, GPU의 기능을 비즈니스 어플리케이션에서도 살릴 수 있게 될 것이다.


다른회사 GPU혼용을 지원

 DirectX 10.1의 기능이라고 하는 것은 아니지만, Windows 7에서는 다른 GPU를 2개 동시에 이용할 수 있게 되었다. Vista까지는, AMD CrossFire나 NVIDIA SLI등에서, 같은 GPU 메이커의 복수의 GPU를 동시에 사용할 수 있었다. 그러나, 다른 메이커의 GPU를 동시에 사용할 수 없었다.

 Windows 7에서는, 다른 GPU를 동시에 움직일 수 있다. 이 기능을 이용하면, AMD와 NVIDIA의 그래픽 카드를 1대의 PC에 꽂고, 하나의 데스크탑으로서 사용할 수 있다. 사용에 즈음해서는, 그래픽 드라이버가 WDDM 1.1에 대응하는 것이 필요하다.


 칩 세트 내장 GPU와 외부부착 GPU의 양쪽 모두를 이용하고, 멀티 모니터 환경을 이용한다, 라고 하는 사용법을 생각할 수 있을 것이다.



이러한 이유로 Nvidia가 DirectX10을 고수하던 정책을 벗어나 중저가의 신제품이 Windows 7의 기본요건을 위해 DirectX 10.1을 지원하게 된것이다. 



반응형

댓글