sieve-dev Performance of restrictClosure() on opt-sieve

Shi Jin jinzishuai at gmail.com
Sat Aug 2 12:37:47 CDT 2008


Hi there,


After completely converting my code into opt-sieve, I found the old
performance issue showed up again. Many months ago, I complained about the
speed of restrictClosure(). Then the tags were introduced so that it became
as fast as our old C code with pure arrays. However, with the new opt-sieve,
I found the speed is slow again. This time, of course no tags are used, and
we think they won't be necessary since the memory are static. Is there any
explanation to this performance downgrade? I took a look at the
restrictClosure() source code, obviously there is quite some work done
inside it. Do we have to reintroduce the tags and cache the data again? Also
I am wondering how the data are located in the memory and if there is a
direct way for me to access them since they are static.
Thanks a lot.

In addition, I mentioned earlier that the order of multiple field
restrictClosre(s,c) is different from the old version. Have we got a fix?
Thanks. I ask this because since restrictClosure() is expensive to do, I
would rather make one call instead of three for its individual components.
-- 
Sincerely,
Shi Jin, Ph.D.
http://www.ualberta.ca/~sjin1/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.mcs.anl.gov/mailman/private/sieve-dev/attachments/20080802/e8a076f7/attachment.htm>


More information about the sieve-dev mailing list