[Adium-devl] Caution: Merge Left

Peter Hosey prh at boredzo.org
Sat Nov 18 03:08:04 UTC 2006


I have a couple of big merges to do that I wanted to run by you guys.

== ProjectParallelization ==

http://trac.adiumx.com/wiki/ProjectParallelization

My current plan is to merge everything except the localization  
changes, putting that off until 1.0 comes out.

Can you guys think of anything else that should be held?

== Memory usage ==

We made a lot of headway on Adium's memory usage when loading the  
hypahrat log. The relevant changesets are:

  * 18233 (Bigger read size)
  * 18236 (Use one NSData instead of many)
  * 18237 (Cleaner loop than 18236)
  * 18243 (LMX r72 for 18245)
  * 18245 (Create AIContentObject and throw away AIXMLElement tree  
after every <message>, rather than when the five-message requirement  
is satisfied; reduces peak memory usage to only that of the largest  
message of the five)
  * 18246 (Header for 18245)

The argument in favor of merging this to 1.0 is that it is a  
usability concern: the entire Mac becomes unusably slow (because of  
paging) when a log like the hypahrat log is loaded.

The argument against merging it to 1.0 is that it is exceedingly  
unlikely that anybody will every encounter such a long. The large  
messages of the log were contrived by Kent for the specific purpose  
of stress-testing*; normal usage should never encounter a 1.2 MiB  
message.

I'm inclined to merge it. On my Mac, a mere 2000 elements (BRs or  
style changes) is enough to cause a noticeable delay; five large  
messages could well achieve that. And the bar is lower on less- 
powerful Macs, such as I imagine the average Adium user runs. It's a  
*lot* faster to load such logs on trunk that in b15.

* Something else, not message context.
________________________________
\ Peter Hosey / prh at boredzo.org
PGP public key ID: 7AB26BAD (since 2006-01-01)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
URL: <http://adium.im/pipermail/devel_adium.im/attachments/20061117/f086edd2/attachment.sig>


More information about the devel mailing list