Reduce the number of VMFunction calls on Speedometer 3
Categories
(Core :: JavaScript Engine: JIT, enhancement, P2)
Tracking
()
People
(Reporter: jandem, Unassigned)
References
(Depends on 2 open bugs, Blocks 2 open bugs)
Details
(Whiteboard: [sp3])
Attachments
(2 files)
I collected some data on VMFunction
calls for bug 1913924 and I got some interesting results.
I'm attaching a list of VM functions with their call count + percentage when starting the browser and running the full Speedometer 3 benchmark.
For example, the top 2 functions are ConcatStrings
and Lambda
and these operations can likely be inlined in Baseline too. This would eliminate almost 20% of calls.
Updated•2 months ago
|
Updated•2 months ago
|
Updated•2 months ago
|
Reporter | ||
Comment 1•2 months ago
|
||
This is a list of callWithABI
calls for Speedometer 3. This data is a bit harder to collect - I replaced masm.setup*
with masm.printf(__FUNCTION__); masm.setup*
.
VMFunction
wrappers account for ~43% of these.
I wasn't expecting visitMathFunctionD
to show up with 3.4% of all calls.
Reporter | ||
Comment 2•2 months ago
|
||
(In reply to Jan de Mooij [:jandem] from comment #1)
I wasn't expecting
visitMathFunctionD
to show up with 3.4% of all calls.
For what it's worth, the Math
functions getting called there:
738880 Log
92675 Log10
87056 Sin (fdlibm)
87056 Cos (fdlibm)
43528 ASin
Description
•