RESOLVED FIXED 20812
MASTER: Function call overhead is taking a lot of time on v8's benchmarks
https://bugs.webkit.org/show_bug.cgi?id=20812
Summary MASTER: Function call overhead is taking a lot of time on v8's benchmarks
Maciej Stachowiak
Reported 2008-09-12 15:11:24 PDT
Many of v8's individual benchmark tests spend a lot of time in function call overhead, including cti_op_call_JSFunction, cti_op_ret, and getCallData. It is the top issue on the Richards, DeltaBlue, and EarleyBoyer test cases.There is also some effect on Crypto and Raytrace. Shark profiles to come.
Attachments
Maciej Stachowiak
Comment 1 2008-09-12 15:55:46 PDT
See bug 20813 for Shark profiles of individual v8 tests. Note: this should probably be broken down into separate bugs for separate tasks.
Cameron Zwarich (cpst)
Comment 2 2008-10-01 23:11:35 PDT
Replacing ExecState with a call frame Register pointer is bug 21295.
Cameron Zwarich (cpst)
Comment 3 2008-10-01 23:18:43 PDT
Removing profiling hooks when not profiling is bug 21296.
Cameron Zwarich (cpst)
Comment 4 2008-10-01 23:36:41 PDT
Moving toThisObject() conversion to the callee is bug 21297.
Cameron Zwarich (cpst)
Comment 5 2008-10-02 14:53:48 PDT
Replacing the RegisterFile size and capacity information with Register pointers is bug 21317.
Cameron Zwarich (cpst)
Comment 6 2008-10-02 16:05:47 PDT
Avoiding restoring the caller's 'r' value in op_ret is bug 21319.
Cameron Zwarich (cpst)
Comment 7 2008-10-04 00:37:09 PDT
Removing the branch in op_ret for OptionalCalleeActivation and OptionalCalleeArguments is bug 21364.
Cameron Zwarich (cpst)
Comment 8 2008-10-05 22:45:54 PDT
Removing the OptionalCalleeActivation call frame slot is bug 21396.
Cameron Zwarich (cpst)
Comment 9 2008-10-13 17:51:11 PDT
Removing the branches for CodeBlock and CTI code in function call logic is bug 21583.
Gavin Barraclough
Comment 10 2012-03-07 00:02:14 PST
All dependencies closed, making fixed.
Note You need to log in before you can comment on or make changes to this bug.