Harl escribió:Pues si que seria interesante usar las SPU's para acelerar OpenGL y cosas asi
Pero de todos modos podría ser más interesante lo de usar la Vram es que los 256 MB son un poco justitos ...
Bueno, a lo primero, si te refieres a calculo vectorial, modelado en tiempo real, etc, los SPE son sencillos de utilizar, pero si te refieres a apoyar en tareas de renderizado, me temo que el acceso al buffer de video (que no VRAM, pues está virtualizado), es mas lento que el caballo del malo.
y lo segundo tal vez, este relacionado con lo primero... me explico:
La VRAM de PS3, segun los datos de que disponemos, es rapida de acceder en escritura, pero lentisima en lectura... por lo que no nos ayudaria a que el sistema fuera mas fluido, si no todo lo contrario.
Ahora bien, lo que no se yo es si en esa virtualizacion de la VRAM que tenemos bajo Linux, se hace una lectura antes de proceder a una escritura o que coño será, pero cuando escribimos en el frame buffer, o incluso en back buffer (yo mismo modifiqué SDL para implementar los modos de video y servicios propios de PS3), la velocidad es excesivamente lenta, pero curiosamente, no se resiente si añado una multiplicacion para posicionar el scan, en vez de una suma fija, en cada pixel, o mas curioso lo de los SPE, que LEEN un scan mediante DMA y luego lo ESCRIBEN mediante DMA y parece que la cosa tira mas o menos igual (y si usas varios, la velocidad aumenta, pues yo he usado hasta cuatro SPE renderizando cada uno parte de un scan, para dibujar triangulos)
Asi que tal vez, el problema no sea culpa de la interferencia del hypervisor y sea un problema de que la GPU, LEE esa VRAM para generar las lineas en nuestro monitor, de forma prioritaria, claro (y eso penaliza a nuestros accesos)
El tema es, que sea como sea, aproximadamente perdemos el 40% del proceso del PPE en una tarea tan simple como rellenar el frame buffer con un color. Como para usar esa memoria para "acelerar" programa