After upgrading from Mutt 1.5.21 to 1.5.23, trying to <limit> on
the contents of the bodies of emails ("l ~b some-string") has
become shockingly slow. It goes through about 10 messages per
second, taking minutes to filter a medium-size mailbox.

Granted, this is on a ten-year-old Athlon X2 but, as I recall,
Mutt 1.5.21 used to do the same operation much faster on the
same hardware. And I don't mean 20% faster, more like an order
of magnitude faster.

Filtering on headers ("l ~h some-string") is still as fast as it
used to be.

Anyone knows what happened and what can be done about it ?
Thanks in advance.

Top ten of the output of ltrace -c :

% time     seconds  usecs/call     calls      function
------ ----------- ----------- --------- --------------------
 15.52  213.163929         152   1396375 strchr
 12.39  170.096294         152   1115322 strcmp
 11.40  156.587240         152   1026538 __ctype_b_loc
 10.35  142.148496         152    930708 strlen
 10.14  139.233797         154    900301 fgets
  9.74  133.693317         152    877458 strspn
  6.33   86.957602     2350205        37 wgetch
  5.14   70.518078         153    460849 fgetc
  4.04   55.524286         546    101517 __realpath_chk
  1.57   21.558909         152    141393 memcpy

Top ten of the output of strace -c :

% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 89.88    2.396996         598      4010           clone
  7.31    0.195005          49      4010           waitpid
  1.85    0.049213           0    690970     15945 lstat64
  0.30    0.008000          75       106           select
  0.29    0.007648           0    101517           readlink
  0.08    0.002057           0     40242           rt_sigaction
  0.06    0.001554           0     20764           read
  0.05    0.001281           2       707           mkdir
  0.04    0.001011           0     16043           rt_sigprocmask
  0.03    0.000778           0      8016           alarm

-- 
André Majorel http://www.teaser.fr/~amajorel/

Reply via email to