Discutida vagamente durante el lanzamiento de la serie X1000 hace un año, la posibilidad de un acceso de bajo nivel (lo cual significa un acceso directo al GPU sin necesidad de usar un API como Direct3D u OpenGL) ha sido mostrada en detalle por ATI a los desarrolladores en el evento SIGGRAPH 2006.

Este acceso se logra por medio de una máquina virtual llamada DPVM (Data Parallel Virtual Machine). Mediante esta máquina virtual se ve al GPU como una unidad de cálculos paralelos con su propio controlador de memoria y sistema de administración de recursos, enmascarando algunos aspectos que son usados solamente para renderizar gráficos. En otras palabras, solo las unidades para pixel shaders se encuentran expuestas, mientras que el resto (vertex shaders por ejemplo) es como si no existiera.

La idea de este acceso de bajo nivel es permitir a los desarrolladores tener acceso directo al hardware, de tal manera que puedan lograr implementar optimizaciones que no serían posibles por medio del API. Este control también abarca a la memoria de video. No será únicamente el driver el encargado de manejar las políticas sobre qué data guardar, dónde residirá y cuándo copiarla, el desarrollador también tendrá este mismo control. Por último, con el DPVM los desarrolladores tendrán acceso a las funciones de la familia Radeon X1000 que no son usadas ni en DirectX 9 ni en OpenGL, tales como el “scattering” (dispersión) que permite la posibilidad de escribir en memoria cualquier tipo de resultado temporal.

Este proyecto aún está en desarrollo y está lejos de una herramienta usable en entorno de producción. Sin embargo el ver a ATI dar acceso de bajo nivel a su GPU puede llevar a las siguientes especulaciones de sus posibles usos:

  • - Permitir el uso de un GPU de ATI como un coprocesador dentro de la futura plataforma de AMD, Torrenza.
    - Permitir el uso de una tarjeta de video actual DX9 para procesar efectos de físicas en juegos DX10.



Representación del funcionamiento del DPVM

Fuente: BeHardware