IP Library Granted Patent US 9,542,243
Granted Patent B2
US 9,542,243 · App. 14/211,167 · Granted Jan 10, 2017

Coalescing stages in a multiple stage completion sequence

Inventors: Thomas A. Gregg (Highland, NY); Kulwant M. Pandey (Lagrangeville, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F9/542G06F9/4812G06F11/3024G06F11/3055G06F13/24G06F13/32
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,542,243
App. No.
14/211,167
Granted
Jan 10, 2017
Kind
B2
Abstract

Embodiments are directed to systems and methodologies for allowing a computer program code to efficiently respond to and process events. For events having a multiple stage completion sequence, and wherein several of the events occur within relatively close time proximity to each other, portions of the multiple stages may be coalesced without adding latency, thereby maintaining responsiveness of the computer program. The disclosed coalescing systems and methodologies include state machines and counters that in effect “replace” certain stages of the event sequence when the frequency of events increases.

Claims (38)

1. A computer system for notifying a computer program of events, the system comprising:

a memory;

a tracking circuit; and

a processor communicatively coupled to said tracking circuit and said memory;

wherein each event generates an event alert capable of notifying the computer program of each event;

the computer system configured to perform a method comprising:

determining, by said tracking circuit, that multiple events occurred in succession and within a predetermined time of each other;

in response to said multiple events occurring, suppressing all but one of the event alerts associated with said multiple events; and

in response to a selected one of said multiple events occurring, temporarily suspending receipt of subsequent events until completion of said one of the event alerts.

2. The computer system of claim 1 wherein said one of the event alerts notifies the computer program:

that said multiple events occurred; and

about locations of said multiple events.

3. The computer system of claim 2 wherein said one of the event alerts includes multiple stages comprising:

setting an interrupt request; and

setting at least one pointer.

4. The computer system of claim 3 wherein said at least one pointer comprises at least one summary bit that points to a bit vector.

5. The computer system of claim 4 wherein said bit vector points to locations in said memory that hold event descriptions that represent said multiple events.

6. The computer system of claim 5 wherein:

said locations in said memory comprises a queue; and

said tracking circuit comprises at least one counter.

7. A computer implemented method for notifying a computer program of events, wherein each event generates an event alert capable of notifying the computer program of each event, the method comprising:

determining, by a tracking circuit, that multiple events occurred in succession and within a predetermined time of each other;

in response to said multiple events occurring, suppressing all but one of the event alerts associated with said multiple events;

wherein said one of the event alert notifies the program that said multiple events occurred and about locations of said multiple event;

wherein said one of the event alerts includes multiple stages comprising settings an interrupt request and setting at least one pointer;

wherein said at least one pointer comprises at least one summary bit that points to a vector.

8. The computer implemented method of claim 7 wherein said bit vector points to a locations in a memory that hold event descriptions that represent said multiple events.

9. The computer implemented method of claim 8 wherein said locations in said memory comprise a queue.

10. The computer implemented method of claim 7 wherein said tracking circuit comprises at least one counter.

11. A computer program product for notifying a computer program of events, wherein each event generates an event alert capable of notifying the computer program of each event, the computer program product comprising:

a computer readable storage medium having program instructions embodied therewith, the program instructions readable by a processing circuit to cause the processing circuit to perform a method comprising:

determining, by a tracking circuit, that said multiple events occurred in succession and within a predetermined time of each other;

in response to said multiple events occurring, suppressing all but one of the event alerts associated with said multiple events;

wherein said one of the event alert notifies the program that said multiple events occurred and about locations of said multiple event;

wherein said one of the event alerts includes multiple stages comprising settings an interrupt request and setting at least one pointer;

wherein said at least one pointer comprises setting at least one summary bit that points to a vector.

12. The computer program product of claim 11 wherein said bit vector points to locations in a memory that hold event descriptions that represent said at least one of said multiple events.

13. The computer program product of claim 11 wherein said tracking circuit comprises at least one counter.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE DOC DATE OF ASSIGNOR, PANDEY, KULWANT M. PREVIOUSLY RECORDED ON REEL 032439 FRAME 0876. ASSIGNOR(S) HEREBY CONFIRMS THE DOC DATE OF ASSIGNOR, PANDEY, KULWANT M. SHOULD BE 03/15/2014.. Recorded Mar 25, 2014
From: GREGG, THOMAS A.; PANDEY, KULWANT M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 032519/0478 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2014
From: GREGG, THOMAS A.; PANDEY, KULWANT M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 032439/0876 →
Continuity (1)
Related Publication 20150261584A1 · Sep 17, 2015