통합 셰이더 모델
Unified shader model3D 컴퓨터 그래픽 분야에서 통합 셰이더 모델(Direct3D 10에서는 "쉐이더 모델 4.0"이라고 함)은 렌더링 파이프라인의 모든 셰이더 단계(기하학, 정점, 픽셀 등)가 동일한 기능을 갖는 그래픽 처리 장치(GPU)의 셰이더 하드웨어의 한 형태를 말합니다.이들은 모두 텍스처와 버퍼를 읽을 수 있으며 거의 동일한 [1]명령 집합을 사용합니다.
역사
이전의 GPU에는 일반적으로 두 가지 유형의 셰이더 하드웨어가 포함되어 있었으며, 정점 셰이더는 단순한 픽셀 셰이더보다 훨씬 더 많은 명령을 가지고 있었습니다.이것에 의해, GPU 전체의 실장 코스트가 삭감되어, 1대의 유닛에 합계해 더 많은 쉐이더가 가능하게 되었습니다.이로 인해 시스템의 유연성이 저하되고 워크로드가 다른 셰이더보다 더 많은 셰이더 세트를 유휴 상태로 둘 수 있습니다.제작의 개선이 계속됨에 따라, 이 구별은 유용하지 않게 되었습니다.ATI Technologies는 Xbox 360용으로 개발한 하드웨어에 통합 아키텍처를 도입했습니다.Nvidia는 Tesla 디자인을 빠르게 따랐습니다.AMD는 2년 후 TeraScale 제품군에 카드 형태의 통합 셰이더를 도입했습니다.그 개념은 그 이후로 보편화되어 왔다.
초기 셰이더 추상화(Shader Model 1.x 등)에서는 정점과 픽셀 셰이더에 대해 매우 다른 명령 집합을 사용했으며, 정점 셰이더는 훨씬 더 유연한 명령 집합을 가지고 있습니다.이후 셰이더 모델(Shader Model 2.x 및 3.0 등)은 차이를 줄여 통합 셰이더 모델에 접근했습니다.Unified 모델에서도 명령어세트는 다른 셰이더 타입 간에 완전히 동일하지 않을 수 있습니다.다른 셰이더 스테이지에 따라서는 몇 가지 차이가 있을 수 있습니다.플래그먼트/픽셀 셰이더는 암묵적인 텍스처 좌표 구배를 계산할 수 있지만 지오메트리 셰이더는 렌더링 프리미티브를 [1]내보낼 수 있습니다.
유니파이드 셰이더 아키텍처
유니파이드 셰이더 아키텍처(또는 유니파이드 쉐이딩 아키텍처)는 그래픽 하드웨어의 모든 셰이더 처리 장치가 모든 유형의 쉐이딩 태스크를 처리할 수 있는 하드웨어 설계입니다.대부분의 경우 Unified Shading Architecture 하드웨어는 컴퓨팅 유닛 배열과 모든 컴퓨팅 유닛이 가능한 한 자주 동작하도록 하는 동적 스케줄링/부하 밸런싱 시스템으로 구성됩니다.
유니파이드 셰이더 아키텍처를 통해 그래픽 렌더링 하드웨어를 [2]보다 유연하게 사용할 수 있습니다.예를 들어 지오메트리 워크로드가 많은 상황에서는 시스템은 정점 및 지오메트리 셰이더를 실행하기 위해 대부분의 컴퓨팅 유닛을 할당할 수 있습니다.정점 부하가 적고 픽셀 부하가 큰 경우에는 픽셀 셰이더를 실행하기 위해 더 많은 컴퓨팅 유닛을 할당할 수 있습니다.
유니파이드 셰이더 아키텍처 하드웨어와 유니파이드 셰이더 모델 프로그래밍 인터페이스가 서로 필요한 것은 아니지만 통합 셰이더 모델을 제공하는 API를 지원하는 하드웨어를 설계할 때는 통합 아키텍처가 가장 적합합니다.
OpenGL 3.3(통합 셰이더 모델 제공)은 통합 셰이더 아키텍처를 갖추지 않은 하드웨어에서도 구현할 수 있습니다.마찬가지로 비통합 셰이더 모델 API를 지원하는 하드웨어는 예를 들어 Xbox 360의 Xenos 그래픽 칩과 같이 통합 셰이더 아키텍처를 기반으로 할 수 있습니다.
통합 셰이더 아키텍처는 Nvidia GeForce 8 시리즈, ATI Radeon HD 2000, S3 Chrome 400, Intel GMA X3000 시리즈, Xbox 360의 GPU, Qualcomm Adreno 200 시리즈, Mali Midgard, PowerVR SGX GPU와 함께 도입되었으며 이후 모든 시리즈에서 사용됩니다.
엔비디아
인텔(R)
ATI/AMD
레퍼런스
- ^ a b "Common Shader Core (DirectX HLSL)". Microsoft. Retrieved 2008-08-17.
- ^ "GeForce 8800 GTX: 3D Architecture Overview". ExtremeTech. Retrieved 2013-11-10.