IP Library Granted Patent US 9,367,352
Granted Patent B2
US 9,367,352 · App. 14/691,726 · Granted Jun 14, 2016

System and method for intelligent timer services

Inventors: Andre Dupont (St-Laurent, CA); Thierry DeCorte (Laval, CA)
Assignee: Accedian Networks Inc.
G06F9/4881G06F1/14G06F9/4825G06F9/4831G06F9/4837
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,367,352
App. No.
14/691,726
Granted
Jun 14, 2016
Kind
B2
Abstract

A method is provided for efficiently scheduling timer events within an operating system by allocating a plurality of timers, each of which has an expiry time, to a set of available timer slots. The method defines a timer spread value that denotes the allowed variance of the expiry times of each of the timers, calculates a set of available timer slots for each of the timers based on the timer spread value, and adjusts the expiry times of the timers so as to insert and evenly spread the timers across the set of available timer slots. In one implementation, the set of available timer slots is located in a timer wheel existing within the operating system, and the timer wheel uses a plurality of timer vectors arranged into successively increasing levels, beginning with level zero.

Claims (24)

1. A system for efficiently scheduling timer events within an operating system by allocating a plurality of timers to a set of available timer slots, each of said timers having an expiry time, the system comprising:

one or more processors; and

one or more modules stored on a memory and executable by the one or more processors, the one or more modules configured to:

define a timer spread value which is a measure of the allowed variance of the expiry times of each of said timers;

calculate a set of available timer slots for each of said timers based on said timer spread value; and

adjust said expiry times of said timers so as to insert and spread said timers across said set of available timer slots, by analyzing the distribution of timer expirations in the set of available slots and selecting the slot with the least timer expirations, and adjusting the expiry time so that the timer expires during the selected slot;

wherein said system performs said spreading to reduce at least one of peaks of processing activity and overhead due to processing activity.

2. A system for efficiently scheduling timer events within a timer wheel by allocating a plurality of timers to a set of available timer slots, each of said timers having an expiry time, the system comprising:

one or more processors; and

one or more modules stored on a memory and executable by the one or more processors, the one or more modules configured to:

define a timer spread value which is a measure of the allowed variance of the expiry times of each of said timers;

calculate a set of available timer slots for each of said timers based on said timer spread value; and

adjust said expiry times of said timers so as to insert and spread said timers across said set of available timer slots, by analyzing the distribution of timer expirations in the set of available slots and selecting the slot with the least timer expirations, and adjusting the expiry time so that the timer expires during the selected slot;

wherein said system performs said spreading to reduce at least one of peaks of processing activity and overhead due to processing activity.

3. A method for efficiently scheduling timer events within an operating system by allocating a plurality of timers to a set of available timer slots, each of said timers having an expiry time, the method comprising:

defining a timer spread value which is a measure of the allowed variance of the expiry times of each of said timers;

calculating a set of available timer slots for each of said timers based on said timer spread value; and

adjusting said expiry times of said timers so as to insert and spread said timers across said set of available timer slots, by analyzing the distribution of timer expirations in the set of available slots and selecting the slot with the least timer expirations, and adjusting the expiry time so that the timer expires during the selected slot;

wherein said adjusting said expiry times are for to reducing at least one of peaks of processing activity and overhead due to processing activity.

4. A method for efficiently scheduling timer events within a timer wheel by allocating a plurality of timers to a set of available timer slots, each of said timers having an expiry time, the method comprising:

defining a timer spread value which is a measure of the allowed variance of the expiry times of each of said timers;

calculating a set of available timer slots for each of said timers based on said timer spread value; and

adjusting said expiry times of said timers so as to insert and spread said timers across said set of available timer slots, by analyzing the distribution of timer expirations in the set of available slots and selecting the slot with the least timer expirations, and adjusting the expiry time so that the timer expires during the selected slot;

wherein said adjusting said expiry times are for to reducing at least one of peaks of processing activity and overhead due to processing activity.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Oct 10, 2023
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY
To: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
Reel/Frame 065192/0909 →
RELEASE OF SECURITY INTEREST FILED AUGUST 13, 2021 AT REEL/FRAME 057184/0296 Recorded Oct 6, 2023
From: BGC LENDER REP LLC
To: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
Reel/Frame 065178/0452 →
SECURITY INTEREST Recorded Aug 16, 2021
From: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
To: SILICON VALLEY BANK
Reel/Frame 057192/0787 →
SECURITY AGREEMENT Recorded Aug 13, 2021
From: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
To: BGC LENDER REP LLC
Reel/Frame 057184/0296 →
SECURITY INTEREST Recorded Jun 22, 2018
From: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
To: SILICON VALLEY BANK
Reel/Frame 046413/0496 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2015
From: DUPONT, ANDRE; DECORTE, THIERRY
To: ACCEDIAN NETWORKS INC.
Reel/Frame 035456/0117 →
Continuity (2)
Continuation 13606089 · Sep 7, 2012
Related Publication 20150242239A1 · Aug 27, 2015