IP Library Granted Patent US 8,661,435
Granted Patent B2
US 8,661,435 · App. 12/886,969 · Granted Feb 25, 2014

System and method for affinity dispatching for task management in an emulated multiprocessor environment

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 8,661,435
App. No.
12/886,969
Granted
Feb 25, 2014
Kind
B2
Abstract

The disclosure relates generally to managing assignment of tasks among instruction processors (IPs) within a computer system having multiple IPs, and more particularly to binding emulated IPs with a host system's IPs (e.g., processor cores) for facilitating control over affinity-based assignment of tasks among the host system's IPs by a task manager (e.g., OS) that is executing on the emulated IPs, rather than running directly on the host system's IPs. Certain embodiments provide techniques for binding emulated IPs with actual IPs of a computing system that is hosting the emulated IPs, thereby enabling better control of management of the system by a task manager executing on the emulated IPs. For instance, in certain embodiments, a dispatcher (e.g., of an OS running on emulated IPs) performs affinity-based management of task assignment for tasks performed for an application program among IPs of a host system that is hosting the emulated IPs.

Claims (37)

1. A method for task management in a multiprocessor computer system, the method comprising:

running a task manager on emulated instruction processors (IPs) that are hosted on a host system having actual IPs;

binding one or more of the host system's actual IPs to one or more of the emulated IPs; and

performing affinity-based task management by said task manager for managing tasks assigned among the host system's actual IPs;

wherein the task manager executes under the control of a legacy OS having a different instruction set that has been assigned to a particular one or more of the emulated IPs;

performing said binding for instances fix at least switching queue levels 1, 2, and 3, where switching queue level means there is a switching queue per IP bus, level 2 means there is a switching queue per subpod, and level 3 means there is a switching queue per pod.

2. The method of claim 1 wherein the tasks are processes performed for execution of one or more application programs running on the emulated IPs.

3. The method of claim 1 wherein said performing affinity-based task management by said task manager comprises:

directly managing, by said task manager, assignment of tasks among the emulated IPs, wherein said binding facilitates indirect management of the assignment of tasks among the host system's actual IPs.

4. The method of claim 1 wherein said task manager is implemented in an operating system (OS) running on said emulated IPs.

5. The method of claim 1 wherein said task manager comprises an affinity dispatcher.

6. The method of claim 5 wherein said task manager further comprises switching queues.

7. The method of claim 1 wherein said emulated IPs have a different instruction set than said host system's actual IPs.

8. The method of claim 1 wherein said binding comprises:

receiving an affinity ID of each of said host system's actual IPs; and

associating, by said task manager, said received affinity IDs for one or more of said host system's actual IPs with one or more emulated IDs.

9. The method of claim 1 further comprising:

performing said binding responsive to a switching queue level being configured to one of levels 1, 2, and 3, where switching queue level 1 means there is a switching queue per IP bus, level 2 means there is a switching queue per subpod, and level 3 means there is a switching queue per pod.

10. A computer program product having a non-transient computer-readable medium having encoded data that when executed by a programmable computing engine implements a method for managing task assignment among a host system's instruction processors (IPs) of a host system by a task manager running on emulated IPs that are hosted on the host system, the computer program product comprising:

running a task manager on emulated instruction processors (IPs) that are hosted on a host system having actual IPs;

binding one or more of the host system's actual IPs to one or more of the emulated IPs; and

performing affinity-based task management by said task manager for managing tasks assigned among the host system's actual IPs;

wherein the task manager executes under the control of legacy OS having a different instruction set that has been assigned to a particular one or more of the emulated IPs

performing said binding for instances fix at least switching queue levels 1, 2, and 3, where switching queue level means there is a switching queue per IP bus, level 2 means there is a switching queue per subpod, and level 3 means there is a switching queue per pod.

11. The computer program product of claim 10 wherein the tasks are processes performed for execution of one or more application programs running on the emulated IPs.

12. The computer program product of claim 10 wherein said code for performing affinity-based task management comprises:

code for directly managing, by said task manager, assignment of tasks among the emulated IPs, wherein said binding facilitates indirect management of the assignment of tasks among the host system's actual IPs.

13. The computer program product of claim 10 wherein said task manager is implemented an operating system (OS) running on said emulated IPs.

14. The computer program product of claim 10 wherein said code for binding comprises:

code for receiving an affinity of each of said host system's actual IPs; and

code for associating, by said task manager, said received affinity IDs for one or more of said host system's actual IPs with one or more emulated IPs.

15. A system for task management in a multiprocessor computer system, the system comprising:

means for binding one or more of a host system's actual instruction processor's (IPs) to one or more emulated IPs that are hosted on the host system; and

means, running on the emulated IPs for performing affinity-based task management for managing tasks assigned among the host system's actual IPs, wherein the management means directly managing assignment of tasks among the emulated IPs, and wherein the binding means facilitates indirect management of the assignment of tasks among the host system's actual IPs;

wherein the task manager executes under the control of legacy OS having a different instruction set that has been assigned to a particular one or more of the emulated IPs;

performing said binding for instances fix at least switching queue levels 1, 2, and 3, where switching queue level means there is a switching queue per IP bus, level 2 means there is a switching queue per subpod, and level 3 means there is a switching queue per pod.

16. The system of claim 15 wherein the tasks are processes performed for execution of one or more application programs running on the emulated IPs; and wherein said management means is implemented in an operating system (OS) running on said emulated IPs.

Assignments (9)
AMENDED AND RESTATED PATENT SECURITY AGREEMENT Recorded Jun 27, 2025
From: UNISYS CORPORATION; UNISYS HOLDING CORPORATION; UNISYS NPL, INC.; UNISYS AP INVESTMENT COMPANY I
To: COMPUTERSHARE TRUST COMPANY, N.A., AS COLLATERAL TRUSTEE
Reel/Frame 071759/0527 →
RELEASE OF SECURITY INTEREST Recorded Oct 28, 2020
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: UNISYS CORPORATION
Reel/Frame 054231/0496 →
RELEASE OF SECURITY INTEREST Recorded Nov 9, 2017
From: WELLS FARGO BANK, NATIONAL ASSOCIATION (SUCCESSOR TO GENERAL ELECTRIC CAPITAL CORPORATION)
To: UNISYS CORPORATION
Reel/Frame 044416/0358 →
SECURITY INTEREST Recorded Oct 6, 2017
From: UNISYS CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 044144/0081 →
PATENT SECURITY AGREEMENT Recorded Apr 27, 2017
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 042354/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 26, 2013
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL TRUSTEE
To: UNISYS CORPORATION
Reel/Frame 030082/0545 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2013
From: DEUTSCHE BANK TRUST COMPANY
To: UNISYS CORPORATION
Reel/Frame 030004/0619 →
SECURITY AGREEMENT Recorded Jun 27, 2011
From: UNISYS CORPORATION
To: GENERAL ELECTRIC CAPITAL CORPORATION, AS AGENT
Reel/Frame 026509/0001 →
SECURITY AGREEMENT Recorded Nov 2, 2010
From: UNISYS CORPORATION
To: DEUTSCHE BANK NATIONAL TRUST COMPANY
Reel/Frame 025227/0391 →