lkml.org 
[lkml]   [2008]   [Sep]   [22]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
FromKrishna Kumar <>
DateMon, 22 Sep 2008 10:04:25 +0530
Subject[RFC] [PATCH 0/1] timers: add_timer should never be called if pending
From: Krishna Kumar <krkumar2@in.ibm.com>

(Hopefully this is not something that has been suggested earlier and rejected).

add_timer should never be called on a pending timer - such bugs should be
caught by reports generated by debug kernels. It is the responsibility of the
subsystem users to ensure that timers are not added twice. Using the
add_timer_on interface reduces the code that checks if the timer is pending,
the timer_base change, updating 'expires' two times, etc.

1. Single CPU, Single Timer: Add the same timer serially on one CPU - do this
   many times.
	Laptop (2 way Xeon): Saves 10.8%
		ORG: Time: 35359
		NEW: Time: 31527
	Server (4 way x86-64): Saves 7.9%
		ORG: Time: 4520
		NEW: Time: 4164
2. Single CPU, Multiple Timer: Add different timers serially on one CPU - do
   this many times.
	Laptop (2 way Xeon): Saves 7.7%
		ORG: Time: 133728
		NEW: Time: 144822
	Server (4 way x86-64): Saves 15.7%
		ORG: Time: 69012
		NEW: Time: 58186
3. Many CPU's, Single Timer: Add the same timer in parallel on all CPUs - do
   this many times.
	Laptop (2 way Xeon): Saves 14%
		ORG: Time: 69845
		NEW: Time: 60067
	Server (4 way x86-64): Saves 21.8%
		ORG: Time: 18047
		NEW: Time: 14116
4. Many CPU's, Multiple Timer: Add different timers in parallel on all CPUs -
   do this many times.
	Laptop (2 way Xeon): Saves 47.1%
		ORG: Time: 292173
		NEW: Time: 154485
	Server (4 way x86-64): Saves 8.23
		ORG: Time: 319129
		NEW: Time: 292842


\
 
 \ /
  Last update: 2008-09-22 06:37    [from the cache]
©2003-2008