Rastreador de páginas de la GPU
El rastreador de páginas, de activación explícita, vigila páginas invitadas de 16 KiB. La primera escritura nativa de la CPU provoca un fallo, avanza una generación e invalida la copia de la GPU para que las páginas sin cambios no se hasheen ni se suban en cada fotograma.
Notas del repositorio hasta el 10 de octubre de 2026
El problema que aborda
Un destino de render o un búfer de vértices que vive en la memoria del invitado tiene que llegar a la GPU. Subir toda la asignación en cada fotograma es correcto y caro. Hashear toda la asignación para descubrir que no cambió también es caro. El rastreador de páginas, en cambio, marca como solo lectura una página con escritura vigilada y deja que la CPU falle en la primera escritura.
El manejador del fallo registra la página, restaura la protección real del invitado y avanza la generación de esa página. Un dibujo posterior compara generaciones. Una página sin cambios permanece en el dispositivo. Una página cuya generación se movió se sube. PS5_GPU_PAGE_TRACKER=1 activa el mecanismo. Está apagado salvo que se fije esa variable, o el conjunto experimental.
Qué es el fallo
El fallo es una invalidación, no un defecto del invitado. La página era de solo lectura solo para que el anfitrión pudiera observar la escritura. La escritura del invitado puede entonces completarse bajo la protección que pidió el título. Las páginas que no se vigilan siguen la ruta de subida ordinaria.
Los mapeos de memoria directa que se recrean con la misma dirección, tamaño, desplazamiento físico y permisos de CPU conservan sus vistas del anfitrión. Esa reutilización es lo que hace que una generación signifique algo entre fotogramas. Un cambio de respaldo o de permisos toma la ruta normal de sustitución y el rastreador observa el mapeo nuevo.
Qué no hace
El rastreador no reduce la resolución interna de un título, y no compila shaders. Solo elimina las transferencias repetidas de páginas en las que la CPU no escribió. Un título que reescribe un búfer en cada fotograma sigue pagando por ese búfer.
Las escrituras de atlas de fuentes y otras escrituras HLE invalidan las vigilancias antes de modificar la memoria del invitado, de modo que una escritura del firmware no es invisible para la GPU. El rastreador forma parte del conjunto experimental de GPU descrito en la visión general de la arquitectura.
Qué está implementado
- Generaciones por página para páginas invitadas de 16 KiB cuando PS5_GPU_PAGE_TRACKER=1.
- Un fallo en la primera escritura que restaura la protección del invitado e invalida la copia residente.
- Reutilización de vistas idénticas de memoria directa para que las generaciones sobrevivan entre fotogramas.
- Invalidación cuando la propia HLE escribe una página vigilada.
Qué falta todavía
- El rastreador es de activación explícita. La ruta de compatibilidad predeterminada no depende de él.
- Las páginas que la CPU reescribe en cada fotograma se siguen subiendo.
- No cubre la coherencia de GPU a GPU dentro de una superficie de metadatos comprimidos.
Mecanismos relacionados
Qué describen estas páginas