97 lines
No EOL
8.5 KiB
HTML
97 lines
No EOL
8.5 KiB
HTML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 8. Performance Tuning</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="home" href="index.html" title="The Mutt E-Mail Client" /><link rel="up" href="index.html" title="The Mutt E-Mail Client" /><link rel="prev" href="security.html" title="Chapter 7. Security Considerations" /><link rel="next" href="reference.html" title="Chapter 9. Reference" /><style xmlns="" type="text/css">
|
||
body { margin-left:2%; margin-right:2%; font-family:serif; }
|
||
.toc, .list-of-tables, .list-of-examples { font-family:sans-serif; }
|
||
h1, h2, h3, h4, h5, h6 { font-family:sans-serif; }
|
||
p { text-align:justify; }
|
||
div.table p.title, div.example p.title { font-size:smaller; font-family:sans-serif; }
|
||
.email, .email a { font-family:monospace; }
|
||
div.table-contents table, div.informaltable table { border-collapse:collapse; border:1px solid #c0c0c0; }
|
||
div.table-contents table td, div.informaltable td, div.table-contents table th, div.informaltable table th { padding:5px; text-align:left; }
|
||
div.table-contents table th, div.informaltable table th {
|
||
font-family:sans-serif;
|
||
background:#d0d0d0;
|
||
font-weight:normal;
|
||
vertical-align:top;
|
||
}
|
||
div.cmdsynopsis { border-left:1px solid #707070; padding-left:5px; }
|
||
li div.cmdsynopsis { border-left:none; padding-left:0px; }
|
||
pre.screen, div.note { background:#f0f0f0; border:1px solid #c0c0c0; padding:5px; margin-left:2%; margin-right:2%; }
|
||
div.example p.title { margin-left:2%; }
|
||
div.note h3 { font-size:small; font-style:italic; font-variant: small-caps; }
|
||
div.note h3:after { content: ":" }
|
||
div.note { margin-bottom: 5px; }
|
||
.command { font-family: monospace; font-weight: normal; }
|
||
.command strong { font-weight: normal; }
|
||
tr { vertical-align: top; }
|
||
.comment { color:#707070; }
|
||
|
||
</style></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 8. Performance Tuning</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="security.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="reference.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a id="tuning"></a>Chapter 8. Performance Tuning</h1></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="sect1"><a href="tuning.html#tuning-mailboxes">1. Reading and Writing Mailboxes</a></span></dt><dt><span class="sect1"><a href="tuning.html#tuning-messages">2. Reading Messages from Remote Folders</a></span></dt><dt><span class="sect1"><a href="tuning.html#tuning-search">3. Searching and Limiting</a></span></dt></dl></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="tuning-mailboxes"></a>1. Reading and Writing Mailboxes</h2></div></div></div><p>
|
||
Mutt's performance when reading mailboxes can be improved in two ways:
|
||
</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
|
||
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 <a class="link" href="optionalfeatures.html#header-caching" title="8.1. Header Caching">header caching</a>.
|
||
using a single database per folder.
|
||
</p></li><li class="listitem"><p>
|
||
Mutt provides the <a class="link" href="reference.html#read-inc" title="3.275. read_inc">$read_inc</a> and <a class="link" href="reference.html#write-inc" title="3.423. write_inc">$write_inc</a> 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.
|
||
</p><p>
|
||
For example, when opening a maildir folder with a few thousand messages,
|
||
the default value for <a class="link" href="reference.html#read-inc" title="3.275. read_inc">$read_inc</a> may be
|
||
too low. It can be tuned on a folder-basis using <a class="link" href="configuration.html#folder-hook" title="9. Setting Variables Based Upon Mailbox"><span class="command"><strong>folder-hook</strong></span>s</a>:
|
||
</p><pre class="screen">
|
||
<span class="comment"># use very high $read_inc to speed up reading hcache'd maildirs</span>
|
||
folder-hook . 'set read_inc=1000'
|
||
<span class="comment"># use lower value for reading slower remote IMAP folders</span>
|
||
folder-hook ^imap 'set read_inc=100'
|
||
<span class="comment"># use even lower value for reading even slower remote POP folders</span>
|
||
folder-hook ^pop 'set read_inc=1'</pre></li></ol></div><p>
|
||
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 <a class="link" href="reference.html#time-inc" title="3.397. time_inc">$time_inc</a> variable.
|
||
</p></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="tuning-messages"></a>2. Reading Messages from Remote Folders</h2></div></div></div><p>
|
||
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.)
|
||
</p><p>
|
||
To improve performance and permanently cache whole messages and
|
||
headers, please refer to <a class="link" href="optionalfeatures.html#body-caching" title="8.2. Body Caching">body
|
||
caching</a> and <a class="link" href="optionalfeatures.html#header-caching" title="8.1. Header Caching">header
|
||
caching</a> for details.
|
||
</p><p>
|
||
Additionally, it may be worth trying some of Mutt's experimental
|
||
features. <a class="link" href="reference.html#imap-qresync" title="3.151. imap_qresync">$imap_qresync</a> (which
|
||
requires header caching) can provide a huge speed boost opening
|
||
mailboxes if your IMAP server supports it. <a class="link" href="reference.html#imap-deflate" title="3.137. imap_deflate">$imap_deflate</a> enables compression, which
|
||
can also noticeably reduce download time for large mailboxes and
|
||
messages.
|
||
</p></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="tuning-search"></a>3. Searching and Limiting</h2></div></div></div><p>
|
||
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
|
||
<span class="quote">“<span class="quote">~</span>”</span> and with <span class="quote">“<span class="quote">=</span>”</span> for string searches.
|
||
</p><p>
|
||
Even though a regular expression search is fast, it's several times
|
||
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.
|
||
</p><p>
|
||
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 <code class="literal">=Luser@</code> instead of
|
||
<code class="literal">~Luser@</code>. This is especially true for searching
|
||
message bodies since a larger amount of input has to be searched.
|
||
</p><p>
|
||
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).
|
||
</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="security.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="reference.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 7. Security Considerations </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 9. Reference</td></tr></table></div></body></html> |