bytecodealliance / bytecodealliance/wasmtime

Improve performance of `global.{set,get}` with externref

Offen
#1,971 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
wasmtime
Vorherrschende Sprache
Rust
Sterne
18.6k
Forks
1.8k
Ø Merge
1 T. 14 Std.
Gemergte PRs (30 T.)
135

Beschreibung

First implemented in https://github.com/bytecodealliance/wasmtime/pull/1969 the easiest thing at the time was calling out to intrinsic functions to implement `global.{get,set}`, which means that there are no JIT fast paths for these operations. At the time of this writing there's no toolchain that uses `global.{get,set}` so we don't have a ton of motivation to make this fast, but I wanted to file this issue to make sure we don't forget about it and in case it comes up in the future!

For now it's likely safe to not worry about the performance here, but if this becomes a hot spot in the future this can be a point of coordination!

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit der Überprüfung von PR 1969 und der Implementierung von global.{get,set} für externref. Ermittle, wo die Intrinsic-Aufrufe in den JIT gelangen, und bestimme, welche Arbeiten am fast-path und welche Performancemessungen erforderlich wären; als abgeschlossen würde gelten, dass diese Operationen nicht mehr auf den slow path angewiesen sind, wenn sie zu einem relevanten Hotspot werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust, wasm
Bereich
compilers, performance
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.