All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anton Vorontsov <anton.vorontsov@linaro.org>
To: Pekka Enberg <penberg@kernel.org>
Cc: KOSAKI Motohiro <kosaki.motohiro@gmail.com>,
	Leonid Moiseichuk <leonid.moiseichuk@nokia.com>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	John Stultz <john.stultz@linaro.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	linaro-kernel@lists.linaro.org, patches@linaro.org,
	kernel-team@android.com
Subject: Re: [PATCH 2/5] vmevent: Convert from deferred timer to deferred work
Date: Fri, 8 Jun 2012 01:07:05 -0700	[thread overview]
Message-ID: <20120608080704.GB6362@lizard> (raw)
In-Reply-To: <CAOJsxLEOsTC9mLo12dEpeatkgKq0xHjZXhGcO7Z99JHs3-D=9w@mail.gmail.com>

On Fri, Jun 08, 2012 at 10:03:24AM +0300, Pekka Enberg wrote:
> On Fri, Jun 8, 2012 at 9:58 AM, Anton Vorontsov
> <anton.vorontsov@linaro.org> wrote:
> > If you're saying that we should set up a timer in the userland and
> > constantly read /proc/vmstat, then we will cause CPU wake up
> > every 100ms, which is not acceptable. Well, we can try to introduce
> > deferrable timers for the userspace. But then it would still add
> > a lot more overhead for our task, as this solution adds other two
> > context switches to read and parse /proc/vmstat. I guess this is
> > not a show-stopper though, so we can discuss this.
> >
> > Leonid, Pekka, what do you think about the idea?
> 
> That's exactly the kind of half-assed ABI that lead to people
> inventing out-of-tree lowmem notifiers in the first place.

:-)

Well, at least powersaving-wise, the solution w/ userland deferred
timers would be much better then just looping over /proc/vmstat each
100ms, and it is comparable to vmevent. Not pretty, but still would
work.

> I'd be more interested to know what people think of Minchan's that
> gets rid of vmstat sampling.

I answered to Minchan's post. The thing is that Minchan's idea
is not a substitution for vmevent. To me it seems like a shrinker w/
some pre-filter.

Thanks,

-- 
Anton Vorontsov
Email: cbouatmailru@gmail.com

--
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/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Anton Vorontsov <anton.vorontsov@linaro.org>
To: Pekka Enberg <penberg@kernel.org>
Cc: KOSAKI Motohiro <kosaki.motohiro@gmail.com>,
	Leonid Moiseichuk <leonid.moiseichuk@nokia.com>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	John Stultz <john.stultz@linaro.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	linaro-kernel@lists.linaro.org, patches@linaro.org,
	kernel-team@android.com
Subject: Re: [PATCH 2/5] vmevent: Convert from deferred timer to deferred work
Date: Fri, 8 Jun 2012 01:07:05 -0700	[thread overview]
Message-ID: <20120608080704.GB6362@lizard> (raw)
In-Reply-To: <CAOJsxLEOsTC9mLo12dEpeatkgKq0xHjZXhGcO7Z99JHs3-D=9w@mail.gmail.com>

On Fri, Jun 08, 2012 at 10:03:24AM +0300, Pekka Enberg wrote:
> On Fri, Jun 8, 2012 at 9:58 AM, Anton Vorontsov
> <anton.vorontsov@linaro.org> wrote:
> > If you're saying that we should set up a timer in the userland and
> > constantly read /proc/vmstat, then we will cause CPU wake up
> > every 100ms, which is not acceptable. Well, we can try to introduce
> > deferrable timers for the userspace. But then it would still add
> > a lot more overhead for our task, as this solution adds other two
> > context switches to read and parse /proc/vmstat. I guess this is
> > not a show-stopper though, so we can discuss this.
> >
> > Leonid, Pekka, what do you think about the idea?
> 
> That's exactly the kind of half-assed ABI that lead to people
> inventing out-of-tree lowmem notifiers in the first place.

:-)

Well, at least powersaving-wise, the solution w/ userland deferred
timers would be much better then just looping over /proc/vmstat each
100ms, and it is comparable to vmevent. Not pretty, but still would
work.

> I'd be more interested to know what people think of Minchan's that
> gets rid of vmstat sampling.

I answered to Minchan's post. The thing is that Minchan's idea
is not a substitution for vmevent. To me it seems like a shrinker w/
some pre-filter.

