All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vivek Goyal <vgoyal@redhat.com>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Andrea Righi <arighi@develer.com>,
	Balbir Singh <balbir@linux.vnet.ibm.com>,
	Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>,
	Greg Thelen <gthelen@google.com>,
	Wu Fengguang <fengguang.wu@intel.com>,
	Gui Jianfeng <guijianfeng@cn.fujitsu.com>,
	Ryo Tsuruta <ryov@valinux.co.jp>,
	Hirokazu Takahashi <taka@valinux.co.jp>,
	Jens Axboe <axboe@kernel.dk>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jonathan Corbet <corbet@lwn.net>,
	containers@lists.linux-foundation.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH 0/5] blk-throttle: writeback and swap IO control
Date: Thu, 24 Feb 2011 11:18:44 -0500	[thread overview]
Message-ID: <20110224161844.GD18494@redhat.com> (raw)
In-Reply-To: <20110224094039.89c07bea.kamezawa.hiroyu@jp.fujitsu.com>

On Thu, Feb 24, 2011 at 09:40:39AM +0900, KAMEZAWA Hiroyuki wrote:

[..]
> > > If we don't consider the swap IO, any other IO
> > > operation from our point of view will happen directly from process
> > > context (writes in memory + sync reads from the block device).
> > 
> > Why do we need to account for swap IO? Application never asked for swap
> > IO. It is kernel's decision to move soem pages to swap to free up some
> > memory. What's the point in charging those pages to application group
> > and throttle accordingly?
> > 
> 
> I think swap I/O should be controlled by memcg's dirty_ratio.
> But, IIRC, NEC guy had a requirement for this...
> 
> I think some enterprise cusotmer may want to throttle the whole speed of
> swapout I/O (not swapin)...so, they may be glad if they can limit throttle
> the I/O against a disk partition or all I/O tagged as 'swapio' rather than
> some cgroup name.

If swap is on a separate disk, then one can control put write throttling rules
on systemwide swapout. Though I still don't understand how that can help.

> 
> But I'm afraid slow swapout may consume much dirty_ratio and make things
> worse ;)

Exactly. So I think focus should be controlling things earlier and stop
applications early before they can either write too much data in page
cache etc.

Thanks
Vivek

WARNING: multiple messages have this Message-ID (diff)
From: Vivek Goyal <vgoyal@redhat.com>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Andrea Righi <arighi@develer.com>,
	Balbir Singh <balbir@linux.vnet.ibm.com>,
	Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>,
	Greg Thelen <gthelen@google.com>,
	Wu Fengguang <fengguang.wu@intel.com>,
	Gui Jianfeng <guijianfeng@cn.fujitsu.com>,
	Ryo Tsuruta <ryov@valinux.co.jp>,
	Hirokazu Takahashi <taka@valinux.co.jp>,
	Jens Axboe <axboe@kernel.dk>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jonathan Corbet <corbet@lwn.net>,
	containers@lists.linux-foundation.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH 0/5] blk-throttle: writeback and swap IO control
Date: Thu, 24 Feb 2011 11:18:44 -0500	[thread overview]
Message-ID: <20110224161844.GD18494@redhat.com> (raw)
In-Reply-To: <20110224094039.89c07bea.kamezawa.hiroyu@jp.fujitsu.com>

On Thu, Feb 24, 2011 at 09:40:39AM +0900, KAMEZAWA Hiroyuki wrote:

[..]
> > > If we don't consider the swap IO, any other IO
> > > operation from our point of view will happen directly from process
> > > context (writes in memory + sync reads from the block device).
> > 
> > Why do we need to account for swap IO? Application never asked for swap
> > IO. It is kernel's decision to move soem pages to swap to free up some
> > memory. What's the point in charging those pages to application group
> > and throttle accordingly?
> > 
> 
> I think swap I/O should be controlled by memcg's dirty_ratio.
> But, IIRC, NEC guy had a requirement for this...
> 
> I think some enterprise cusotmer may want to throttle the whole speed of
> swapout I/O (not swapin)...so, they may be glad if they can limit throttle
> the I/O against a disk partition or all I/O tagged as 'swapio' rather than
> some cgroup name.

If swap is on a separate disk, then one can control put write throttling rules
on systemwide swapout. Though I still don't understand how that can help.

> 
> But I'm afraid slow swapout may consume much dirty_ratio and make things
> worse ;)

Exactly. So I think focus should be controlling things earlier and stop
applications early before they can either write too much data in page
cache etc.

Thanks
Vivek

