Open Robbepop opened 2 years ago
In your opinion @Robbepop would it help trying to extract an MCVE from your project and try to reduce the code that could be causing this regression? Or maybe it's more a general question about performance of the code generated?
@apiraino thank you for your response.
I guess it would be very helpful for both parties to diagnose this performance issue further by minimizing it to its core components.
However, the wasmi
interpreter is a kinda big project and I (as its main developer) have absolutely no clue where to even start minimizing. It will probably a very time consuming task and I unfortunately have not (yet) come to do this.
Btw.: The O-wasm
label is incorrect since this is not about Wasm compilation. The performance regressions happen on native compilation.
Triage: @Robbepop do you mind checking if the latest nightlies still have as severe of a perf regression as the old nightly?
Today I checked performance of one of the libraries I am working on and found that its performance has regressed by roughly 50%.
Since there have not been any changes to the code since I checked last time I was confused about this. I bisected
rustc
versions until I found the version where the regression started:nightly-2022-03-05
nightly-2022-03-03
was still fine. The problem persists in the most recent Rust nighty:nightly-2022-03-28
The project that experiences the severe performance regression is wasmi: WebAssembly Interpreter. I ran benchmarks using:
In particular (faster results than running the entire suite)
Git commits used for my benchmarks:
805ff4ef4a7db59d6aa117218a5ca79f672db2c1
(2022-03-28)29110ed2469702b23ea6263e1a936eb2af6701c6
(2022-02-20)In a previous issue I already highlighted that the same project has a fragile performance nature (heavily reacts to slight changes/optimizations/regressions) and was especially fine tuned using the following profile: