phase~1 min de lecturaActualizado 2026-07-16#phase#inference#kernels

Fase 02 — Inferencia desde primeros principios

Esta fase abre la caja negra del runtime. Implementa suficiente maquinaria tensorial para mostrar cómo los pesos, layouts, aritmética, activaciones y error numérico se convierten en un resultado de inferencia, y después acelera la misma carga verificada.

Ramas

  • Kernels tensoriales e inferencia desde cero — formas, strides, layouts, broadcasting, multiplicación de matrices, convolución, bias, activaciones, softmax, normalización, pesos y forward passes.
  • SIMD, threads y workers — SIMD128, autovectorización, intrinsics, memoria compartida, atomics, Web Workers, aislamiento cross-origin, pools de workers y overhead paralelo.

Hitos del Workbench

v1 — Motor de inferencia pequeño: cargá pesos fijos y ejecutá un MLP pequeño usando tensores densos, multiplicación de matrices, bias, ReLU y softmax estable.

v2 — SIMD y paralelismo: compará el mismo kernel y fixture entre Wasm escalar, SIMD128 y un camino con threads/workers debidamente justificado.

Qué establece esta fase

  • Contratos tensoriales con tipo de elemento, forma, strides y layout explícitos.
  • Primitivas numéricamente estables verificadas contra una referencia independiente.
  • Una implementación escalar que sigue siendo el baseline de corrección.
  • Mediciones que separan el cómputo útil de las copias, scheduling y arranque de workers.
  • Criterios honestos para los casos donde SIMD o threads no mejoran la carga.

Criterios de salida

  • El motor pequeño reproduce logits o probabilidades golden dentro de una tolerancia documentada.
  • Las variantes escalar, SIMD y con threads consumen las mismas entradas y semántica.
  • Los reportes incluyen warm-up, p50/p95, throughput, memoria máxima, copias, tamaño del módulo y entorno.
  • El aislamiento cross-origin y los caminos sin threads disponibles se prueban explícitamente.

Seguí con Fase 03: De modelos a inferencia en el browser.