Re: resyncing a 40k folder generates 380k mail_addr_is_user calls
On 2007-03-28 10:29:04 -0500, David Champion wrote:
> * On 2007.03.28, in <20070328152640.GB8435@xxxxxxxxxxxxxxxxxxx>,
> * "Vincent Lefevre" <vincent@xxxxxxxxxx> wrote:
> >
> > After a new test, I think that's it. Note that bug 1931 is quite old
> > and Mutt probably has new debug messages. I don't have timings, I've
> > just looked at the percentage of lines in the log file.
>
> Why not both of you compile with profiling and see for sure?
Here's what I get:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ms/call ms/call name
58.62 0.34 0.34 86985 0.00 0.00 mutt_match_rx_list
10.34 0.40 0.06 3912117 0.00 0.00 ascii_tolower
6.90 0.44 0.04 1000449 0.00 0.00 ascii_strcasecmp
5.17 0.47 0.03 3912117 0.00 0.00 ascii_isupper
3.45 0.49 0.02 2655 0.01 0.01 _mutt_traverse_thread
1.72 0.50 0.01 44829 0.00 0.00 next_token
1.72 0.51 0.01 32868 0.00 0.00 mutt_read_rfc822_line
1.72 0.52 0.01 24219 0.00 0.00 safe_strdup
1.72 0.53 0.01 8572 0.00 0.00 _mutt_string_hook
1.72 0.54 0.01 8426 0.00 0.00 mutt_iconv_hook
1.72 0.55 0.01 5234 0.00 0.01 mutt_parse_rc_line
1.72 0.56 0.01 4213 0.00 0.03 mutt_iconv_open
1.72 0.57 0.01 800 0.01 0.01 mutt_getvaluebyname
1.72 0.58 0.01 2 5.00 5.00 hash_destroy
0.00 0.58 0.00 878730 0.00 0.00 mutt_strcasecmp
0.00 0.58 0.00 81353 0.00 0.00 safe_free
0.00 0.58 0.00 68351 0.00 0.00 patmatch
0.00 0.58 0.00 61255 0.00 0.01 mutt_pattern_exec
0.00 0.58 0.00 48486 0.00 0.00 safe_malloc
0.00 0.58 0.00 39305 0.00 0.01 mutt_is_mail_list
0.00 0.58 0.00 38219 0.00 0.00 ascii_strncasecmp
[...]
And with the mbox format (on which there is no slow down) instead of
maildir, on almost the same mailbox:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ms/call ms/call name
52.00 0.13 0.13 3860688 0.00 0.00 ascii_tolower
12.00 0.16 0.03 975584 0.00 0.00 ascii_strcasecmp
4.00 0.17 0.01 3860688 0.00 0.00 ascii_isupper
4.00 0.18 0.01 9139 0.00 0.02 mutt_canonical_charset
4.00 0.19 0.01 8560 0.00 0.00 _mutt_string_hook
4.00 0.20 0.01 3836 0.00 0.00 mutt_get_parameter
4.00 0.21 0.01 2649 0.00 0.00 _mutt_traverse_thread
4.00 0.22 0.01 1285 0.01 0.01 mutt_parse_references
4.00 0.23 0.01 775 0.01 0.06 parse_parameters
4.00 0.24 0.01 220 0.05 0.05 mutt_add_to_rx_list
4.00 0.25 0.01 3 3.33 67.60 mbox_parse_mailbox
0.00 0.25 0.00 877518 0.00 0.00 mutt_strcasecmp
0.00 0.25 0.00 67122 0.00 0.00 safe_free
0.00 0.25 0.00 44837 0.00 0.00 next_token
0.00 0.25 0.00 42240 0.00 0.00 safe_malloc
0.00 0.25 0.00 38157 0.00 0.00 ascii_strncasecmp
0.00 0.25 0.00 34883 0.00 0.00 mutt_strcmp
0.00 0.25 0.00 33952 0.00 0.00 mutt_buffer_add
0.00 0.25 0.00 33847 0.00 0.00 mutt_read_rfc822_line
0.00 0.25 0.00 32964 0.00 0.00 mutt_match_spam_list
0.00 0.25 0.00 32346 0.00 0.00 mutt_parse_rfc822_line
0.00 0.25 0.00 31378 0.00 0.00 mutt_buffer_addch
[...]
--
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)