fix: investigate Gemma 4 12B long-context MTP parity on Metal
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Activo
- Stack tecnológico
- rust
- Área
- machine-learning, performance
Línea de trabajo
Start by reproducing the 12B pair with --draft-kind mtp, --draft-block-size 4, --parallel 1, and the 1,056-token buffered diagnostic probe from #1983. Compare rotating-ring ordering, mask/dispatch geometry, and prefix state against classic M=1 decode, then measure teacher-forced, decided-position, and free-generation disagreements. Done means verified causes are corrected, the 12B startup guard is extended with measured cost, and 31B, Qwen MTP, performance, and untested backends are rechecked.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Problem / Background
While investigating #1983 on M5 Max (128 GiB, Metal, test-fast), an experimental long-context startup probe for models/gemma-4-12b-it-4bit with models/gemma-4-12b-it-assistant-4bit found a block-versus-chain mismatch after a 1,056-token prefill with speculative rotating-cache buffering. At block width 4, position 0 differs in 275,832/524,288 logit bytes; failure localization first reports layer 0 sliding-attention output. Disabling qmv_wide does not resolve it. This diagnostic result does not establish free-running error severity or its first introducing commit.
The new long buffered probe in #1983 is limited to its measured 31B geometry; 12B retains its existing short startup checks. Passing those short checks must not be interpreted as long-context parity. The 31B correction must not be copied to 12B solely because both have 512-wide global heads.
Proposed Solution
Reproduce with the 12B pair above, --draft-kind mtp --draft-block-size 4 --parallel 1, no inexact override, and a diagnostic probe that adds the 1,056-token buffered draw used during #1983. Compare physical rotating-ring ordering, mask/dispatch geometry, and prefix state against classic M=1 decode; quantify the mismatch before selecting a correction. Keep the default startup policy change separate until evidence supports it.
Acceptance Criteria
- Reproduce on the current baseline and record provenance, actual buffered cache layout, and first divergent sub-operation.
- Report teacher-forced top-1 and decided-position disagreements at realistic context and actual verify widths, plus three free-generation comparisons.
- Correct verified causes and extend the 12B startup guard with measured startup cost; retain fail-closed behavior without an inexact override.
- Recheck 31B and Qwen MTP and measure classic/MTP performance; document untested backends.
- Lenguaje dominante
- Rust
- Estrellas
- 482
- Forks
- 70
- Merge medio
- 7 h 32 min
- PR fusionados (30 d)
- 345
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de lablup/mlxcel
-
docs(webpage): add a webpage/site README covering the pnpm/uv/zensical build and deploy contractAbiertopriority:low status:ready type:docs
Dificultad 1/5 1-3 horas Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día
-
docs(reports): add an index README for the 308-file TECHNICAL_REPORTS directoryPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertopriority:low status:ready type:docs
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
priority:low status:ready type:docs
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
Los mantenedores suelen responder en 1 día
-
priority:low status:ready type:docs
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
priority:low status:ready type:chore
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
Todos los issues de lablup/mlxcel
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
-
priority middle
Dificultad 1/5 Menos de una hora Aptitud para principiantes 62/100
KATO-Hiro/AtCoderClans#12940 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
-
o8 next debug build aborts on Glass to Dark appearance switch (nil identifier messaged before check)Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
hurttlocker/o8#5112 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día