Closed
Bug 639729
Opened 14 years ago
Closed 14 years ago
inline GC mark path
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: gal, Assigned: gal)
References
Details
(Whiteboard: fixed-in-tracemonkey)
Attachments
(1 file)
5.08 KB,
patch
|
billm
:
review+
|
Details | Diff | Splinter Review |
No description provided.
Assignee | ||
Comment 1•14 years ago
|
||
Assignee: general → gal
Assignee | ||
Comment 2•14 years ago
|
||
This inlines the GC mark path. A single call out is made if the slots are > 0 and we have to mark them. Many objects have no own slots, so we win a bit.
Assignee | ||
Updated•14 years ago
|
Attachment #517635 -
Flags: review?(wmccloskey)
Assignee | ||
Updated•14 years ago
|
Assignee | ||
Comment 3•14 years ago
|
||
A couple of the dependencies aren't landed yet, so this probably has to wait a day or two.
Assignee | ||
Comment 4•14 years ago
|
||
The assert meant to be span <= slots of course. Sorry for that.
Assignee | ||
Comment 5•14 years ago
|
||
Test case: var prev = null; for (var i = 0; i < 1000000; ++i) { var next = ({}); next.prev = prev; prev = next; } var t = Date.now(); for (var i = 0; i < 100; ++i) gc(); print(Date.now() - t); Without any of the dependencies above and this patch applied: kahoolawe:src gal$ ./Darwin_OPT.OBJ/js x.js 5719 kahoolawe:src gal$ ./Darwin_OPT.OBJ/js x.js 5751 With all of the dependencies and this patch applied: kahoolawe:src gal$ ./Darwin_OPT.OBJ/js x.js 4690 kahoolawe:src gal$ ./Darwin_OPT.OBJ/js x.js 4735 The speedup is around 22%. To quote Hannibal, I love it when a plan comes together.
Comment 6•14 years ago
|
||
Does this get a speedup on Windows, too? I would think PGO would totally do this.
Comment on attachment 517635 [details] [diff] [review] patch Great!
Attachment #517635 -
Flags: review?(wmccloskey) → review+
Assignee | ||
Comment 8•14 years ago
|
||
http://hg.mozilla.org/tracemonkey/rev/518b607a06cd
Whiteboard: fixed-in-tracemonkey
Assignee | ||
Comment 9•14 years ago
|
||
Follow-up fix. http://hg.mozilla.org/tracemonkey/rev/bb2bd286ef22
Comment 10•14 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/518b607a06cd http://hg.mozilla.org/mozilla-central/rev/bb2bd286ef22
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•