Re: [HCACHE] Profiling maildir/open with mutt-1.5.7 + maildir-hc
On Sat, 12 Feb 2005, Thomas Roessler wrote:
> On 2005-02-10 22:11:36 +0100, Thomas Glanzmann wrote:
>
> > However as you can see maildir_sort_inode and its children take
> > 16% of the whole process.
>
> Umh. Is this really less penalty than what we gain by having the
> patch? If someone could do some systematic measurements here, that
> would be helpful.
For me, sort_inode increases the speed
even with hcache enabled. (on reiserfs)
It is good for hashed directories, but
not so good for other filesystems.
--
tamo
Index: init.h
===================================================================
RCS file: /home/roessler/cvs/mutt/init.h,v
retrieving revision 3.66
diff -u -u -r3.66 init.h
--- init.h 12 Feb 2005 20:08:19 -0000 3.66
+++ init.h 13 Feb 2005 10:02:19 -0000
@@ -982,6 +982,15 @@
** .pp
** See also: ``$$to_chars''.
*/
+#ifdef USE_INODESORT
+ { "inode_sort", DT_BOOL, R_NONE, OPTINODESORT, 0 },
+ /*
+ ** .pp
+ ** If \fIset\fP, Mutt sorts Maildir messages according to inode.
+ ** You may want to set this option if your Maildir is on a
+ ** filesystem with hashed directory feature (e.g. ReiserFS).
+ */
+#endif
{ "ispell", DT_PATH, R_NONE, UL &Ispell, UL ISPELL },
/*
** .pp
Index: mh.c
===================================================================
RCS file: /home/roessler/cvs/mutt/mh.c,v
retrieving revision 3.23
diff -u -u -r3.23 mh.c
--- mh.c 3 Feb 2005 17:01:43 -0000 3.23
+++ mh.c 13 Feb 2005 10:02:19 -0000
@@ -940,8 +940,8 @@
mhs_free_sequences (&mhs);
}
#ifdef USE_INODESORT
-
- md = maildir_sort_inode(md);
+ if (option (OPTINODESORT))
+ md = maildir_sort_inode(md);
#endif /* USE_INODESORT */
if (ctx->magic == M_MAILDIR)
Index: mutt.h
===================================================================
RCS file: /home/roessler/cvs/mutt/mutt.h,v
retrieving revision 3.39
diff -u -u -r3.39 mutt.h
--- mutt.h 12 Feb 2005 19:19:25 -0000 3.39
+++ mutt.h 13 Feb 2005 10:02:19 -0000
@@ -370,6 +370,9 @@
OPTIMAPFORCESSL,
# endif
#endif
+#ifdef USE_INODESORT
+ OPTINODESORT,
+#endif
#if defined(USE_SSL) || defined(USE_NSS) || defined(USE_GNUTLS)
# ifndef USE_GNUTLS
OPTSSLV2,