1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <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 V1.75.2" /><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">
4 body { margin-left:2%; margin-right:2%; font-family:serif; }
5 .toc, .list-of-tables, .list-of-examples { font-family:sans-serif; }
6 h1, h2, h3, h4, h5, h6 { font-family:sans-serif; }
7 p { text-align:justify; }
8 div.table p.title, div.example p.title { font-size:smaller; font-family:sans-serif; }
9 .email, .email a { font-family:monospace; }
10 div.table-contents table, div.informaltable table { border-collapse:collapse; border:1px solid #c0c0c0; }
11 div.table-contents table td, div.informaltable td, div.table-contents table th, div.informaltable table th { padding:5px; text-align:left; }
12 div.table-contents table th, div.informaltable table th {
13 font-family:sans-serif;
18 div.cmdsynopsis { border-left:1px solid #707070; padding-left:5px; }
19 li div.cmdsynopsis { border-left:none; padding-left:0px; }
20 pre.screen, div.note { background:#f0f0f0; border:1px solid #c0c0c0; padding:5px; margin-left:2%; margin-right:2%; }
21 div.example p.title { margin-left:2%; }
22 div.note h3 { font-size:small; font-style:italic; font-variant: small-caps; }
23 div.note h3:after { content: ":" }
24 div.note { margin-bottom: 5px; }
25 .command { font-family: monospace; font-weight: normal; }
26 .command strong { font-weight: normal; }
27 tr { vertical-align: top; }
28 .comment { color:#707070; }
30 </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" title="Chapter 8. Performance Tuning"><div class="titlepage"><div><div><h2 class="title"><a id="tuning"></a>Chapter 8. Performance Tuning</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><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" title="1. Reading and Writing Mailboxes"><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>
31 Mutt's performance when reading mailboxes can be improved in two ways:
32 </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
33 For remote folders (IMAP and POP) as well as folders using one-file-per
34 message storage (Maildir and MH), Mutt's performance can be greatly
35 improved using <a class="link" href="optionalfeatures.html#header-caching" title="7.1. Header Caching">header caching</a>.
36 using a single database per folder.
37 </p></li><li class="listitem"><p>
38 Mutt provides the <a class="link" href="reference.html#read-inc" title="3.208. read_inc">$read_inc</a> and <a class="link" href="reference.html#write-inc" title="3.312. write_inc">$write_inc</a> variables to specify at which rate
39 to update progress counters. If these values are too low, Mutt may spend
40 more time on updating the progress counter than it spends on actually
41 reading/writing folders.
43 For example, when opening a maildir folder with a few thousand messages,
44 the default value for <a class="link" href="reference.html#read-inc" title="3.208. read_inc">$read_inc</a> may be
45 too low. It can be tuned on on a folder-basis using <a class="link" href="configuration.html#folder-hook" title="7. Setting Variables Based Upon Mailbox"><span class="command"><strong>folder-hook</strong></span>s</a>:
46 </p><pre class="screen">
47 <span class="comment"># use very high $read_inc to speed up reading hcache'd maildirs</span>
48 folder-hook . 'set read_inc=1000'
49 <span class="comment"># use lower value for reading slower remote IMAP folders</span>
50 folder-hook ^imap 'set read_inc=100'
51 <span class="comment"># use even lower value for reading even slower remote POP folders</span>
52 folder-hook ^pop 'set read_inc=1'</pre></li></ol></div><p>
53 These settings work on a per-message basis. However, as messages may
54 greatly differ in size and certain operations are much faster than
55 others, even per-folder settings of the increment variables may not be
56 desirable as they produce either too few or too much progress updates.
57 Thus, Mutt allows to limit the number of progress updates per second
58 it'll actually send to the terminal using the <a class="link" href="reference.html#time-inc" title="3.291. time_inc">$time_inc</a> variable.
59 </p></div><div class="sect1" title="2. Reading Messages from Remote Folders"><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>
60 Reading messages from remote folders such as IMAP an POP can be slow
61 especially for large mailboxes since Mutt only caches a very limited
62 number of recently viewed messages (usually 10) per session (so that it
63 will be gone for the next session.)
65 To improve performance and permanently cache whole messages, please
66 refer to Mutt's so-called <a class="link" href="optionalfeatures.html#body-caching" title="7.2. Body Caching">body
67 caching</a> for details.
68 </p></div><div class="sect1" title="3. Searching and Limiting"><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>
69 When searching mailboxes either via a search or a limit action, for some
70 patterns Mutt distinguishes between regular expression and string
71 searches. For regular expressions, patterns are prefixed with
72 <span class="quote">“<span class="quote">~</span>”</span> and with <span class="quote">“<span class="quote">=</span>”</span> for string searches.
74 Even though a regular expression search is fast, it's several times
75 slower than a pure string search which is noticeable especially on large
76 folders. As a consequence, a string search should be used instead of a
77 regular expression search if the user already knows enough about the
80 For example, when limiting a large folder to all messages sent to or by
81 an author, it's much faster to search for the initial part of an e-mail
82 address via <code class="literal">=Luser@</code> instead of
83 <code class="literal">~Luser@</code>. This is especially true for searching
84 message bodies since a larger amount of input has to be searched.
86 As for regular expressions, a lower case string search pattern makes
87 Mutt perform a case-insensitive search except for IMAP (because for IMAP
88 Mutt performs server-side searches which don't support
90 </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>