LightSpeed Memory Architecture Este es el nombre que Nvidia ha dado a su manera de suavizar el gran problema del que han sufrido todos los chips gráficos hasta estos días: el ancho de banda. Este nombre engloba varias técnicas individuales para atacar el problema del ancho de banda. El primero es un controlador de memoria cruzado, o como le llama Nvidia, Crossbar memory controller. Es un conjunto de cuatro (4) controladores de memoria, hasta ahora todos los demás chips siempre habían contado con un solo controlador de memoria de 256bits (128 bits DDR), mientras que en nuestro caso actual contamos con 4 controladores de 64bits entre la memoria y la GPU.  Esquema del controlador de memoria cruzado del chip GeForce3
¿Y qué beneficios ofrece? Muy habitualmente, cuando el controlador de memoria se está utilizando para transferir datos específicos, no está usando ni de lejos todo el ancho de 256bits de direccionamiento, y mucho menos toda la memoria de la tarjeta. Sin embargo, aunque esto ocurra, en realidad está ocupando todo el espacio de direccionamiento, y aunque haya otras instrucciones esperando para acceder a la memoria, estas deberán esperar a que termine la primera. Dicho de otro modo, si la cantidad de datos a transferir es menor a la cantidad de datos que el controlador de memoria es capaz, entonces sólo una porción del ancho de banda potencial está siendo usada. Como media, el controlador habitual de memoria es capaz de llenar un 50% del ancho de banda. Z-Occlusion Culling Esta es la segunda técnica que forma parte de la LightSpeed Memory Architecture. Esta técnica es una forma de HSR (Hidden Surface Renoval), es decir, de no renderizar los objetos que son ocultados por otros que quedan por delante de ellos en una escena 3D. Es decir, una forma de intentar eliminar e máximo Overdraw posible, aunque esta técnica difiere mucho de la usada por las tarjetas de PowerVR KYROI/II. El chip GeForce3 incorpora una unidad llamada Z-Occlusion Culling Unit que intenta determinar si un píxel terminará siendo visible. Si esta unidad determina que no lo será, este no será renderizado, el frame buffer no será accedido y el ancho de banda será liberado para el siguiente píxel visible. Z-Buffer compression La última técnica que forma parte de este grupo es la compresión sin pérdidas del buffer Z (Lossless Z compression). El Buffer Z contiene datos que representan la profundidad de los objetos, y normalmente es accedido (lectura/escritura) para cada píxel a renderizar, actualizando su profundidad en la escena actual. Para minimizar el tráfico de este bus, el chip GeForce3 utiliza un algoritmo Hardware de compresión sin pérdidas de 4:1 para reducir el consumo de ancho de banda. El algoritmo es totalmente transparente a las aplicaciones y funciona 100% por Hardware en tiempo real y no influye en la calidad de imagen. Esta técnica es muy parecida al Hyper-Z de ATI. HRAA: Antialiasing a Alta Resolución Uno de los mayores problemas en la calidad de imagen para muchos usuarios de juegos para PC es el efecto denominado aliasing o "efecto escalera" en los bordes de los objetos que es muy evidente en resoluciones bajas. Hasta ahora los anteriores chips no eran suficientemente potentes para poder aplicar antialiasing a pantalla completa (FSAA) a buenas resoluciones, con lo que debíamos elegir: jugar sin efecto escalera, pero con una definición en las texturas muy baja, o jugar a resoluciones mayores con muy buena definición pero en las que aún se nota el efecto escalera, aunque en poco grado (dependiendo del juego y/o escena). Esto era debido al método empleado para FSAA por Nvidia hasta el momento, llamado SuperSampling: Las algoritmos de las técnicas de antialiasing implican una toma de muestras del contenido de cada píxel de la imagen en múltiples posiciones, lo que significa que el color es computado en más de una localización dentro del área cubierta por el píxel. El resultado de dichas muestras se combinan para determinar el resultado final del color del píxel. "Supersampling" es una técnica de antialiasing que aplica la fuerza bruta, es decir, renderiza la imagen actual a una resolución mucho más elevada, y la escala y filtra de nuevo a la resolución anterior. Esto significa que FSAA 4x (2x2) renderiza internamente la imagen a una resolución 2 veces mayor en horizontal y vertical. Es evidente que esto implica un descenso de rendimiento muy elevado. Con la llegada del GeForce3, se introduce un nuevo método de FSAA basado en la técnica de Multisampling. Esta técnica funciona con procesadores que "saben" que se van a usar múltiples muestras de un píxel para calcular su color final, es decir necesitan circuitos internos destinados a ello (Hardware). La GeForce3 GPU posee líneas de datos internas mas anchas para gestionar estas múltiples muestras y re-usar la misma información de texturizado para cada muestra del mismo píxel, permitiendo reducir el coste en ancho de banda y memoria usada para ello. Los patrones para tomar las muestras de los píxels son los siguientes:  Patrones FSAA 2x / 4x y Quincunx
El primero es el patrón normal que se usa en SuperSampling FSAA2x, el siguiente FSAA4x y el último el nuevo patrón que introduce Nvidia MultiSampling Quincunx antialiasing. El modo Quincunx coge los datos existentes de los píxels vecinos para computar el color final de un píxel en vez de crear muestras adicionales por cada píxel, de este modo, se reduce en gran cantidad el consumo de memoria gráfica requerida para dicho proceso. Además, produce una calidad de imagen final cercana al modo FSAA 4x con coste de rendimiento un poco superior al FSAA 2x.  Memoria consumida por modos FSAA
Veamos un par de comparaciones de los modos de antialiasing.   Comparaciones de los modos de antialiasing
Todo esto está muy bien, pero, ¿A qué resolución se puede activar con buen rendimiento el modo FSAA Quincunx? De aquí viene el nombre HRAA (High Resolution AntiAliasing), ya que el GeForce3 permite jugar con él activado a 1024x768x32bits a prácticamente todos los juegos. |