- Shaders Unificados
-
El término Unified Shader Model se usa para describir dos conceptos similares aunque distintos: la Arquitectura de Shaders Unificados y el Modelo de Shaders Unificados.
Unified Shader Model
El Unified Shader Model (conocido en OpenGL simplemente como el "Unified Shader Model", y en Direct3D 10 como "Shader Model 4.0") usa un conjunto de instrucciones muy consistente para todos los tipos de shaders.[1] Todos los tipos de shader tienen casi las mismas capacidades -pueden leer texturas, buffers de datos y realizar el mismo conjunto de operaciones aritméticas.
Sin embargo, el conjunto de instrucciones no es exactamente el mismo entre los diferentes tipos de shader -por ejemplo, sólo el pixel shader puede leer texturas con gradientes implícitos de coordenadas; sólo el geometry shader puede emitir primitivas adicionales; etcétera.[1]
Los primeros modelos de shaders (como el Shader Model 1.x) usaban conjuntos de instrucciones muy diferentes para vertex y pixel shaders, teniendo los vertex shaders un conjunto mucho más flexible. Los modelos posteriores (como el Shader Model 2.x y el 3.x) redujeron las diferencias, orientándose hacia el Unified Shader Model.
Unified Shading Architecture
Cuando el dispositivo de gráficos soporta Unified Shader Model, tiene sentido diseñar sus unidades de computación para que cualquiera de ellas puede ejecutar cualquier tipo de shader. Cuando estas unidades computacionales están "unificadas", a eso se le llama Unified Shading Architecture. Muy a menudo dicho hardware está compuesto de un conjunto de unidades de cálculo y una unidad para el balanceo de carga y la asignación dinámica que distribuye las tareas de shading entre las unidades de cálculo.
No se requiere que un dispositivo que soporte Unified Shader Model tenga Unified Shading Architecture, y viceversa. Un dispositivo Direct3D 10 puede mantener sus procesadores de vértices, geometría y pixeles dedicados (aunque, debido a que tendrían un conjunto de intrucciones muy similares, a nivel de hardware serían muy similares). Por otro lado, un hardware temprano tecnológicamente (por ejemplo, con Shader Model 3.0) puede tener una arquitecture unificada, como en el caso del chip Xenos de la Xbox 360.
La Arquitectura de shaders Unificados permite un uso más flexible del dispositivo de visualización de gráficos.[2] Por ejemplo, en una situación en la que haya mucha sobrecarga con la geometría, el sistema podría ordenar a más unidades de cálculo que procesasen los shaders de vértices y geometría. En casos en los que la sobrecarga sea con el cálculo relacionado con los píxeles y haya poca carga con los vértices, se podría desviar el cálculo para que más unidades realizasen los cálculos de los pixel shaders.
Procesadores gráficos que tienen una arquitectura de Shaders Unificados incluyen: Nvidia GeForce 8 series, Geforce 9 series, GeForce 200 Series y GeForce 400 Series, ATI Radeon HD 2000, Radeon HD 3000, Radeon HD 4000 y Radeon HD 5000 series, S3 Graphics Chrome 400, Chrome 500, Intel GMA X3000 series y el chip gráfico Xenos de la Xbox 360.
Referencias
- ↑ a b Microsoft (ed.): «Common Shader Core (DirectX HLSL)». Consultado el 17-08-2008.
- ↑ «GeForce 8800 GTX: 3D Architecture Overview». ExtremeTech. Consultado el 17-08-2008.
Categoría:- Gráficos de computador en 3D
Wikimedia foundation. 2010.