[PATCH] emacs: Use a single buffer invisibility spec to fix quadratic search cost.

Pieter Praet pieter at praet.org
Wed Nov 16 13:29:03 PST 2011


On Tue, 15 Nov 2011 12:17:59 -0500, servilio <servilio at gmail.com> wrote:
> Hi,
> 
> Given that this change is about display of search results, I have the
> suspicion that the following two factors might be more relevant:
> 
> - size of the Emacs frame: bigger would mean more threads to show
> 
> - composition of the search results, specially length of the threads
> displayed, as the longer they go, the more hidden text there will be
> 
> And because of this, though you might already have a proper method for
> measuring it, the results are different. I thought about this because
> my searches have only ~180 threads, yet I could notice the difference.
> 

Definitely valid points, but these aren't likely to have affected my
test results, as every iteration started a fresh instance of Emacs,
full-screen, on the same screen, with the same query on the same
dataset, whilst ensuring -to a feasible degree- that Emacs was the
only thing vying for CPU time.

After including `redisplay' in the script (as suggested by Austin [1]),
I did get consistent results as well as a measurable performance
improvement due to the buffer invisibility spec patch.


As for the tests using `elp-instrument-package' and Austin's
`time-it' macro: I'm most likely just doing it wrong :)

> Servilio


Peace

-- 
Pieter

[1] id:"20111111052716.GU2658 at mit.edu"


More information about the notmuch mailing list