[1585] in BarnOwl Developers
[nelhage/barnowl] 590842: BarnOwl::View::Iterator: Don't use trivial accesso...
daemon@ATHENA.MIT.EDU (noreply@github.com)
Thu Oct 29 18:18:21 2009
Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
X-Original-To: nelhage@lunatique.mit.edu
Date: Sun, 26 Jul 2009 20:47:55 -0700
To: barnowl-dev@mit.edu
From: noreply@github.com
Branch: refs/heads/barnowl_perlmessages
Home: http://github.com/nelhage/barnowl
Commit: 5908427645ec0531598ff76f8c442955a1cc6a83
http://github.com/nelhage/barnowl/commit/5908427645ec0531598ff76f8c442955a1cc6a83
Author: Nelson Elhage <nelhage@mit.edu>
Date: 2009-07-26 (Sun, 26 Jul 2009)
Changed paths:
M perl/lib/BarnOwl/View/Iterator.pm
Log Message:
-----------
BarnOwl::View::Iterator: Don't use trivial accessors
This code is almost all on critical paths, and the method call
overhead adds up.
Commit: 0c58d34e01433ef753fa8bc3b050838c81506387
http://github.com/nelhage/barnowl/commit/0c58d34e01433ef753fa8bc3b050838c81506387
Author: Nelson Elhage <nelhage@mit.edu>
Date: 2009-07-26 (Sun, 26 Jul 2009)
Changed paths:
M perl/lib/BarnOwl/View.pm
M perl/lib/BarnOwl/View/Iterator.pm
Log Message:
-----------
BarnOwl::View: Cache the most-recently-used range.
Keep track of which range we accessed last, to speed the common case
of lots of operations around the same point.
Commit: 5899b5fda8bdbdce5b2437c98f1671fee195247c
http://github.com/nelhage/barnowl/commit/5899b5fda8bdbdce5b2437c98f1671fee195247c
Author: Nelson Elhage <nelhage@mit.edu>
Date: 2009-07-26 (Sun, 26 Jul 2009)
Changed paths:
M perl/lib/BarnOwl/View.pm
Log Message:
-----------
View.pm: Optimize sub message.
Access $_ directly, instead of 'shift'ing into variables. This
decreases time by 40% in one of the hottest subs we have.
Commit: a306bda22172f20198f4b01a2a19ca3c4be5fbb6
http://github.com/nelhage/barnowl/commit/a306bda22172f20198f4b01a2a19ca3c4be5fbb6
Author: Nelson Elhage <nelhage@mit.edu>
Date: 2009-07-26 (Sun, 26 Jul 2009)
Changed paths:
M perl/lib/BarnOwl/MessageList.pm
Log Message:
-----------
MessageList: Cache $self->{keys}.
Doing a 'sort' on every iteration is expensive.
Commit: 52b4ed86673098bcbd4b840e66317eeececd9d36
http://github.com/nelhage/barnowl/commit/52b4ed86673098bcbd4b840e66317eeececd9d36
Author: Nelson Elhage <nelhage@mit.edu>
Date: 2009-07-26 (Sun, 26 Jul 2009)
Changed paths:
M perlglue.xs
Log Message:
-----------
save_excursion: Fix perl API error.
We need to save a mark and SPAGAIN around call_* macros. The old
behavior caused out-of-bounds stack dereferences and segfaults.
Commit: cdec266ccbe8b6ef09f6a29f61b0637c3be599e9
http://github.com/nelhage/barnowl/commit/cdec266ccbe8b6ef09f6a29f61b0637c3be599e9
Author: Nelson Elhage <nelhage@mit.edu>
Date: 2009-07-26 (Sun, 26 Jul 2009)
Changed paths:
M perlglue.xs
Log Message:
-----------
save_excursion: Remove an unnecessary SPAGAIN.