All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Maxime Coquelin <maxime.coquelin@stericsson.com>
Cc: linux-mm@kvack.org, linaro-mm-sig@lists.linaro.org,
	Mel Gorman <mel@csn.ul.ie>, Ankita Garg <ankita@in.ibm.com>,
	linux-kernel@vger.kernel.org, linus.walleij@stericsson.com,
	andrea.gallo@stericsson.com, vincent.guittot@stericsson.com,
	philippe.langlais@stericsson.com, loic.pallardy@stericsson.com,
	Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>
Subject: Re: [RFCv1 0/6] PASR: Partial Array Self-Refresh Framework
Date: Mon, 30 Jan 2012 14:53:41 +0100	[thread overview]
Message-ID: <20120130135341.GA3720@elte.hu> (raw)
In-Reply-To: <1327930436-10263-1-git-send-email-maxime.coquelin@stericsson.com>


* Maxime Coquelin <maxime.coquelin@stericsson.com> wrote:

> The role of this framework is to stop the refresh of unused 
> memory to enhance DDR power consumption.

I'm wondering in what scenarios this is useful, and how 
consistently it is useful.

The primary concern I can see is that on most Linux systems with 
an uptime more than a couple of minutes RAM gets used up by the 
Linux page-cache:

 $ uptime
  14:46:39 up 11 days,  2:04, 19 users,  load average: 0.11, 0.29, 0.80
 $ free
              total       used       free     shared    buffers     cached
 Mem:      12255096   12030152     224944          0     651560    6000452
 -/+ buffers/cache:    5378140    6876956

Even mobile phones easily have days of uptime - quite often 
weeks of uptime. I'd expect the page-cache to fill up RAM on 
such systems.

So how will this actually end up saving power consistently? Does 
it have to be combined with a VM policy that more aggressively 
flushes cached pages from the page-cache?

A secondary concern is fragmentation: right now we fragment 
memory rather significantly. For the Ux500 PASR driver you've 
implemented the section size is 64 MB. Do I interpret the code 
correctly in that a continuous, 64MB physical block of RAM has 
to be 100% free for us to be able to turn off refresh and power 
for this block of RAM?

Thanks,

	Ingo

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Ingo Molnar <mingo@elte.hu>
To: Maxime Coquelin <maxime.coquelin@stericsson.com>
Cc: linux-mm@kvack.org, linaro-mm-sig@lists.linaro.org,
	Mel Gorman <mel@csn.ul.ie>, Ankita Garg <ankita@in.ibm.com>,
	linux-kernel@vger.kernel.org, linus.walleij@stericsson.com,
	andrea.gallo@stericsson.com, vincent.guittot@stericsson.com,
	philippe.langlais@stericsson.com, loic.pallardy@stericsson.com,
	Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>
Subject: Re: [RFCv1 0/6] PASR: Partial Array Self-Refresh Framework
Date: Mon, 30 Jan 2012 14:53:41 +0100	[thread overview]
Message-ID: <20120130135341.GA3720@elte.hu> (raw)
In-Reply-To: <1327930436-10263-1-git-send-email-maxime.coquelin@stericsson.com>


* Maxime Coquelin <maxime.coquelin@stericsson.com> wrote:

> The role of this framework is to stop the refresh of unused 
> memory to enhance DDR power consumption.

I'm wondering in what scenarios this is useful, and how 
consistently it is useful.

The primary concern I can see is that on most Linux systems with 
an uptime more than a couple of minutes RAM gets used up by the 
Linux page-cache:

 $ uptime
  14:46:39 up 11 days,  2:04, 19 users,  load average: 0.11, 0.29, 0.80
 $ free
              total       used       free     shared    buffers     cached
 Mem:      12255096   12030152     224944          0     651560    6000452
 -/+ buffers/cache:    5378140    6876956

Even mobile phones easily have days of uptime - quite often 
weeks of uptime. I'd expect the page-cache to fill up RAM on 
such systems.

