Closed
Bug 78793
Opened 24 years ago
Closed 24 years ago
Performance timeline tracking bug
Categories
(SeaMonkey :: General, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
mozilla0.9.4
People
(Reporter: rogc, Assigned: cathleennscp)
Details
(Keywords: perf)
Attachments
(9 files)
136.89 KB,
text/plain
|
Details | |
39.36 KB,
patch
|
Details | Diff | Splinter Review | |
39.45 KB,
patch
|
Details | Diff | Splinter Review | |
494 bytes,
text/html
|
Details | |
195 bytes,
text/plain
|
Details | |
44.00 KB,
application/octet-stream
|
Details | |
4.63 KB,
patch
|
Details | Diff | Splinter Review | |
40.91 KB,
patch
|
Details | Diff | Splinter Review | |
41.54 KB,
patch
|
Details | Diff | Splinter Review |
I've been working on some light instrumentation of mozilla in
order to develop a timeline of what happens between double click
and the first window that appears. I'll attach patches to this
bug that others can use to run my experiments as well as results.
-Roger
Comment 1•24 years ago
|
||
Marking NEW.
Reporter | ||
Comment 2•24 years ago
|
||
Reporter | ||
Comment 3•24 years ago
|
||
Reporter | ||
Comment 4•24 years ago
|
||
Reporter | ||
Comment 5•24 years ago
|
||
Reporter | ||
Comment 6•24 years ago
|
||
Reporter | ||
Comment 7•24 years ago
|
||
Reporter | ||
Comment 8•24 years ago
|
||
I did some more instrumentation of mozilla with some help
from cathleen and waterson. The results have been attached
to this bug. I'm planning to use these results as the basis for the
timeline on the whiteboard at the next perf meeting.
I've also attached patches that include the timeline service
and the instrumentation used to produce the results in case
anyone else wants to try this. There are two versions of the
patch: the raw "cvs diff" output and a hand-edited version with
hacks to make it work with the version of patch that I have
(cvs diff and patch are not getting along on my NT machine).
Hopefully one of these patches will work for you; otherwise
let me know and I'll be glad to try some other way.
"Page used for startup timeline" is the page I loaded into the
browser; it has an onLoad handler that computes the start-up time; it
should be saved as "page.html" (in c:\temp for the directions below).
"Hack that prints..." is a program that prints out the time in a
format that the timeline service understands. It should be saved as
"curtime.c" (I also attached curtime.exe if you don't want to compile
it yourself).
OK, now that you have all the pieces, here's how to replicate what I
did:
1. Apply the patch to a clean tree.
2. set MOZ_TIMELINE=1
3. do an optimized build
4. put curtime.exe in your PATH
5. Copy this into a shell script (c:\temp\run.sh):
export NS_TIMELINE_LOG_FILE=c:\\temp\\timings.txt
export NS_TIMELINE_INIT_TIME=`curtime`
./mozilla.exe c:\\temp\\page.html?initTime=$NS_TIMELINE_INIT_TIME
6. Run the shell script from the directory dist\WIN32_O.OBJ\bin in
your build like this:
sh c:\temp\run.sh
Sorry this is so complicated; I'll be happy to help anyone who wants
to follow this steps. Thanks!
-Roger
Reporter | ||
Comment 9•24 years ago
|
||
Reporter | ||
Comment 10•24 years ago
|
||
That last patch was meant for another bug. Maybe I'll figure
out how to use Bugzilla one of these days.
Reporter | ||
Comment 11•24 years ago
|
||
Reporter | ||
Comment 12•24 years ago
|
||
OK, I'm ready for review. The idea here is that with a timeline
build you get light-weight instrumentation of mozilla to help
you figure out where time is being spent; this is particularly
applicable to startup time. My intent is that in normal
(non-timeline) builds these changes will have zero impact on
anything; everything compiles out.
scc: will you please review the xpcom changes? These are nearly
identical to the changes you looked at earlier under the auspices
of bug 87698; the changes since then involve porting to the Mac
and making all of it compile out ifndef MOZ_TIMELINE.
waterson: will you please super-review? Also, please let
me know if you think I need more reviewers for the instrumentation
I added to netwerk, content, and xpfe.
Thanks!
-Roger
Reporter | ||
Comment 13•24 years ago
|
||
(one week later):
waterson, scc: I'm happy to let this bug fall off the bottom of my
piority list, so never mind.
If there is renewed interest in getting the timeline code in the
tree, let me know and I'll be glad to help.
Thanks!
-Roger
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → WONTFIX
I'd like to see it get into the tree. (At one point I was hoping you'd get it
in so that I could use it for a page load timeline. I don't know if I'd have
the time to work on it now, though.)
One additional feature that might be useful is the ability to have different
named timelines (e.g., "startup", "pageload", "FileTransport") in the style of
NSPR logging.
Assignee | ||
Comment 15•24 years ago
|
||
we shouldn't let all the good work going to waste!!!
I've got a somewhat working timeline in my local tree now. :-) The only problem
I'm having now is that the timeline file doesn't report all timing
instrumentation for the entire startup duration. The url time reports 9.97sec
on warm boot, but my log recored showing up to 5.something seconds and sometimes
up to 8.something seconds... It's really close now, just need a bit more
tweaking...
Reopening, and reassign to me.
Status: RESOLVED → REOPENED
Resolution: WONTFIX → ---
Reporter | ||
Comment 17•24 years ago
|
||
Oh no! I think I messed things up when I switched to interval
timers when I ported to the Mac. I'll take a look.
-Roger
Reporter | ||
Comment 18•24 years ago
|
||
Hmm, thinks look good for me. Let's debug this on your
setup when I'm out there on Wednesday.
Assignee | ||
Comment 19•24 years ago
|
||
Assignee | ||
Comment 20•24 years ago
|
||
resolve to FIXED.
this was checked in on Friday 8/17
Status: NEW → RESOLVED
Closed: 24 years ago → 24 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla0.9.4
Updated•21 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•