Closed
Bug 593729
Opened 14 years ago
Closed 3 years ago
Improved GCTIMER for heuristics measurements
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
INACTIVE
People
(Reporter: gwagner, Unassigned)
Details
Attachments
(6 files, 1 obsolete file)
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
text/plain
|
Details | |
(deleted),
text/plain
|
Details | |
(deleted),
text/plain
|
Details | |
(deleted),
text/plain
|
Details | |
(deleted),
patch
|
Details | Diff | Splinter Review |
We want to know:
- working set size on startup
- working set sizes for some interesting GC-heavy applications
- allocation rates for some interesting GC-heavy applications
- M: average ratio of mark time to working set size
- S: average ratio of sweep time to allocated heap size
Reporter | ||
Updated•14 years ago
|
Assignee: general → anygregor
Reporter | ||
Comment 1•14 years ago
|
||
first version
Reporter | ||
Comment 2•14 years ago
|
||
This is the sample output for a high-throughput page
like http://29a.ch/2010/6/2/realtime-raytracing-in-javascript
The current working-set approach gets stable after a very few GC calls but the actual memory requirement is enormous. We are allocating over 1000 chunks.
live means live objects during the GC
cycles means average cycles needed to mark an object
finalized menas finalized object during GC run
cycles means average cycles needed to finalize an object.
Reporter | ||
Comment 3•14 years ago
|
||
The output of running v8 vers5 in the browser
Reporter | ||
Comment 4•14 years ago
|
||
A microbenchmark for the shell.
Reporter | ||
Comment 5•14 years ago
|
||
The output of the microbenchmark shows that for a kind of "ideal" environment we need about 128 cycles to mark an object and 47 to finalize it.
Note that even if we mark a full heap, we spend a lot of time iterating over full arenas.
So the finalization phase, even if we don't finalize a single object, takes 50% of the time if we would finalize almost every object.
Reporter | ||
Comment 6•14 years ago
|
||
That's the right file for the microbenchmark.
Attachment #481077 -
Attachment is obsolete: true
Reporter | ||
Comment 7•14 years ago
|
||
An updated version.
It extends the existing GCTimer options for each GC with:
comp: number of compartments
live: marked objects
finalized: finalized objects
Reason: What caused the GC
AllSW: number of all scanned words on the stack
ValSW: number of all stackwords that got marked (valid pointer)
Comment 8•13 years ago
|
||
Still a valid non-TM bug?
Let's keep this open. Some of the stuff in this bug must have landed in a different bug, but some of it didn't and it's still useful.
Summary: TM: improved GCTIMER for heuristics measurements → Improved GCTIMER for heuristics measurements
Comment 10•3 years ago
|
||
The bug assignee didn't login in Bugzilla in the last 7 months.
:sdetar, could you have a look please?
For more information, please visit auto_nag documentation.
Assignee: anygregor → nobody
Flags: needinfo?(sdetar)
Updated•3 years ago
|
Status: NEW → RESOLVED
Closed: 3 years ago
Flags: needinfo?(sdetar)
Resolution: --- → INACTIVE
You need to log in
before you can comment on or make changes to this bug.
Description
•