Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Engine] scope: should per-card weight trimming cover --layer-split auto, and on by default? (PR #4522)

Aperta
#4,541 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 3 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
38/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
cpp

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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 auto user 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.

Lingua principale
C++
Stelle
11.6k
Fork
1k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Niko1221/Strata

Tutte le issue di Niko1221/Strata

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.