IP Library Granted Patent US 6,993,764
Granted Patent B2
US 6,993,764 · App. 09/895,570 · Granted Jan 31, 2006

Buffered coscheduling for parallel programming and enhanced fault tolerance

Assignee: The Regents of the University of California
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 6,993,764
App. No.
09/895,570
Granted
Jan 31, 2006
Kind
B2
Abstract

A computer implemented method schedules processor jobs on a network of parallel machine processors or distributed system processors. Control information communications generated by each process performed by each processor during a defined time interval is accumulated in buffers, where adjacent time intervals are separated by strobe intervals for a global exchange of control information. A global exchange of the control information communications at the end of each defined time interval is performed during an intervening strobe interval so that each processor is informed by all of the other processors of the number of incoming jobs to be received by each processor in a subsequent time interval. The buffered coscheduling method of this invention also enhances the fault tolerance of a network of parallel machine processors or distributed system processors

Claims (13)

1. A computer implemented method for scheduling processor jobs on a network of parallel machine processors or distributed system processors, comprising the steps of:

accumulating in buffers control information communications generated by each process performed by each processor during a defined time interval, where adjacent time intervals are separated by an intervening strobe interval for a global exchange of the control information communications; and

performing the global exchange of the control information communications at the end of the defined time interval during the intervening strobe interval so that each processor is informed by all of the other processors of a number of incoming control information communications to be received by each processor in a subsequent time interval.

2. The computer implemented method according to claim 1 , further including the steps of:

running on each processor an ongoing process in the presence of a non-blocking communication call and storing control information relative to the non-blocking communication in a first descriptor;

yielding the processor to an operating system in the presence of a blocking communication call and storing control information relative to the blocking communication in a second descriptor while suspending the ongoing process and activating a ready process from a ready queue, if any; and

putting the ongoing process on the ready queue when the blocking communication call is completed.

3. The computer implemented method according to claim 1 , further including the steps of:

issuing a download command to each processor at the beginning of the intervening strobe interval;

downloading from each processor, at a command of each processor kernel at the beginning of the intervening strobe interval, accumulated control information communications between all processors so that each processor is informed of the number and identity of incoming control information communications to be received in the subsequent time interval; and

scheduling by each processor kernel of communications accumulated prior to the intervening strobe interval to be delivered in the subsequent time interval.

4. The computer implemented method according to claim 2 , wherein each descriptor includes an identification of a type of communication, sending and receiving processors, and virtual addresses of the buffers.

5. The computer implemented method according to claim 3 , wherein each descriptor includes an identification of a type of communication, sending and receiving processors, and virtual addresses of the buffers.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 18, 2006
From: REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE
To: LOS ALAMOS NATIONAL SECURITY, LLC
Reel/Frame 017906/0079 →
CONFIRMATORY LICENSE Recorded May 8, 2002
From: REGENTS OF THE UNIVERSITY OF CALIFORNIA
To: U.S. DEPARTMENT OF ENERGY
Reel/Frame 012882/0386 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2002
From: PETRINI, FABRIZIO; FENG, WU-CHUN
To: REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE
Reel/Frame 012593/0355 →
Continuity (2)
Provisional Application 6021541600 · Jun 30, 2000
Related Publication 20020083116A1 · Jun 27, 2002