X-Git-Url: https://git.llucax.com/software/mutt-debian.git/blobdiff_plain/14c29200cb58d3c4a0830265f2433849781858d0..9ae284163f491c64de122fcd555019040e0d4da7:/doc/tuning.html diff --git a/doc/tuning.html b/doc/tuning.html index 49ad4f3..26b0f17 100644 --- a/doc/tuning.html +++ b/doc/tuning.html @@ -1,60 +1,78 @@ -Chapter 7. Performance tuning

Chapter 7. Performance tuning

Table of Contents

1. Reading and writing mailboxes
2. Reading messages from remote folders
3. Searching and limiting

1. Reading and writing mailboxes

+Chapter 8. Performance Tuning

Chapter 8. Performance Tuning

1. Reading and Writing Mailboxes

Mutt's performance when reading mailboxes can be improved in two ways: +

  1. +For remote folders (IMAP and POP) as well as folders using one-file-per +message storage (Maildir and MH), Mutt's performance can be greatly +improved using header caching. +using a single database per folder. +

  2. +Mutt provides the $read_inc and $write_inc variables to specify at which rate +to update progress counters. If these values are too low, Mutt may spend +more time on updating the progress counter than it spends on actually +reading/writing folders.

    -

    1. -For remote folders (IMAP and POP) as well as folders using -one-file-per message storage (Maildir and MH), mutt's -performance can be greatly improved using -header caching. -Using a single database per folder may further increase -performance. -

    2. -Mutt provides the $read_inc -and $write_inc -variables to specify at which rate to update progress -counters. If these values are too low, mutt may spend more -time on updating the progress counter than it spends on -actually reading/writing folders. -

      -For example, when opening a maildir folder with a few -thousand messages, the default value for -$read_inc -may be too low. It can be tuned on on a folder-basis using -folder-hooks: - +For example, when opening a maildir folder with a few thousand messages, +the default value for $read_inc may be +too low. It can be tuned on on a folder-basis using folder-hooks:

      -# use very high $read_inc to speed up reading hcache'd maildirs
      +# use very high $read_inc to speed up reading hcache'd maildirs
       folder-hook . 'set read_inc=1000'
      -# use lower value for reading slower remote IMAP folders
      +# use lower value for reading slower remote IMAP folders
       folder-hook ^imap 'set read_inc=100'
      -# use even lower value for reading even slower remote POP folders
      -folder-hook ^pop 'set read_inc=1'

      -

    -

    These settings work on a per-message basis. However, as messages may -greatly differ in size and certain operations are much faster than others, -even per-folder settings of the increment variables may not be +# use even lower value for reading even slower remote POP folders +folder-hook ^pop 'set read_inc=1'

+These settings work on a per-message basis. However, as messages may +greatly differ in size and certain operations are much faster than +others, even per-folder settings of the increment variables may not be desirable as they produce either too few or too much progress updates. -Thus, Mutt allows to limit the number of progress updates per second it'll -actually send to the terminal using the -$time_inc variable.

2. Reading messages from remote folders

-Reading messages from remote folders such as IMAP an POP can be -slow especially for large mailboxes since mutt only caches a very -limited number of recently viewed messages (usually 10) per -session (so that it will be gone for the next session.) +Thus, Mutt allows to limit the number of progress updates per second +it'll actually send to the terminal using the $time_inc variable. +

2. Reading Messages from Remote Folders

+Reading messages from remote folders such as IMAP an POP can be slow +especially for large mailboxes since Mutt only caches a very limited +number of recently viewed messages (usually 10) per session (so that it +will be gone for the next session.)

-To improve performance and permanently cache whole messages, -please refer to mutt's so-called -body caching for details. -

3. Searching and limiting

-When searching mailboxes either via a search or a limit action, for -some patterns mutt distinguishes between regular expression and string +To improve performance and permanently cache whole messages, please +refer to Mutt's so-called body +caching for details. +

3. Searching and Limiting

+When searching mailboxes either via a search or a limit action, for some +patterns Mutt distinguishes between regular expression and string searches. For regular expressions, patterns are prefixed with -``˜'' and with ``='' for string searches. +“~” and with “=” for string searches.

Even though a regular expression search is fast, it's several times -slower than a pure string search which is noticable especially on large +slower than a pure string search which is noticeable especially on large folders. As a consequence, a string search should be used instead of a regular expression search if the user already knows enough about the search pattern. @@ -62,10 +80,11 @@ search pattern. For example, when limiting a large folder to all messages sent to or by an author, it's much faster to search for the initial part of an e-mail address via =Luser@ instead of -˜Luser@. This is especially true for searching +~Luser@. This is especially true for searching message bodies since a larger amount of input has to be searched.

-Please note that string search is an exact case-sensitive search -while a regular expression search with only lower-case letters performs -a case-insensitive search. -

+As for regular expressions, a lower case string search pattern makes +Mutt perform a case-insensitive search except for IMAP (because for IMAP +Mutt performs server-side searches which don't support +case-insensitivity). +