xen-devel
[Xen-devel] RE: [RFC] transcendent memory for Linux
To: |
Pavel Machek <pavel@xxxxxx> |
Subject: |
[Xen-devel] RE: [RFC] transcendent memory for Linux |
From: |
Dan Magenheimer <dan.magenheimer@xxxxxxxxxx> |
Date: |
Mon, 29 Jun 2009 07:34:34 -0700 (PDT) |
Cc: |
npiggin@xxxxxxx, akpm@xxxxxxxx, jeremy@xxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx, tmem-devel@xxxxxxxxxxxxxx, alan@xxxxxxxxxxxxxxxxxxx, linux-mm@xxxxxxxxx, kurt.hackel@xxxxxxxxxx, Rusty Russell <rusty@xxxxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, dave.mccracken@xxxxxxxxxx, Marcelo Tosatti <mtosatti@xxxxxxxxxx>, Himanshu Raj <rhim@xxxxxxxxxxxxx>, sunil.mushran@xxxxxxxxxx, Avi Kivity <avi@xxxxxxxxxx>, Martin Schwidefsky <schwidefsky@xxxxxxxxxx>, Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx>, chris.mason@xxxxxxxxxx, Rik |
Delivery-date: |
Mon, 29 Jun 2009 08:08:23 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<20090624150420.GH1784@xxxxxx> |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
Hi Pavel --
Thanks for the feedback!
> This description (whole mail) needs to go into
> Documentation/, somewhere.
Good idea. I'll do that for the next time I post the patches.
> > Normal memory is directly addressable by the kernel,
> > of a known normally-fixed size, synchronously accessible,
> > and persistent (though not across a reboot).
> ...
> > Transcendent memory, or "tmem" for short, provides a
> > well-defined API to access this unusual class of memory.
> > The basic operations are page-copy-based and use a flexible
> > object-oriented addressing mechanism. Tmem assumes
>
> Should this API be documented, somewhere? Is it in-kernel API or does
> userland see it?
It is documented currently at:
http://oss.oracle.com/projects/tmem/documentation/api/
(just noticed I still haven't posted version 0.0.2 which
has a few minor changes).
I will add a briefer description of this API in Documentation/
It is in-kernel only because some of the operations have
a parameter that is a physical page frame number.
> > "Preswap" IS persistent, but for various reasons may not always
> > be available for use, again due to factors that may not be
> > visible to the kernel (but, briefly, if the kernel is being
> > "good" and has shared its resources nicely, then it will be
> > able to use preswap, else it will not). Once a page is put,
> > a get on the page will always succeed. So when the kernel
> > finds itself in a situation where it needs to swap out a page,
> > it first attempts to use preswap. If the put works, a disk
> > write and (usually) a disk read are avoided. If it doesn't,
> > the page is written to swap as usual. Unlike precache, whether
>
> Ok, how much slower this gets in the worst case? Single hypercall to
> find out that preswap is unavailable? I guess that compared to disk
> access that's lost in the noise?
Yes, the overhead of one hypercall per swap page is lost in
the noise.
Dan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|