How to cache wasm module in nodejs, or it's already cached on startup ?
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 122k
- Forks
- 37.3k
- Ø Merge
- 4 T. 2 Std.
- Gemergte PRs (30 T.)
- 283
Beschreibung
according to this https://github.com/rustwasm/wasm-bindgen/issues/2473
Summary
I created comparison between manual javascript haversine function, and wasm based.
the result if i compared including the module initialization, wasm based getting much slower than javascript itself.
Additional Details
console.time("manual")
const haversinee = require("../func/haversine")
const src = {
lat: -7.0,
lng: 7.0
}
const dst = {
lat: -8.0,
lng: 8.0
}
console.log("manual js : "+ haversinee(src, dst, false))
console.timeEnd("manual")
console.time("wasm")
const {Point, haversine} = require("haversinecalc") // this is the problem
const src_p = new Point(-7.0,7.0)
const dst_p = new Point(-8.0,8.0)
console.log("using wasm : "+ haversine(src_p, dst_p))
console.timeEnd("wasm")
Result with module initialization included
manual js : 156581.10278754708
manual: 12.337ms
using wasm : 156581.10278754708
wasm: 18.109ms
Result without module initialization
manual js : 156581.10278754708
manual: 7.709ms
using wasm : 156581.10278754708
wasm: 0.287ms
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, den Zeitvergleich mit require("../func/haversine") und require("haversinecalc") zu reproduzieren, und lies dann den verlinkten wasm-bindgen-Issue zum Kontext der Modulinitialisierung. Ein nützliches Ergebnis wäre eine dokumentierte Antwort, die das relevante Verhalten des Node.js-Modulladens erklärt und erläutert, wie die Initialisierung getrennt von wiederholten Aufrufen gemessen werden kann.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, node.js, wasm
- Bereich
- backend, developer-experience
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100