try caching email address nodes in the to/cc toggle widgets

VERIFIED FIXED in mozilla0.9.7

Status

SeaMonkey
MailNews: Message Display
VERIFIED FIXED
17 years ago
14 years ago

People

(Reporter: Scott MacGregor, Assigned: Scott MacGregor)

Tracking

({perf})

Trunk
mozilla0.9.7
x86
Windows 2000

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

5.44 KB, patch
Sean Su
: review+
(not reading, please use seth@sspitzer.org instead)
: superreview+
Details | Diff | Splinter Review
(Assignee)

Description

17 years ago
Frame construction time is showing up as a hot spot for message display. I
believe a large portion of the construction time is happening because we create
new email-address widgets for the to and cc toggles every time we display a
message. For each address we create a new email address widget, set the right
properties on it, then add the widget to the long or short div for that header
field. When we view another message we remove all the elements in each div and
start again. 

We may be able to help reduce the time spent in frame construction by trying to
cache some of these email address widgets and just changing their value and
re-showing them again.
(Assignee)

Comment 1

17 years ago
.
Blocks: 22960
Status: NEW → ASSIGNED
Keywords: nsbeta1, perf
Target Milestone: --- → mozilla0.9.7
(Assignee)

Comment 2

17 years ago
Created attachment 57892 [details] [diff] [review]
implement email address node caching

initial pass at caching email address elements inside the multi email address
toggles. The logic is pretty complex so this patch may be buggy although I
don't see any problems right now. I'll run it for a day or two before landing.
(Assignee)

Comment 3

17 years ago
Comment on attachment 57892 [details] [diff] [review]
implement email address node caching

oops attached the wrong patch.
Attachment #57892 - Attachment is obsolete: true
(Assignee)

Comment 4

17 years ago
Created attachment 57894 [details] [diff] [review]
implement email address node caching

the right patch
Comment on attachment 57894 [details] [diff] [review]
implement email address node caching

sr=sspitzer

very slick!
Attachment #57894 - Flags: superreview+

Comment 6

17 years ago
Comment on attachment 57894 [details] [diff] [review]
implement email address node caching

r=ssu
Attachment #57894 - Flags: review+
(Assignee)

Comment 7

17 years ago
fix checked in. Initial cache size = 3 addresses per widget.
Status: ASSIGNED → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
QA Contact: esther → stephend
I tested the 27th build on my own time and found that we're 5.11 seconds to read
5 10KB messages in a local folder the 1st time, then 5.07 and 5.04 seconds each
consecutive time.  This brings us to 4.x parity! :-)

My numbers on http://www.mozilla.org/mailnews/win_performance_results.html for
the 23rd build are correct, but that build had something wrong with it, so I'll
be reposting.  

My messages each had 5 addresses and were 10kb in size each.

Verified FIXED.
Status: RESOLVED → VERIFIED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.