English · Español
Fase 01 — Hardware y sustrato de cómputo¶
Requiere: 00 — Fundamentos del proyecto y metodología de aprendizaje Enseña:
memory-hierarchy·roofline·arithmetic-intensity·cache·latency·bandwidthSalta a cualquier capítulo desde el índice de referencia de fases.
Mapa del capítulo¶
Pre-escrito según A12. Esta entrada de fase existe antes de que Borja comience el estudio. La teoría y los enunciados del lab son borradores estables; las soluciones se escriben justo a tiempo en la apertura de fase.
Antes de las redes neuronales, el silicio. Aquí construimos el modelo mental que explica por qué
matmulingenuo es lento incluso en una CPU moderna: no son las multiplicaciones, es la memoria.
Objetivo¶
Una comprensión mecánica del ordenador en el que Borja se ejecuta — lo suficiente para que "este kernel está limitado por ancho de banda" sea una afirmación que Borja pueda demostrar con mediciones en su propio portátil, no una frase que repite de los libros de texto.
Orden de lectura¶
theory/00-motivation.md— por qué existe esta fase.theory/01-from-transistor-to-cpu.md— de abajo a arriba: transistor → puerta → ALU → pipeline → predicción de saltos.theory/02-memory-hierarchy.md— caches, DRAM, NUMA, PCIe, SSD; latencia vs ancho de banda.theory/03-roofline-model.md— el modelo visual unificado que enlaza cómputo y memoria. La página de teoría más importante de esta fase.lab/00-machine-profile.md— recoge las especificaciones reales de tu ordenador (lscpu,lstopo,dmidecode, etc.). De una sola vez.lab/01-memcpy-bandwidth.md— mide el ancho de banda de la RAM empíricamente.lab/02-cache-walks.md— ver la jerarquía de cache mediante la medición de tiempos.lab/03-roofline-plot.md— integración final: dibuja el roofline de tu ordenador y coloca el matmul ingenuo sobre él.
solutions/ está vacío durante el pre-write — se rellena en la apertura de fase, una vez que las decisiones de API de la fase previa de Borja son visibles.
Definición de hecho (DoD)¶
Ver PHASE_01_PLAN.md §6. En breve:
- Roofline de tu ordenador en
experiments/01-roofline/. - Cada experimento tiene un
manifest.json(segúnLYNX_CORTEX.md§5). - Puedes argumentar, con mediciones, por qué el matmul fp32 ingenuo sobre una matriz N×N está limitado por ancho de banda para algunos N y limitado por cómputo para otros.
Lo que esta fase intencionadamente NO cubre¶
- GPUs. Diferido a la Fase 23.
- Memoria distribuida. Fase 35.
- Precisión numérica de esas operaciones. Fase 2.
- Instrucciones SIMD en detalle. Se tocan aquí, se profundizan en la Fase 24 (Triton/CUDA).
El alcance de la Fase 1 es el pipeline de memoria + cómputo en una sola CPU. Nada más.
Lecturas recomendadas¶
Opcional — enriquece pero no es necesario para aprobar la fase.
- 📄 Roofline: An Insightful Visual Performance Model — Williams, Waterman, Patterson · 2009. el modelo contra el que mides tu máquina.
- 📕 Computer Architecture: A Quantitative Approach — Hennessy & Patterson · 2017. la referencia canónica de jerarquía de memoria y pipelining.