Skip to content
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

Include Sparkplug compiler #38855

Closed
csvan opened this issue May 30, 2021 · 14 comments
Closed

Include Sparkplug compiler #38855

csvan opened this issue May 30, 2021 · 14 comments
Labels
v8 engine Issues and PRs related to the V8 dependency.

Comments

@csvan
Copy link

csvan commented May 30, 2021

Is your feature request related to a problem? Please describe.
Google recently released the Sparkplug compiler as part of V8 9.1, sporting performance improvements of up to 23% on real-world JS applications: https://v8.dev/blog/sparkplug

Describe the solution you'd like
Currently, Sparkplug is behind the --sparkplug flag in v8 9.1. It would be great if it could be enabled by default in Node.

Describe alternatives you've considered
N/A

@devsnek
Copy link
Member

devsnek commented May 30, 2021

@devsnek
Copy link
Member

devsnek commented May 30, 2021

I think we should not early unflag this, instability in this type of component could lead to misbehavior or even security risk.

@Trott
Copy link
Member

Trott commented May 30, 2021

While I'm not interested in unflagging it by default until V8 unflags it by default, I would love to see some of our benchmark results with this enabled compared to without it. (I wonder if the V8 team at Google is already doing that?)

@devsnek
Copy link
Member

devsnek commented May 30, 2021

@Trott you might be able to run some benchmarks with our v8 canary and that flag

@csvan
Copy link
Author

csvan commented May 30, 2021

While I'm not interested in unflagging it by default until V8 unflags it by default, I would love to see some of our benchmark results with this enabled compared to without it. (I wonder if the V8 team at Google is already doing that?)

I guess you could say it is unflagged since Chrome 91 uses it by default. Bit of a stretch maybe.

https://blog.chromium.org/2021/05/chrome-is-faster-in-m91.html?m=1

@Trott
Copy link
Member

Trott commented May 30, 2021

I guess you could say it is unflagged since Chrome 91 uses it by default.

I wonder if/when the V8 team intends to make it the default. I would have thought whatever Chrome 91 got would have been the default in V8 9.1, but I guess that was a bad assumption!

@devsnek
Copy link
Member

devsnek commented May 30, 2021

If chromium was unflagging it in v8 9.0 i would feel more comfortable with this, but i think we should wait.

@Trott
Copy link
Member

Trott commented May 30, 2021

If chromium was unflagging it in v8 9.0 i would feel more comfortable with this, but i think we should wait.

You'd be comfortable unflagging it once we are using V8 9.1? Or that remains to be seen?

@devsnek
Copy link
Member

devsnek commented May 30, 2021

I mean I'd rather we just don't unflag things at all. Once we have v8 9.1 that would go from blocking concern to very strong concern.

@csvan
Copy link
Author

csvan commented Jul 20, 2021

I noticed v8 9.1 was added in e82ef4148e (released in 16.4), would it be alright to revisit the unflagging? :)

@targos targos added the v8 engine Issues and PRs related to the V8 dependency. label Aug 9, 2021
@targos
Copy link
Member

targos commented Aug 9, 2021

Sparkplug will be enabled by default in V8 9.4: v8/v8@86c81a8
We can see from that commit that it wasn't an easy flip and they had to fix issues related to this feature very recently, so I'm really not comfortable about unflagging by default in Node.js.

@csvan
Copy link
Author

csvan commented Aug 9, 2021

@targos sounds great, thanks! I will close this as resolved since no action is required from the node side on this

@csvan csvan closed this as completed Aug 9, 2021
@Talent30
Copy link

Talent30 commented Oct 8, 2021

FYI #40285 V8 9.4 landed on this pr.

@csvan
Copy link
Author

csvan commented Oct 9, 2021

Yep, 9.4 is officially in 16.11: https://github.com/nodejs/node/releases/tag/v16.11.0. Here we go :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
v8 engine Issues and PRs related to the V8 dependency.
Projects
None yet
Development

No branches or pull requests

5 participants