xen-devel
[Xen-devel] Re: [RFC] transcendent memory for Linux
To: |
Dan Magenheimer <dan.magenheimer@xxxxxxxxxx> |
Subject: |
[Xen-devel] Re: [RFC] transcendent memory for Linux |
From: |
Linus Walleij <linus.ml.walleij@xxxxxxxxx> |
Date: |
Sat, 27 Jun 2009 15:18:55 +0200 |
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>, linux-embedded@xxxxxxxxxxxxxxx, chris.mason@xxxxxxxxxx, Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> |
Delivery-date: |
Mon, 29 Jun 2009 08:05:20 -0700 |
Dkim-signature: |
v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=olaQNZtiSZSXN945HOaHkNJ+cLVRa64ZzEvoPapqD6I=; b=kiEfpB7SyrbHflql1VlhmwFbeqhkO3txidQdFVVGJzmFLqkutyb8FXGR0ts0gIpQAH NgxbtMyEuAwcgV1/qZE2Wo1SdlJIHQJW4bXFEUUcqerL+49+934n4spE/6XWwJj205fB QedDFH/SoM669KfTG4ZxshtvD8Omx6sl+GtpM= |
Domainkey-signature: |
a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=gPT90VDUVb1tNNNFEpvVBwnpr8j62QWT++6GpQZ2bd1sJVk6rlgtjJZ3lWAwbW2/9/ MWxxeROJyPYHcNUq23oKm3v2fktIKI+yzkigaFXOz2RWcQBpylAVptpGEyCzB+Ntdo1+ rgFYejZP+eBWp+nYTkabNVQ9g45vHsXGzaiQ0= |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<cd40cd91-66e9-469d-b079-3a899a3ccadb@default> |
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> |
References: |
<cd40cd91-66e9-469d-b079-3a899a3ccadb@default> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
2009/6/20 Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>:
> We call this latter class "transcendent memory" and it
> provides an interesting opportunity to more efficiently
> utilize RAM in a virtualized environment. However this
> "memory but not really memory" may also have applications
> in NON-virtualized environments, such as hotplug-memory
> deletion, SSDs, and page cache compression. Others have
> suggested ideas such as allowing use of highmem memory
> without a highmem kernel, or use of spare video memory.
Here is what I consider may be a use case from the embedded
world: we have to save power as much as possible, so we need
to shut off entire banks of memory.
Currently people do things like put memory into self-refresh
and then sleep, but for long lapses of time you would
want to compress memory towards lower addresses and
turn as many banks as possible off.
So we have something like 4x16MB banks of RAM = 64MB RAM,
and the most necessary stuff easily fits in one of them.
If we can shut down 3x16MB we save 3 x power supply of the
RAMs.
However in embedded we don't have any swap, so we'd need
some call that would attempt to remove a memory by paging
out code and data that has been demand-paged in
from the FS but no dirty pages, these should instead be
moved down to memory which will be retained, and the
call should fail if we didn't succeed to migrate all
dirty pages.
Would this be possible with transcendent memory?
Yours,
Linus Walleij
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|