Thanks,

-- 
Anton Vorontsov
Email: cbouatmailru@gmail.com

  reply	other threads:[~2012-06-08  8:08 UTC|newest]

Thread overview: 188+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-01 13:24 [PATCH 0/3] vmevent: Implement 'low memory' attribute Anton Vorontsov
2012-05-01 13:24 ` Anton Vorontsov
2012-05-01 13:25 ` [PATCH 1/3] vmevent: Implement equal-to attribute state Anton Vorontsov
2012-05-01 13:25   ` Anton Vorontsov
2012-05-01 13:25 ` [PATCH 2/3] vmevent: Pass attr argument to sampling functions Anton Vorontsov
2012-05-01 13:25   ` Anton Vorontsov
2012-05-01 13:26 ` [PATCH 3/3] vmevent: Implement special low-memory attribute Anton Vorontsov
2012-05-01 13:26   ` Anton Vorontsov
2012-05-03 10:33   ` Pekka Enberg
2012-05-03 10:33     ` Pekka Enberg
2012-05-04  4:26   ` Minchan Kim
2012-05-04  4:26     ` Minchan Kim
2012-05-04  7:38     ` Anton Vorontsov
2012-05-04  7:38       ` Anton Vorontsov
2012-05-07  7:14       ` Pekka Enberg
2012-05-07  7:14         ` Pekka Enberg
2012-05-07  8:26         ` KOSAKI Motohiro
2012-05-07  8:26           ` KOSAKI Motohiro
2012-05-07 12:15           ` Anton Vorontsov
2012-05-07 12:15             ` Anton Vorontsov
2012-05-07 19:19             ` KOSAKI Motohiro
2012-05-07 19:19               ` KOSAKI Motohiro
2012-05-08  0:31               ` Anton Vorontsov
2012-05-08  0:31                 ` Anton Vorontsov
2012-05-08  5:20               ` Pekka Enberg
2012-05-08  5:20                 ` Pekka Enberg
2012-05-08  5:42                 ` KOSAKI Motohiro
2012-05-08  5:42                   ` KOSAKI Motohiro
2012-05-08  5:53                   ` Pekka Enberg
2012-05-08  5:53                     ` Pekka Enberg
2012-05-08  7:11                     ` KOSAKI Motohiro
2012-05-08  7:11                       ` KOSAKI Motohiro
2012-05-08  7:36                       ` Pekka Enberg
2012-05-08  7:36                         ` Pekka Enberg
2012-05-08  7:50                         ` KOSAKI Motohiro
2012-05-08  7:50                           ` KOSAKI Motohiro
2012-05-08  8:03                           ` Pekka Enberg
2012-05-08  8:03                             ` Pekka Enberg
2012-05-08  9:15                             ` leonid.moiseichuk
2012-05-08  9:15                               ` leonid.moiseichuk
2012-05-08  9:19                               ` Pekka Enberg
2012-05-08  9:19                                 ` Pekka Enberg
2012-05-08 10:38                                 ` leonid.moiseichuk
2012-05-08 10:38                                   ` leonid.moiseichuk
2012-06-01 12:21                         ` [PATCH 0/5] Some vmevent fixes Anton Vorontsov
2012-06-01 12:21                           ` Anton Vorontsov
2012-06-01 12:24                           ` [PATCH 1/5] vmstat: Implement refresh_vm_stats() Anton Vorontsov
2012-06-01 12:24                             ` Anton Vorontsov
2012-06-05 14:30                             ` Christoph Lameter
2012-06-05 14:30                               ` Christoph Lameter
2012-06-08  3:17                             ` KOSAKI Motohiro
2012-06-08  3:17                               ` KOSAKI Motohiro
2012-06-01 12:24                           ` [PATCH 2/5] vmevent: Convert from deferred timer to deferred work Anton Vorontsov
2012-06-01 12:24                             ` Anton Vorontsov
2012-06-08  3:25                             ` KOSAKI Motohiro
2012-06-08  3:25                               ` KOSAKI Motohiro
2012-06-08  6:58                               ` Anton Vorontsov
2012-06-08  6:58                                 ` Anton Vorontsov
2012-06-08  7:03                                 ` Pekka Enberg
2012-06-08  7:03                                   ` Pekka Enberg
2012-06-08  8:07                                   ` Anton Vorontsov [this message]
2012-06-08  8:07                                     ` Anton Vorontsov
2012-06-08  7:05                                 ` leonid.moiseichuk
2012-06-08  7:05                                   ` leonid.moiseichuk
2012-06-08  7:10                                   ` KOSAKI Motohiro
2012-06-08  7:10                                     ` KOSAKI Motohiro
2012-06-08  7:18                                     ` leonid.moiseichuk
2012-06-08  7:18                                       ` leonid.moiseichuk
2012-06-08  7:23                                       ` KOSAKI Motohiro
2012-06-08  7:23                                         ` KOSAKI Motohiro
2012-06-08  7:28                                         ` leonid.moiseichuk
2012-06-08  7:28                                           ` leonid.moiseichuk
2012-06-08  7:33                                           ` KOSAKI Motohiro
2012-06-08  7:33                                             ` KOSAKI Motohiro
2012-06-08  7:49                                             ` leonid.moiseichuk
2012-06-08  7:49                                               ` leonid.moiseichuk
2012-06-08  7:58                                   ` Anton Vorontsov
2012-06-08  7:58                                     ` Anton Vorontsov
2012-06-08  8:16                                     ` leonid.moiseichuk
2012-06-08  8:16                                       ` leonid.moiseichuk
2012-06-08  8:41                                       ` Anton Vorontsov
2012-06-08  8:41                                         ` Anton Vorontsov
2012-06-08  8:57                                         ` leonid.moiseichuk
2012-06-08  8:57                                           ` leonid.moiseichuk
2012-06-08 10:35                                           ` Anton Vorontsov
2012-06-08 10:35                                             ` Anton Vorontsov
2012-06-08 11:03                                             ` leonid.moiseichuk
2012-06-08 11:03                                               ` leonid.moiseichuk
2012-06-08 12:13                                               ` Anton Vorontsov
2012-06-08 12:13                                                 ` Anton Vorontsov
2012-06-08 12:25                                                 ` leonid.moiseichuk
2012-06-08 12:25                                                   ` leonid.moiseichuk
2012-06-01 12:24                           ` [PATCH 3/5] vmevent: Refresh vmstats before sampling Anton Vorontsov
2012-06-01 12:24                             ` Anton Vorontsov
2012-06-05 14:36                             ` Christoph Lameter
2012-06-05 14:36                               ` Christoph Lameter
2012-06-01 12:24                           ` [PATCH 4/5] vmevent: Hide meaningful names from the user-visible header Anton Vorontsov
2012-06-01 12:24                             ` Anton Vorontsov
2012-06-01 12:24                           ` [PATCH 5/5] vmevent: Rename one-shot mode to edge trigger mode Anton Vorontsov
2012-06-01 12:24                             ` Anton Vorontsov
2012-06-03 18:26                           ` [PATCH 0/5] Some vmevent fixes Pekka Enberg
2012-06-03 18:26                             ` Pekka Enberg
2012-06-04  8:45                             ` Minchan Kim
2012-06-04  8:45                               ` Minchan Kim
2012-06-04  9:20                               ` Pekka Enberg
2012-06-04  9:20                                 ` Pekka Enberg
2012-06-04 12:23                                 ` Minchan Kim
2012-06-04 12:23                                   ` Minchan Kim
2012-06-04 11:38                               ` Anton Vorontsov
2012-06-04 11:38                                 ` Anton Vorontsov
2012-06-04 12:17                                 ` Minchan Kim
2012-06-04 12:17                                   ` Minchan Kim
2012-06-04 13:35                                   ` Anton Vorontsov
2012-06-04 13:35                                     ` Anton Vorontsov
2012-06-05  7:53                                     ` Pekka Enberg
2012-06-05  7:53                                       ` Pekka Enberg
2012-06-05  8:00                                       ` Minchan Kim
2012-06-05  8:00                                         ` Minchan Kim
2012-06-05  8:01                                         ` Pekka Enberg
2012-06-05  8:01                                           ` Pekka Enberg
2012-06-05  8:16                                           ` leonid.moiseichuk
2012-06-05  8:16                                             ` leonid.moiseichuk
2012-06-05  8:27                                             ` Minchan Kim
2012-06-05  8:27                                               ` Minchan Kim
2012-06-08  3:35                                             ` KOSAKI Motohiro
2012-06-08  3:35                                               ` KOSAKI Motohiro
2012-06-04 20:05                                 ` KOSAKI Motohiro
2012-06-04 20:05                                   ` KOSAKI Motohiro
2012-06-04 22:39                                   ` Anton Vorontsov
2012-06-04 22:39                                     ` Anton Vorontsov
2012-06-08  3:45                                     ` KOSAKI Motohiro
2012-06-08  3:45                                       ` KOSAKI Motohiro
2012-06-08  6:57                                       ` Pekka Enberg
2012-06-08  6:57                                         ` Pekka Enberg
2012-06-05  7:47                                   ` Pekka Enberg
2012-06-05  7:47                                     ` Pekka Enberg
2012-06-05  8:39                                     ` Anton Vorontsov
2012-06-05  8:39                                       ` Anton Vorontsov
2012-06-07  2:41                                       ` Minchan Kim
2012-06-07  2:41                                         ` Minchan Kim
2012-06-08  7:49                                         ` Anton Vorontsov
2012-06-08  7:49                                           ` Anton Vorontsov
2012-06-08  8:43                                           ` Minchan Kim
2012-06-08  8:43                                             ` Minchan Kim
2012-06-08  8:48                                             ` Pekka Enberg
2012-06-08  8:48                                               ` Pekka Enberg
2012-06-08  9:12                                               ` leonid.moiseichuk
2012-06-08  9:12                                                 ` leonid.moiseichuk
2012-06-08  9:45                                                 ` Anton Vorontsov
2012-06-08  9:45                                                   ` Anton Vorontsov
2012-06-08 10:42                                                   ` Minchan Kim
2012-06-08 10:42                                                     ` Minchan Kim
2012-06-08 11:14                                                     ` Anton Vorontsov
2012-06-08 11:14                                                       ` Anton Vorontsov
2012-06-11  4:50                                                       ` Minchan Kim
2012-06-11  4:50                                                         ` Minchan Kim
2012-06-05  7:52                                   ` Pekka Enberg
2012-06-05  7:52                                     ` Pekka Enberg
2012-06-08  3:55                                     ` KOSAKI Motohiro
2012-06-08  3:55                                       ` KOSAKI Motohiro
2012-06-08  6:54                                       ` Pekka Enberg
2012-06-08  6:54                                         ` Pekka Enberg
2012-06-08  6:57                                         ` KOSAKI Motohiro
2012-06-08  6:57                                           ` KOSAKI Motohiro
2012-06-08  6:59                                           ` Pekka Enberg
2012-06-08  6:59                                             ` Pekka Enberg
2012-06-04 19:50                               ` KOSAKI Motohiro
2012-06-04 19:50                                 ` KOSAKI Motohiro
2012-05-08  8:32                       ` [PATCH 3/3] vmevent: Implement special low-memory attribute Minchan Kim
2012-05-08  8:32                         ` Minchan Kim
2012-05-08  9:27                         ` Pekka Enberg
2012-05-08  9:27                           ` Pekka Enberg
2012-06-05 14:40                       ` Christoph Lameter
2012-06-05 14:40                         ` Christoph Lameter
2012-05-08  6:58                   ` Anton Vorontsov
2012-05-08  6:58                     ` Anton Vorontsov
2012-05-08  7:16                     ` KOSAKI Motohiro
2012-05-08  7:16                       ` KOSAKI Motohiro
2012-05-08  8:13                       ` Anton Vorontsov
2012-05-08  8:13                         ` Anton Vorontsov
2012-05-08  8:21                         ` Anton Vorontsov
2012-05-08  8:21                           ` Anton Vorontsov
2012-05-03  8:10 ` [PATCH 0/3] vmevent: Implement 'low memory' attribute Pekka Enberg
2012-05-03  8:10   ` Pekka Enberg
2012-05-03  9:44   ` Anton Vorontsov
2012-05-03  9:44     ` Anton Vorontsov
2012-05-03 10:54 ` Pekka Enberg
2012-05-03 10:54   ` Pekka Enberg

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=20120608080704.GB6362@lizard \
    --to=anton.vorontsov@linaro.org \
    --cc=b.zolnierkie@samsung.com \
    --cc=john.stultz@linaro.org \
    --cc=kernel-team@android.com \
    --cc=kosaki.motohiro@gmail.com \
    --cc=leonid.moiseichuk@nokia.com \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=patches@linaro.org \
    --cc=penberg@kernel.org \
    /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.