gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 1430Shell 145Markdown 87Rust 852973 Sutichaykuna

⎇ 478b3bd3e9611c67abb419420bbb3c61215d366a scripts/pgo-corpus/README.md Markdown · 38 siq'ikuna · 2.1 KB Ñawpa willay ch'uya

corpus de maquetación para el PGO: 10 páginas nuestras 8a0496dbb · Sergio ·

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

README.md

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é

Qué ejercita cada una

páginasubsistema
flex.htmlflexbox anidado, wrap, alineaciones, min/max-content
rejilla.htmlCSS Grid: muchas pistas, áreas nombradas, auto-fit, subgrid
tablas.htmltablas grandes, colspan/rowspan, table-layout fijo y automático
texto.htmltexto largo, columnas, text-shadow, tamaños y pesos variados, reflujo
selectores.htmlresolución de estilo: DOM profundo contra cientos de reglas
pintado.htmldegradados, border-radius, box-shadow, opacity, mix-blend-mode
transformar.htmltransform, contextos de apilamiento, will-change
svg.htmlSVG en línea: paths, degradados, use, clip
desbordes.htmloverflow anidado, position: sticky, scroll programático
reflujo.htmllayout thrashing: leer y escribir geometría alternadamente