--
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>

  parent reply	other threads:[~2011-02-24 16:19 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-22 17:12 [PATCH 0/5] blk-throttle: writeback and swap IO control Andrea Righi
2011-02-22 17:12 ` Andrea Righi
     [not found] ` <1298394776-9957-1-git-send-email-arighi-vWjgImWzx8FBDgjK7y7TUQ@public.gmane.org>
2011-02-22 17:12   ` [PATCH 1/5] blk-cgroup: move blk-cgroup.h in include/linux/blk-cgroup.h Andrea Righi
2011-02-22 17:12   ` [PATCH 2/5] blk-cgroup: introduce task_to_blkio_cgroup() Andrea Righi
2011-02-22 17:12   ` [PATCH 3/5] page_cgroup: make page tracking available for blkio Andrea Righi
2011-02-22 17:12   ` [PATCH 4/5] blk-throttle: track buffered and anonymous pages Andrea Righi
2011-02-22 17:12   ` [PATCH 5/5] blk-throttle: buffered and anonymous page tracking instrumentation Andrea Righi
2011-02-22 19:34   ` [PATCH 0/5] blk-throttle: writeback and swap IO control Vivek Goyal
2011-02-24  6:08   ` Balbir Singh
2011-02-22 17:12 ` [PATCH 1/5] blk-cgroup: move blk-cgroup.h in include/linux/blk-cgroup.h Andrea Righi
2011-02-22 17:12   ` Andrea Righi
2011-02-22 17:12 ` [PATCH 2/5] blk-cgroup: introduce task_to_blkio_cgroup() Andrea Righi
2011-02-22 17:12   ` Andrea Righi
2011-02-22 17:12 ` [PATCH 3/5] page_cgroup: make page tracking available for blkio Andrea Righi
2011-02-22 17:12   ` Andrea Righi
2011-02-22 20:01   ` Jonathan Corbet
2011-02-22 20:01     ` Jonathan Corbet
2011-02-22 21:57     ` Vivek Goyal
2011-02-22 21:57       ` Vivek Goyal
     [not found]     ` <20110222130145.37cb151e-vw3g6Xz/EtPk1uMJSBkQmQ@public.gmane.org>
2011-02-22 21:57       ` Vivek Goyal
2011-02-22 23:01       ` Andrea Righi
2011-02-22 23:01     ` Andrea Righi
2011-02-22 23:01       ` Andrea Righi
2011-02-22 23:06       ` Vivek Goyal
2011-02-22 23:06         ` Vivek Goyal
2011-02-22 23:21         ` Jonathan Corbet
2011-02-22 23:21           ` Jonathan Corbet
2011-02-22 23:37         ` Andrea Righi
2011-02-22 23:37           ` Andrea Righi
     [not found]           ` <20110222233718.GF23723-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-23  4:49             ` KAMEZAWA Hiroyuki
2011-02-23  4:49           ` KAMEZAWA Hiroyuki
2011-02-23  4:49             ` KAMEZAWA Hiroyuki
     [not found]             ` <20110223134910.abbdc931.kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2011-02-23  8:59               ` Andrea Righi
2011-02-23  8:59             ` Andrea Righi
2011-02-23  8:59               ` Andrea Righi
2011-02-23 23:58               ` KAMEZAWA Hiroyuki
2011-02-23 23:58                 ` KAMEZAWA Hiroyuki
2011-02-25  0:48                 ` Andrea Righi
2011-02-25  0:48                   ` Andrea Righi
     [not found]                 ` <20110224085805.14766e93.kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2011-02-25  0:48                   ` Andrea Righi
     [not found]               ` <20110223085911.GC2174-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-23 23:58                 ` KAMEZAWA Hiroyuki
     [not found]         ` <20110222230630.GL28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-22 23:21           ` Jonathan Corbet
2011-02-22 23:37           ` Andrea Righi
2011-02-22 23:27       ` Jonathan Corbet
2011-02-22 23:27         ` Jonathan Corbet
2011-02-22 23:48         ` Andrea Righi
2011-02-22 23:48           ` Andrea Righi
     [not found]         ` <20110222162729.054fe596-vw3g6Xz/EtPk1uMJSBkQmQ@public.gmane.org>
2011-02-22 23:48           ` Andrea Righi
     [not found]       ` <20110222230146.GB23723-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-22 23:06         ` Vivek Goyal
2011-02-22 23:27         ` Jonathan Corbet
     [not found]   ` <1298394776-9957-4-git-send-email-arighi-vWjgImWzx8FBDgjK7y7TUQ@public.gmane.org>
2011-02-22 20:01     ` Jonathan Corbet
2011-02-22 21:22     ` Vivek Goyal
2011-02-22 21:22   ` Vivek Goyal
2011-02-22 21:22     ` Vivek Goyal
     [not found]     ` <20110222212253.GJ28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-22 23:08       ` Andrea Righi
2011-02-22 23:08     ` Andrea Righi
2011-02-22 23:08       ` Andrea Righi
2011-02-22 17:12 ` [PATCH 4/5] blk-throttle: track buffered and anonymous pages Andrea Righi
2011-02-22 17:12   ` Andrea Righi
2011-02-22 18:42   ` Chad Talbott
2011-02-22 18:42     ` Chad Talbott
     [not found]     ` <AANLkTinD2ZH3hw_iqVpvMjMRbUkXMBgttjd2NevvYq9x-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-02-22 19:12       ` Andrea Righi
2011-02-22 20:49       ` Vivek Goyal
2011-02-22 19:12     ` Andrea Righi
2011-02-22 19:12       ` Andrea Righi
2011-02-22 20:49     ` Vivek Goyal
2011-02-22 20:49       ` Vivek Goyal
2011-02-22 23:03       ` Andrea Righi
2011-02-22 23:03         ` Andrea Righi
     [not found]       ` <20110222204928.GH28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-22 23:03         ` Andrea Righi
2011-02-22 21:00   ` Vivek Goyal
2011-02-22 21:00     ` Vivek Goyal
     [not found]     ` <20110222210030.GI28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-22 23:05       ` Andrea Righi
2011-02-22 23:05     ` Andrea Righi
2011-02-22 23:05       ` Andrea Righi
2011-02-23  0:07       ` Vivek Goyal
2011-02-23  0:07         ` Vivek Goyal
2011-02-23  8:37         ` Andrea Righi
2011-02-23  8:37           ` Andrea Righi
     [not found]         ` <20110223000718.GN28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-23  8:37           ` Andrea Righi
     [not found]       ` <20110222230534.GD23723-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-23  0:07         ` Vivek Goyal
     [not found]   ` <1298394776-9957-5-git-send-email-arighi-vWjgImWzx8FBDgjK7y7TUQ@public.gmane.org>
2011-02-22 18:42     ` Chad Talbott
2011-02-22 21:00     ` Vivek Goyal
2011-02-22 17:12 ` [PATCH 5/5] blk-throttle: buffered and anonymous page tracking instrumentation Andrea Righi
2011-02-22 17:12   ` Andrea Righi
2011-02-22 19:34 ` [PATCH 0/5] blk-throttle: writeback and swap IO control Vivek Goyal
2011-02-22 19:34   ` Vivek Goyal
     [not found]   ` <20110222193403.GG28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-22 22:41     ` Andrea Righi
2011-02-22 22:41   ` Andrea Righi
2011-02-22 22:41     ` Andrea Righi
     [not found]     ` <20110222224141.GA23723-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-23  0:03       ` Vivek Goyal
2011-02-23  0:03     ` Vivek Goyal
2011-02-23  0:03       ` Vivek Goyal
     [not found]       ` <20110223000358.GM28269-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-23  8:32         ` Andrea Righi
2011-02-23  8:32       ` Andrea Righi
2011-02-23  8:32         ` Andrea Righi
2011-02-23 15:23         ` Vivek Goyal
2011-02-23 15:23           ` Vivek Goyal
     [not found]           ` <20110223152354.GA2526-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-23 23:14             ` Andrea Righi
2011-02-23 23:14           ` Andrea Righi
2011-02-23 23:14             ` Andrea Righi
2011-02-24  0:10             ` Vivek Goyal
2011-02-24  0:10               ` Vivek Goyal
     [not found]               ` <20110224001033.GF2526-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-02-24  0:40                 ` KAMEZAWA Hiroyuki
2011-02-25  0:54                 ` Andrea Righi
2011-02-24  0:40               ` KAMEZAWA Hiroyuki
2011-02-24  0:40                 ` KAMEZAWA Hiroyuki
2011-02-24  2:01                 ` Greg Thelen
2011-02-24  2:01                   ` Greg Thelen
     [not found]                 ` <20110224094039.89c07bea.kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2011-02-24  2:01                   ` Greg Thelen
2011-02-24 16:18                   ` Vivek Goyal
     [not found]                     ` <20110224161844.GD18494__23141.7772280567$1298564487$gmane$org-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2011-03-23 18:48                       ` Daniel Poelzleithner
2011-02-24 16:18                 ` Vivek Goyal [this message]
2011-02-24 16:18                   ` Vivek Goyal
2011-02-25  0:54               ` Andrea Righi
2011-02-25  0:54                 ` Andrea Righi
     [not found]             ` <20110223231410.GB1744-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-24  0:10               ` Vivek Goyal
     [not found]         ` <20110223083206.GA2174-fxUVXftIFDlZdMzt4l2sLQC/G2K4zDHf@public.gmane.org>
2011-02-23 15:23           ` Vivek Goyal
2011-02-24  6:08 ` Balbir Singh
2011-02-24  6:08   ` Balbir Singh
  -- strict thread matches above, loose matches on Subject: below --
2011-02-22 17:12 Andrea Righi

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=20110224161844.GD18494@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=arighi@develer.com \
    --cc=axboe@kernel.dk \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=containers@lists.linux-foundation.org \
    --cc=corbet@lwn.net \
    --cc=fengguang.wu@intel.com \
    --cc=gthelen@google.com \
    --cc=guijianfeng@cn.fujitsu.com \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=nishimura@mxp.nes.nec.co.jp \
    --cc=ryov@valinux.co.jp \
    --cc=taka@valinux.co.jp \
    /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.