Consider using mimalloc as the memory allocator for tree-sitter
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 62/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- rust
- Ambito
- performance, tooling
Direzione di ricerca
Poiché il payload non indica alcun file, inizia dal Cargo.toml del crate e dal suo punto di ingresso binario. La modifica consiste nell'aggiungere mimalloc come dipendenza e registrarlo come allocatore globale. Poi esegui un benchmark del formattatore con gli stessi input, prima e dopo. Il lavoro è completato quando i tempi prima e dopo sono pubblicati nell'issue e il risultato indica se la differenza è misurabile.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I did some profiling on the parser and noticed that about 80-90% of the execution time is parsing with tree sitter. A big chunk of the parsing time is memory allocations. I looked a bit into it and it doesn't seem like this is something you can avoid in the parser itself: AST nodes get allocated dynamically.
There's this alternate memory allocator that's supposed to be faster for small dynamic memory allocations, mimalloc. This task is about giving it a try, benchmarking before and after and seeing if it makes a measurable difference.
- Lingua principale
- Rust
- Stelle
- 468
- Fork
- 39
- Merge medio
- 6h 24m
- PR unite (30g)
- 3
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
- 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 GDQuest/GDScript-formatter
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 58/100
GDQuest/GDScript-formatter#360 · 1 commento ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
GDQuest/GDScript-formatter#354 · 2 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
GDQuest/GDScript-formatter#353 · 3 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 63/100
GDQuest/GDScript-formatter#348 · 3 commenti · 1 reazione ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
GDQuest/GDScript-formatter#341 ·
Tutte le issue di GDQuest/GDScript-formatter
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
chroma-core/chroma#7879 ·
I maintainer di solito rispondono entro 1 giorno
-
priority middle
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
KATO-Hiro/AtCoderClans#12838 ·
I maintainer di solito rispondono entro 1 giorno
-
clap_complete env (PowerShell): values after a space don't complete in Windows PowerShell 5.1Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno