Re: + mm-align-vmstat_works-timer.patch added to -mm tree

From: KOSAKI Motohiro
Date: Sun Apr 05 2009 - 23:57:53 EST


> (swich to lkml and linux-mm)
>
> Hi Anton,
>
> Do you have any mesurement data?
>
> Honestly, I made the same patch few week ago.
> but I found two problems.
>
> 1)
> work queue tracer (in -tip) reported it isn't proper rounded.

Ah, sorry ignore this sentence.
I used my local patch queue's feature for mesurement, not -tip.


>
> The fact is, schedule_delayed_work(work, round_jiffies_relative()) is
> a bit ill.
>
> it mean
> - round_jiffies_relative() calculate rounded-time - jiffies
> - schedule_delayed_work() calculate argument + jiffies
>
> it assume no jiffies change at above two place. IOW it assume
> non preempt kernel.
>
>
> 2)
> > - schedule_delayed_work_on(cpu, vmstat_work, HZ + cpu);
> > + schedule_delayed_work_on(cpu, vmstat_work,
> > + __round_jiffies_relative(HZ, cpu));
>
> isn't same meaning.
>
> vmstat_work mean to move per-cpu stastics to global stastics.
> Then, (HZ + cpu) mean to avoid to touch the same global variable at the same time.
>
> Oh well, this patch have performance regression risk on _very_ big server.
> (perhaps, only sgi?)
>
> but I agree vmstat_work is one of most work queue heavy user.
> For power consumption view, it isn't proper behavior.
>
> I still think improving another way.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/