* [RFC] [PATCH 0/1] hrtimers: Remove unnecessary clock events device programming
@ 2009-08-27 21:48 Ashwin Chaugule
0 siblings, 0 replies; only message in thread
From: Ashwin Chaugule @ 2009-08-27 21:48 UTC (permalink / raw)
To: linux-kernel, mingo, tglx
hrtimer_force_reprogram() was being called quite often unnecessarily.
The following patch caches the hrtimer that causes the
cpu_base->expires_next value to change. This way, we force the reprogram
only when remove_hrtimer() finds that its going to remove an hrtimer
which was about expire next. IOW, we forgo reprogramming the clock
events device, if the current timer to be removed isn't at the root of
the expires tree.
Also removed the hrtimer_is_queued check from remove_hrtimer and made
appropriate changes to all callers. That check seemed redundant.
Results:
Shows ~60% reduction in the following calls to program clock events device.
- tick_nohz_restart_sched_tick (tick_sched_timer)
- hrtimer_start (tick_sched_timer)
I haven't traced all the callers yet, this was from a hack to
timer_stats. If you guys have a better way to test this, I'll give that
a go.
Tested on v2.6.29 on an ARM based embedded device.
Cheers,
Ashwin
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-08-27 21:48 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-27 21:48 [RFC] [PATCH 0/1] hrtimers: Remove unnecessary clock events device programming Ashwin Chaugule
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).