Lines Matching full:interval
65 * suffix array, log interval and exponential moving average
84 * 2. Log interval
86 * We saw the irq timings allow to compute the interval of the
88 * longer is the interval, the higher is the error for the next event
89 * and we can consider storing those interval values into an array
90 * where each slot in the array correspond to an interval at the power
95 * [2^index - 1, 2 ^ index] interval values allowing to store a large
116 * interval, we can have numbers with a big difference between
127 * For each interval:
128 * Compute the index = ilog2(interval)
129 * Compute a new_ema(buffer[index], interval)
150 * Example 1 : MMC write/read interrupt interval:
206 * interval is ema[8] = 1366
312 * interrupt interval (292 years). in irq_timings_ema_new()
435 static __always_inline int irq_timings_interval_index(u64 interval) in irq_timings_interval_index() argument
438 * The PREDICTION_FACTOR increase the interval size for the in irq_timings_interval_index()
441 u64 interval_us = (interval >> 10) / PREDICTION_FACTOR; in irq_timings_interval_index()
447 u64 interval) in __irq_timings_store() argument
454 index = irq_timings_interval_index(interval); in __irq_timings_store()
467 irqs->ema_time[index] = irq_timings_ema_new(interval, in __irq_timings_store()
476 u64 interval; in irq_timings_store() local
480 * the timing interval between two interrupts. in irq_timings_store()
485 * The interval type is u64 in order to deal with the same in irq_timings_store()
489 interval = ts - old_ts; in irq_timings_store()
500 * want as we need another timestamp to compute an interval. in irq_timings_store()
502 if (interval >= NSEC_PER_SEC) { in irq_timings_store()
507 __irq_timings_store(irq, irqs, interval); in irq_timings_store()
798 pr_debug("%d: interval=%llu ema_index=%d\n", in irq_timings_test_irqs()