Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Apr 2000 16:08:26 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Brian Fundakowski Feldman <green@FreeBSD.ORG>
Cc:        Alfred Perlstein <bright@wintelcom.net>, Kevin Day <toasty@dragondata.com>, hackers@FreeBSD.ORG
Subject:   Re: Double buffered cp(1)
Message-ID:  <200004222308.QAA56788@apollo.backplane.com>
References:   <Pine.BSF.4.21.0004221518200.13126-100000@green.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
:Err... I think what Alfred (should have) meant was that you should mmap
:the source file and madvise it MADV_SEQUENTIAL, then write() to the new
:file directly from that.  How bad do you foresee performance being then?
:
:--
: Brian Fundakowski Feldman           \  FreeBSD: The Power to Serve!  /
: green@FreeBSD.org                    `------------------------------'

    Between 3.x and 4.x I doubled the VM fault readahead size, but we
    are still talking relatively small I/O's (around 64KB to 128KB), so 
    you are still going to see a lot of faults.

    (The VM system in 4.x is also able to optimize reverse-indexed
    scans, is better able to discern random from sequential performance, and
    the heuristic is now partitioned and doesn't get confused by 
    multiple accessors operating on the same file, but these features 
    will have no impact on a simple file copy).

    Also,since the heuristic is already detecting sequential operation, 
    setting MADV_SEQUENTIAL in this case isn't going to change anything.
    MADV_SEQUENTIAL is useful when you are jumping around a mapping enough
    to defeat the sequential detection, but still want the VM system to
    perform large-block I/O when it takes a fault.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




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