You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|#27|#26| Decisión humana solo si se solicita SIMD explícito, `unsafe` o crate externo. |
168
-
|#29|#27 y #28|No iniciar SIMD explícito sin autorización registrada. |
169
+
|#27|#26| Decisión humana registrada: `wide``1.5.0`; sin `unsafe`, nightly ni dependencias directas adicionales. |
170
+
|#29|#27 y #28|Usar únicamente la estrategia autorizada en #27. |
169
171
|#34|#33| Ninguno; no marca capítulos como revisados. |
170
172
171
173
## Contrato de issues y validación
@@ -183,6 +185,26 @@ milestone, labels y están agregados al Project #19.
183
185
| Decisión | Alternativas, impacto de dependencias/`unsafe` y autorización humana cuando aplique. |
184
186
| Cierre | Índice, enlaces, estados, glosario, ruta de lectura y suite completa. |
185
187
188
+
## Decisión SIMD explícito: issue #27
189
+
190
+
Joel autorizó el 2026-07-29 `wide``1.5.0` para este curso, compatible con
191
+
Rust estable. La dependencia se limita a demostrar SIMD explícito de forma
192
+
portable y verificable; no convierte una medición local en una afirmación
193
+
universal de rendimiento.
194
+
195
+
| Alternativa | Decisión | Motivo |
196
+
|---|---|---|
197
+
| Solo auto-vectorización | Complementaria, no suficiente | Sirve para enseñar observación del compilador, pero no el modelo explícito de datos SIMD. |
198
+
|`std::simd` / `portable_simd`| Rechazada | Requiere nightly y el curso debe compilar en Rust estable. |
199
+
| Intrínsecos por arquitectura | Rechazada | Exigirían `unsafe` y reducirían la portabilidad pedagógica. |
200
+
|`wide``1.5.0`| Aprobada | Expone tipos SIMD portables en Rust estable sin `unsafe` en el código del curso. |
201
+
| Dependencia de despacho dinámico adicional | Fuera de alcance | Añadiría complejidad antes de estudiar el modelo básico y no fue autorizada. |
202
+
203
+
La futura implementación de #29 debe validar resultados numéricos contra una
204
+
línea base escalar, medir en el entorno declarado y describir los límites de
205
+
arquitectura, tamaño de entrada y precisión. Ningún capítulo se marca como
206
+
`reviewed` ni `published` por esta decisión.
207
+
186
208
## Modo autónomo y siguiente bloque
187
209
188
210
Con autorización de Joel, cada slice usa `1 issue → 1 rama aislada → 1 commit
0 commit comments