-
-
Notifications
You must be signed in to change notification settings - Fork 414
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Merged by Bors] - Reduced the size of AST nodes #1821
Conversation
Test262 conformance changesVM implementation
|
Codecov Report
@@ Coverage Diff @@
## main #1821 +/- ##
==========================================
- Coverage 55.73% 55.71% -0.02%
==========================================
Files 201 201
Lines 17326 17326
==========================================
- Hits 9656 9654 -2
- Misses 7670 7672 +2
Continue to review full report at Codecov.
|
Benchmark for 5b08ad6Click to view benchmark
|
I'm actually pretty surprised that the benchmark are not clearly showing improvements, even though there might be some small ones. There is also one benchmark that shows a 18% worsening, which is worrying me. Maybe this is just due to the GitHub Actions uncertainty (no dedicated processing power, for instance). We should probably try to benchmark things locally or in a dedicated-core virtual server. |
@Razican have you tried running the profiler and looking at before and after? That may give you a deeper insight into what is going on. https://github.com/boa-dev/boa/blob/main/docs/profiling.md |
I ran the profiler locally and didn't see much difference. Then I ran benchmarks, and I could clearly see a consistent 2-6% improvement in the parser and a consistent and clear 1-2% improvement in the execution. The compiler was having a 0-1% improvement, but it was not very clear. I also checked this "Array creation (Execution)" benchmark and got a 1.8% improvement locally, so that 18% worsening is definitely not real. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Confused about the change in boa_wasm/Cargo.toml
, the rest looks fine.
Benchmark for ed38040Click to view benchmark
|
Benchmark for 004d648Click to view benchmark
|
47324be
to
12283eb
Compare
Benchmark for 4e3b45bClick to view benchmark
|
bors r+ |
This PR boxes the `Try` and `TaggedTemplate` nodes reducing the size of the `Node` structure from 88 to 56 bytes. This should improve performance in most cases, by adding another indirection with code with `try` and templates.
Pull request successfully merged into main. Build succeeded: |
This PR boxes the
Try
andTaggedTemplate
nodes reducing the size of theNode
structure from 88 to 56 bytes. This should improve performance in most cases, by adding another indirection with code withtry
and templates.