Skip to content

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 · bandwidth Salta 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é matmul ingenuo 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

  1. theory/00-motivation.md — por qué existe esta fase.
  2. theory/01-from-transistor-to-cpu.md — de abajo a arriba: transistor → puerta → ALU → pipeline → predicción de saltos.
  3. theory/02-memory-hierarchy.md — caches, DRAM, NUMA, PCIe, SSD; latencia vs ancho de banda.
  4. 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.
  5. lab/00-machine-profile.md — recoge las especificaciones reales de tu ordenador (lscpu, lstopo, dmidecode, etc.). De una sola vez.
  6. lab/01-memcpy-bandwidth.md — mide el ancho de banda de la RAM empíricamente.
  7. lab/02-cache-walks.mdver la jerarquía de cache mediante la medición de tiempos.
  8. 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ún LYNX_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.