RE: [PATCH 2/5] vmevent: Convert from deferred timer to deferredwork

From: leonid.moiseichuk
Date: Fri Jun 08 2012 - 07:03:50 EST


> -----Original Message-----
> From: ext Anton Vorontsov [mailto:cbouatmailru@xxxxxxxxx]
> Sent: 08 June, 2012 13:35
...
> > Context switches, parsing, activity in userspace even memory situation is
> not changed.
>
> Sure, there is some additional overhead. I'm just saying that it is not drastic. It
> would be like 100 sprintfs + 100 sscanfs + 2 context switches? Well, it is
> unfortunate... but come on, today's phones are running X11 and Java. :-)

Vmstat generation is not so trivial. Meminfo has even higher overhead. I just checked generation time using idling device and open/read test:
- vmstat min 30, avg 94 max 2746 uSeconds
- meminfo min 30, average 65 max 15961 uSeconds

In comparison /proc/version for the same conditions: min 30, average 41, max 1505 uSeconds

> > In kernel space you can use sliding timer (increasing interval) + shinker.
>
> Well, w/ Minchan's idea, we can get shrinker notifications into the userland,
> so the sliding timer thing would be still possible.

Only as a post-schrinker actions. In case of memory stressing or close-to-stressing conditions shrinkers called very often, I saw up to 50 times per second.

¢éì®&Þ~º&¶¬–+-±éÝ¥Šw®žË±Êâmébžìdz¹Þ)í…æèw*jg¬±¨¶‰šŽŠÝj/êäz¹ÞŠà2ŠÞ¨è­Ú&¢)ß«a¶Úþø®G«éh®æj:+v‰¨Šwè†Ù>Wš±êÞiÛaxPjØm¶Ÿÿà -»+ƒùdš_