Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Apr 1997 09:03:05 -0500 (EST)
From:      "Peter M. Chen" <pmchen@eecs.umich.edu>
To:        koshy@india.hp.com, pmchen@eecs.umich.edu
Cc:        freebsd-current@freebsd.org
Subject:   Re: question on buffer cache and VMIO
Message-ID:  <199704031403.JAA20132@life.eecs.umich.edu>

next in thread | raw e-mail | index | archive | help
>From koshy@india.hp.com  Thu Apr  3 04:01:03 1997
>
>If I understood the paper correctly, Vista first copies out the protected 
>address range to RIO protected memory prior to allowing the application
>to proceed with its changes.
>
>Would some form of copy-on-write scheme help to eliminate this initial
>copy?  Whether there would be a performance benefit from this would depend
>on the relative costs of copying vs creating a set of mappings, I guess.

Vista is a library that implements transactional memory on top of Rio (like RVM
out of Carnegie Mellon, only 2000 times faster and 10 times smaller because of
reliable memory).  The initial copy is needed for transactions to implement
atomicity.  Copy-on-write wouldn't help because the transaction only copies the
range of addresses it intends on modifying.  We've actually implemented a
copy-on-write scheme to ease the programming of transactions (implicit
transactions), but this is really slow because of the extra mprotects and VM
traps.  Vista has only 5 usec overhead per transaction, so even 1 system call
hurts a lot.

Pete



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