Fusing the band column's kernels and coalescing the split's transposes on devices are unrecorded and untried
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 8/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Ambito
- devtools, performance
Direzione di ricerca
This is a performance investigation requiring physical GPU hardware (NVIDIA A40 and a data-centre GPU) and CUDA/HIP builds that CI does not cover. Start from the band column kernels and the split-step transposes referenced in docs/dev/benchmarks.md, then run python -m benchmarks ab --device on the named cases. Done means ratios of 0.97 or better are recorded or the changes are marked not adopted in benchmarks.md.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What is missing
#59 ended with two device options it did not try, which its pull request says were left in the benchmark ledger. The ledger holds only the measurements around them, and no issue or roadmap entry has them:
- Fusing the band column's kernels. On an NVIDIA A40 the band plasma column's four tiled kernels take 235 µs of an
rdwtrial. Neither half-tile teams (0.985 onrdw, 1.002 onhe_rdw_averaged) nor 512-sample tiles (1.010, 1.019) moved them, and the card gave no performance counters, so what bounds them is unknown. - Coalescing the split's transposes. On
kerr_beam_384earlier work took about 100 ms a step out of the split's transverse pair and transposes, within a fall in kernel time from 827 to 651 ms. Coalescing them has not been measured.
"The split" here is the free-space split-step collar on a device.
Why it matters
GPU runs are launch-bound: on these cases each kernel launch costs more than its arithmetic.
Context
- #103 is other device work (per-trial mirrors, the accept pass, plasma buffers). The roadmap's launch and copy overhead is the wider picture, on GPUs with full-rate binary64.
- Not to repeat: band column tilings, which #59 measured and did not adopt.
Read, not run.
To do
- Prototype fusing the band column's kernels on a device, and compare on
rdw,ctcandargon_blueshift. - Measure coalescing the split's transposes on Cartesian device runs.
Device tests must pass on a CUDA and a HIP build, which CI does not build.
Done when
python -m benchmarks ab --device ratios on an NVIDIA A40 and one data-centre GPU (H200 or MI325X) are recorded for each. Each change lands at 0.97 or better on its cases with no loss elsewhere, or benchmarks.md records it as measured and not adopted.
Checked against commit 8a9f764.
- Lingua principale
- Python
- Stelle
- 3
- Fork
- 3
- Merge medio
- 4h 42m
- PR unite (30g)
- 91
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di LupoLab/solprop
-
The TDSE steady-current certificate can refuse a resolved taper on a band far above its frequenciesApertaarea: tdse enhancement priority: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 60/100
I maintainer di solito rispondono entro 1 giorno
-
The band-edge term that floors comparisons between windows is recorded only in an archived SEPApertaarea: boundaries documentation priority: low
Difficoltà 2/5 Mezza giornata Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
area: backends bug priority: low
Difficoltà 2/5 Mezza giornata Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno
-
area: single precision priority: low testing
Difficoltà 3/5 1-2 giorni Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno
-
area: native area: packaging bug priority: high
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di LupoLab/solprop
Issue simili
-
cost:cheap practicality:seen-in-the-wild severity:medium
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
fairagro/m4.2_advanced_middleware_api#620 ·
I maintainer di solito rispondono entro 1 giorno
-
area:security effort:S priority:P2 provider:local-libvirt status:ready type:docs
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
randomparity/kdive#3495 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
microsoft/markitdown#2820 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 2 giorni