mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Use of high-res timers
@ 2012-05-30 18:38 Alan Stern
  2012-05-31  7:36 ` Thomas Gleixner
  0 siblings, 1 reply; 6+ messages in thread
From: Alan Stern @ 2012-05-30 18:38 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar; +Cc: Kernel development list

Thomas, Ingo, or anyone else:

My driver needs to time a bunch of events, with roughly millisecond
precision.  Up to now it has used old-fashioned timer_lists and the
jiffies counter, but I'm switching over to high-resolution timers and
ktime_get.

This leads to a few questions (these issues don't seem to be addressed 
anywhere in Documentation/timers):

	Should I be concerned about efficiency?  I may well end up
	calling ktime_get several times per millisecond; is it fast
	enough for this to be okay?

	I need timed intervals with reliable lower bounds.  Let's say
	I call ktime_get twice, maybe once in an interrupt handler and
	once in an hrtimer callback (not necessarily on the same CPU).
	Some action has to be taken no earlier than 1 ms after the 
	first call.  If the second call returns a value that is at 
	least 1 ms larger than the first call, is that enough of a 
	guarantee?  If not, how much larger does it have to be?

	Which has more overhead: adding and cancelling an hrtimer
	several times, or simply letting it expire and returning
	immediately from the callback?  (I wouldn't be surprised if
	there was no good answer.)

Thanks,

Alan Stern


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-05-31 15:27 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-30 18:38 Use of high-res timers Alan Stern
2012-05-31  7:36 ` Thomas Gleixner
2012-05-31 14:31   ` Alan Stern
2012-05-31 15:04     ` Thomas Gleixner
2012-05-31 15:26       ` Luming Yu
2012-05-31 15:27       ` Alan Stern

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®