So how will this actually end up saving power consistently? Does 
it have to be combined with a VM policy that more aggressively 
flushes cached pages from the page-cache?

A secondary concern is fragmentation: right now we fragment 
memory rather significantly. For the Ux500 PASR driver you've 
implemented the section size is 64 MB. Do I interpret the code 
correctly in that a continuous, 64MB physical block of RAM has 
to be 100% free for us to be able to turn off refresh and power 
for this block of RAM?

Thanks,

	Ingo

  parent reply	other threads:[~2012-01-30 13:53 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-30 13:33 [RFCv1 0/6] PASR: Partial Array Self-Refresh Framework Maxime Coquelin
2012-01-30 13:33 ` Maxime Coquelin
2012-01-30 13:33 ` [RFCv1 1/6] PASR: Initialize DDR layout Maxime Coquelin
2012-01-30 13:33   ` Maxime Coquelin
2012-01-30 13:33 ` [RFCv1 2/6] PASR: Add core Framework Maxime Coquelin
2012-01-30 13:33   ` Maxime Coquelin
2012-01-30 13:33 ` [RFCv1 3/6] PASR: mm: Integrate PASR in Buddy allocator Maxime Coquelin
2012-01-30 13:33   ` Maxime Coquelin
2012-01-30 15:22   ` Mel Gorman
2012-01-30 15:22     ` Mel Gorman
2012-01-30 16:52     ` Maxime Coquelin
2012-01-30 16:52       ` Maxime Coquelin
2012-01-31 12:15       ` Maxime Coquelin
2012-01-31 12:15         ` Maxime Coquelin
2012-01-31 14:01         ` Mel Gorman
2012-01-31 14:01           ` Mel Gorman
2012-01-31 18:55           ` Maxime Coquelin
2012-01-31 18:55             ` Maxime Coquelin
2012-02-03 11:44             ` Mel Gorman
2012-02-03 11:44               ` Mel Gorman
2012-01-31 12:46       ` Pekka Enberg
2012-01-31 12:46         ` Pekka Enberg
2012-01-30 13:33 ` [RFCv1 4/6] PASR: Call PASR initialization Maxime Coquelin
2012-01-30 13:33   ` Maxime Coquelin
2012-01-30 13:33 ` [RFCv1 5/6] PASR: Add Documentation Maxime Coquelin
2012-01-30 13:33   ` Maxime Coquelin
2012-02-02  3:51   ` Randy Dunlap
2012-02-02  3:51     ` Randy Dunlap
2012-02-02 17:12     ` Maxime Coquelin
2012-02-02 17:12       ` Maxime Coquelin
2012-01-30 13:33 ` [RFCv1 6/6] PASR: Ux500: Add PASR support Maxime Coquelin
2012-01-30 13:33   ` Maxime Coquelin
2012-01-30 13:53 ` Ingo Molnar [this message]
2012-01-30 13:53   ` [RFCv1 0/6] PASR: Partial Array Self-Refresh Framework Ingo Molnar
2012-01-30 14:19   ` Maxime Coquelin
2012-01-30 14:19     ` Maxime Coquelin
2012-01-31 12:39     ` Ingo Molnar
2012-01-31 12:39       ` Ingo Molnar
2012-01-31 14:48       ` Maxime Coquelin
2012-01-31 14:48         ` Maxime Coquelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120130135341.GA3720@elte.hu \
    --to=mingo@elte.hu \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=andrea.gallo@stericsson.com \
    --cc=ankita@in.ibm.com \
    --cc=linaro-mm-sig@lists.linaro.org \
    --cc=linus.walleij@stericsson.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=loic.pallardy@stericsson.com \
    --cc=maxime.coquelin@stericsson.com \
    --cc=mel@csn.ul.ie \
    --cc=philippe.langlais@stericsson.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=vincent.guittot@stericsson.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.