[Engine] scope: should per-card weight trimming cover --layer-split auto, and on by default? (PR #4522)
Los mantenedores suelen responder en 3 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 38/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- cpp
- Área
- backend, performance
Línea de trabajo
Read PR #4522 and compare its default behavior with the current --layer-split handling, especially the auto path and CUDA0. Use the reported two-card benchmarks and rounding comparison to assess the tradeoff between enabling trimming by default and keeping it opt-in. Done means settling the default and updating the PR accordingly; the issue identifies no files or tests.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Main already trims each card's dense weights to its own layer range with an explicit --layer-split (opt-in, off by default), so the common path - --layer-split auto, which the app uses - never trims, and CUDA0 never trims at all. PR #4522 extends it there: every card including the first reloads only its own layers' weights, and the freed VRAM goes to the expert cache.
The scope question is the default. Measured on RTX 5080 + RTX 4060 Ti / 32 GB (Swift 1.5 IQ2_XS, 64K, q4_0 KV, same prompts, engine-log rates): expert cache 6812 -> 8021 slots on CUDA0, decode 33.9-38.8 -> 52.0 tok/s (+34 to +53%). The fork the implementation comes from (Strata-DualGPU, #642) ships it on by default; #639 proposed the same idea for explicit splits.
Two options:
- on by default (as in the PR, as in the fork): every two-card
autouser gets the faster placement without a flag; the placement changes, which changes the last bits of expert rounding (the fork's author measured perplexity 7.28 vs 7.24 and the same top token at 93.9% of positions over 5,333 teacher-forced tokens); - opt-in (
--trim-stage-weights, like today's explicit-split switch): the default path stays byte-identical to the last release, users opt in; the app would need to pass the flag for its users to benefit.
Happy with either - if opt-in is preferred I will flip the PR's default and keep the rest. Tradeoffs above; the measurements stand either way.
- Lenguaje dominante
- C++
- Estrellas
- 11.6k
- Forks
- 1k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 Niko1221/Strata
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Niko1221/Strata#4779 · 2 comentarios ·
Los mantenedores suelen responder en 3 días
-
[Engine] the sampler and the HIP properties probe never call close() - ResourceWarning lines on every Minimal serving runtime runPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Niko1221/Strata#4630 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
[Engine] HIP source build fails since v0.1.45: `__shared__ alignas(16) int4` in iq_kernels.cu (expdec verify window)Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Niko1221/Strata#4589 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
[Engine] strata-sycl.sh drops every STRATA_* variable whose value is 0, so the documented STRATA_PREFILL_MMQ=0 (FP16 prompt path) never reaches the engine; "off" works by accidentPosiblemente ocupada @ctr-137 la tomó hace 2 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 3 días
Todos los issues de Niko1221/Strata
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
jellyfin/jellyfin-desktop#1290 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
nasa/fprime#6301 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
godotengine/godot#125035 ·
Los mantenedores suelen responder en 1 día
-
agent:WSL bug LOW security
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
mgradwohl/tasksmack#3290 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
mw00/project-maya#743 ·
Los mantenedores suelen responder en 1 día