Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

LOGARITHMIC TIMER MANAGEMENT ALGORITHM

IP.com Disclosure Number: IPCOM000008512D
Original Publication Date: 1997-Dec-01
Included in the Prior Art Database: 2002-Jun-19
Document File: 2 page(s) / 79K

Publishing Venue

Motorola

Related People

William F. Bernd: AUTHOR [+2]

Abstract

When managing hundreds or thousands of timers in a system, decrementing each timer every "tick" is overly cumbersome. It consumes a relatively large amount of processor resources for only a utility. A timer utility shoud be designed as efficient as possible so it consumes as little processor resources as possible.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 57% of the total text.

Page 1 of 2

@ MOTOROLA

Technical Developments

LOGARITHMIC TIMER MANAGEMENT ALGORITHM

by William F. Bernd and Gerald A Capehart

  When managing hundreds or thousands of timers in a system, decrementing each timer every "tick" is overly cumbersome. It consumes a relatively large amount of processor resources for only a utility. A timer utility shoud be designed as efficient as possible so it consumes as little processor resources as possible.

  The logarithmic timer management algorithm use multiple collections to store the currently run- ning timers in a logarithmic manner. Collections are data entities which store data elements, The ones collection stores timers less than ten ticks, the tens collection stores timers less than one hundred ticks and greater than or equal to ten ticks, etc. The timers in each collection are decremented by their corresponding number of ticks when appropriate. Timers in the ones collection are decremented by one tick every tick, timers in the tens collection are decremented by ten ticks every ten ticks, etc. Timers in the tens, hundreds, thousands, etc. collec- tions are evaluated each time they're decremented by their corresponding number of ticks to determine whether they should be swapped to another collec-

tion. For example, a timer which is equal to 11 ticks residing in the tens collection is swapped to the ones collection after being decremented by 10 ticks. Figure 1 contains a flow chart for the loga- rithmic timer management algorithm.

  By usi...