Andreas Mohr wrote: > Hi, > > On Thu, Nov 01, 2007 at 09:37:11PM -0700, Arjan van de Ven wrote: >> Alexey Kuznetsov wrote: >>> And even more if hash table is large enough. >>> >>> Obviously, it should scan more than one hash bucket per tick to keep >>> timer frequency reasonable. The question is what is reasonable? >>> >> there are two possible answers for this ;) >> >> 1) For really low power syatems, "once every 30 seconds" is nice :0 >> But to be realistic, if you use round_jiffies(), it won't be all >> that bad > > No, since we're talking about a huge hash table with a slightly > challenging timeout (9000ms/2 in my case) which applies to *each* entry, > this timer has to be invoked very regularly to be able to round-trip > through all entries in time.
this goes to Alexey's comment of doing more than one per timer event... > >> or answer 2 >> >> 2) use deferrable timers. These are like normal timers, but don't >> happen when the system is totally idle, but just instead fire when you >> get out of idle (say, when a network interrupt happens). This could be >> the best of both worlds in this case; if there's no network traffic or >> any other activity, the timer doesn't happen, but if there's activity >> it'll happen as usual > > Such a solution is not optimal, since even with light load you still > have a huge amount of wakeups. no you don't... deferrable timers do not generate wakeups... they hitchhike on existing wakeups instead. _______________________________________________ Power mailing list [email protected] http://www.bughost.org/mailman/listinfo/power
