Closed
Bug 76151
Opened 24 years ago
Closed 23 years ago
Extremely slow leaving big page
Categories
(Core :: CSS Parsing and Computation, defect)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: bratell, Assigned: pierre)
References
()
Details
(Keywords: perf)
It now takes 20 seconds to load the colour stress table case, but it takes 60 seconds without visible cues leaving it. STEPS TO REPRODUCE: 1. Go to http://www.google.com/ 2. Go to http://www.mozilla.org/newlayout/testcases/stress/wbtblclr.html 3. Wait for it to load (10-60 seconds depending on computer speed). 4. Press the back button. EXPECTED RESULT 5. See the Google page immediatly ACTUAL RESULT 5. Nothing but a non standard mouse pointer. But if you wait a minute or two you will come to the Google page. COMMENTS I see this as a bigger useability problem then slow loading since is is a common operation and for the user it looks as if the browser has hanged. The user can't see any reason for the operation to be slow either. (Neither can I). This was on a home built Mozilla from April 13, 2001 or something like that.
hmm. linux cvs build (non-psm) from around midnight CET re-renders the google page after approx 3-4 sec. (p3/500). Not as snappy as NC4.* but way faster than what you observe.
Reporter | ||
Comment 2•24 years ago
|
||
Hmm. Could it be something that is Windows only maybe (or worse, my system only)? How did you go back? I clicked on the back button with the mouse. I've seen this for a while but have not filed a bug until now.
Reporter | ||
Comment 4•24 years ago
|
||
I spent some time in quantify to see what it was and found the following: 95% of the time was spent in nsDocShell::SetupNewViewer because it assigned something with assign_with_Addref to a nsCOMPtr which cause the previous content (a DocumentViewerImpl) to be released and therefore destroyed. 94% of the total time was spent in 1 call to the DocumentViewerImpl destructor which released 30000 nsTextInputListener times which caused a PresShell to be deleted. That caused two things to happen. A FrameManager was destroyed (thats 25% of the total time) and the styles (through StyleSetImpl) was released (~75% of the time). The 75% seems to be memory releases. A lot of PLHashTableEnumerateEntries, HashTableEnumDestroy, nsVoidArray::~nsVoidArray, hashFreeEntry and stuff. I wonder if this will improve with the memory pooling of stylesets. The 25% (A destroyed FrameManager) is caused by a destroyed ViewPortFrame which destroys the list of frames (there are 20126 frames). Conclusion: All the time is spent deallocating memory and the actual time depends on the state of the heap when going back. I guess my heap has been in really bad shape for some reason which is why it is slower for me than for the others who have tested. Since the biggest speedup will come from the styles being better handled in memory, I will make this bug blocked by the pooling styles bug (bug 65266).
I used the back-button. Repeated it too, going forward to the stresstest again - and then back once more, to see if something changed. This is a fairly vanilla non-debug build with mailnews. Java_vm was triggered while i tested. Also have flash registered. None of these had actually been used in the session i tested in though. Other info: 512MB RAM 272636 byte history file 84974 bookmarks file Cache had been wiped clean the same day.
Assignee | ||
Comment 6•23 years ago
|
||
Old bug: WorksForMe now...
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•