# Corpus de maquetación para el PGO de Gecko Páginas de entrenamiento **nuestras** que complementan el corpus de Mozilla (`build/pgo`). ## Por qué existe Medida la ganancia del PGO el 2026-09-07 (SDD 26 §3.a): **−9,4 %** en una página de DOM/maquetación y **−1,0 %** en `3d-raytrace` de SunSpider. El corpus de Mozilla está dominado en número de páginas por SunSpider, que es aritmética pura en bucles calientes — y **ese bucle no lo ejecuta el C++ de SpiderMonkey sino el código máquina que el JIT emite en runtime**, que el PGO no toca. O sea que el corpus entrenaba mucho justo donde el PGO menos rinde. Estas páginas ejercitan el camino que sí es C++ de punta a punta: resolución de estilo, layout, pintado y composición. ## Reglas que cumplen todas, y por qué - **Deterministas.** Ni `Math.random` ni `Date` ni red. Dos corridas hacen LO MISMO, así que dos perfiles difieren por el timing de los contadores y no por haber visitado caminos distintos. - **Autocontenidas.** CSS y JS en línea, sin recursos externos. El perfilado corre sin red. - **Nuestras.** Escritas para esto: nada de páginas ajenas capturadas, que traerían licencia y fragilidad. - **Acotadas.** Cada una termina en segundos. El perfilado arranca un navegador POR PÁGINA. ## Qué ejercita cada una | página | subsistema | |---|---| | `flex.html` | flexbox anidado, `wrap`, alineaciones, `min/max-content` | | `rejilla.html` | CSS Grid: muchas pistas, áreas nombradas, `auto-fit`, `subgrid` | | `tablas.html` | tablas grandes, `colspan`/`rowspan`, `table-layout` fijo y automático | | `texto.html` | texto largo, columnas, `text-shadow`, tamaños y pesos variados, reflujo | | `selectores.html` | resolución de estilo: DOM profundo contra cientos de reglas | | `pintado.html` | degradados, `border-radius`, `box-shadow`, `opacity`, `mix-blend-mode` | | `transformar.html` | `transform`, contextos de apilamiento, `will-change` | | `svg.html` | SVG en línea: paths, degradados, `use`, clip | | `desbordes.html` | `overflow` anidado, `position: sticky`, scroll programático | | `reflujo.html` | layout thrashing: leer y escribir geometría alternadamente |