Thunderbird smoothness [was Re: Fwd: Re: [bedrock] Fix Bug 1150083 - Make Fx38 Win64 build ofbeta Available on (#2884)]

Wayne Mery (Thunderbird QA) vseerror at
Tue Apr 28 04:18:51 UTC 2015

On 4/2/2015 8:10 AM, Robert Kaiser wrote:
> Aceman schrieb:
>> Pure JS extensions should work, the problem are binary addons (like
>> mentioned Lightning) and third party plugins (like Flash). User must
>> match them correctly. Even on 64bit Windows the default Internet
>> Explorer is 32bit (the 64bit version is hidden in the menu for
>> advanced users).
> Plugins should be less of a problem for Thunderbird than for Firefox.
> Add-ons are a topic for both, sure, esp. Lightning and EnigMail, I guess.
>> And of course there could be hidden problems (crashes, memory leaks,
>> read of incorrect memory) if there is some C++ code that somehow
>> hardcodes 32bit pointer size (4 bytes) while other code using that
>> same pointer expects platform native size (8 bytes for 64bit OS), etc.
> In Firefox, we don't seem to have any significant issues there nowadays,
> but mailnews code is probably completely untested for 64bit Windows -
> that said, we are compiling 64bit for Linux and Mac, so pointer size
> issues should not really be a problem as we'd find them on the other
> OSes as well.
> The upside is that 64bit means that there is no 3GB or 4GB limit on
> virtual memory size, and so the mailnews code, which is known for being
> quite memory-hungry

Memory will be high only for users with one or two specific addons, 
under certain configurations. And users with *many* active large folders 
- which is not the norm.  We see very few reports of users exceeding (to 
throw out a number) 700MB of memory use.

 > (as well janky due to sync code, but 64bit doesn't change that),

Thunderbird code was inherently janky before sync, i.e. before version 
3.  It just got worse after version 3 because of cheaper disk, cheap 
email, increased use of email as an essential business tool (often with 
huge archives), and sync - all of which has resulted in ever increasing 
folder sizes - and broken IO buffering mentioned below.

> will probably like the fact that it's not constrained in
> terms of virtual memory and run more smoothly.

Unfortunately neither more virtual memory nor 64bit is going to give 
users a substantially smoother Thunderbird experience.

The main things which will help with Thunderbird smoothness are:

* IO and IMAP workload reduction - tracked mostly by meta bug 1058026

* Ishikawa's promising work on IO buffering (broken circa version 3)

* get more IO off main thread (which everyone is afraid to touch) - 
tracked in meta bug 842371

* a few gloda tweaks - mainly the two "gloda key" 
bugs (We need a gloda hero!  Or two.)

* a few lightning tweaks - some are linked in meta bug 441710

* the almighty SSD :)

More information about the tb-planning mailing list