Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 May 2002 19:10:34 -0700
From:      Kris Kennaway <kris@obsecurity.org>
To:        Alan Cox <alc@FreeBSD.org>
Cc:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/vm vm_map.c vm_map.h
Message-ID:  <20020523191034.A5058@xor.obsecurity.org>
In-Reply-To: <200205240133.g4O1XP047545@freefall.freebsd.org>; from alc@FreeBSD.org on Thu, May 23, 2002 at 06:33:25PM -0700
References:  <200205240133.g4O1XP047545@freefall.freebsd.org>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
On Thu, May 23, 2002 at 06:33:25PM -0700, Alan Cox wrote:
> alc         2002/05/23 18:33:25 PDT
> 
>   Modified files:
>     sys/vm               vm_map.c vm_map.h 
>   Log:
>    o Replace the vm_map's hint by the root of a splay tree.  By design,
>      the last accessed datum is moved to the root of the splay tree.
>      Therefore, on lookups in which the hint resulted in O(1) access,
>      the splay tree still achieves O(1) access.  In contrast, on lookups
>      in which the hint failed miserably, the splay tree achieves amortized
>      logarithmic complexity, resulting in dramatic improvements on vm_maps
>      with a large number of entries.  For example, the execution time
>      for replaying an access log from www.cs.rice.edu against the thttpd
>      web server was reduced by 23.5% due to the large number of files
>      simultaneously mmap()ed by this server.  (The machine in question has
>      enough memory to cache most of this workload.)
>   
>      Nothing comes for free: At present, I see a 0.2% slowdown on "buildworld"
>      due to the overhead of maintaining the splay tree.  I believe that
>      some or all of this can be eliminated through optimizations
>      to the code.

Awesome!

Kris

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (FreeBSD)

iD8DBQE87aEaWry0BWjoQKURAssyAKC5/Glbo8U6yrWzBVHtdGIx6hcFPgCgl5w9
3MDXdAbv2DTPAaqRA0kbkaw=
=9Us+
-----END PGP SIGNATURE-----
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020523191034.A5058>