IP Library Granted Patent US 9,525,630
Granted Patent B2
US 9,525,630 · App. 13/565,746 · Granted Dec 20, 2016

Method and apparatus for assigning resources used to manage transport operations between clusters within a processor

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,525,630
App. No.
13/565,746
Granted
Dec 20, 2016
Kind
B2
Abstract

A method, and corresponding apparatus, of assigning processing resources used to manage transport operations between a first memory cluster and one or more other memory clusters, include receiving information indicative of allocation of a subset of processing resources in each of the one or more other memory clusters to the first memory cluster, storing, in the first memory cluster, the information indicative of resources allocated to the first memory cluster, and facilitating management of transport operations between the first memory cluster and the one or more other memory clusters based at least in part on the information indicative of resources allocated to the first memory cluster.

Claims (27)

1. A method comprising:

receiving information indicative of allocation to a first memory cluster of a subset of processing resources in each of one or more other memory clusters;

storing, in the first memory cluster, the information indicative of resources allocated to the first memory cluster; and

facilitating management of transport operations between the first memory cluster and the one or more other memory clusters based at least in part on the information indicative of resources allocated to the first memory cluster, each transport operation comprising transfer of data, related to a corresponding processing operation, between the first memory cluster and one of the other memory clusters, work for the corresponding processing operation at least partially executed on the first memory cluster.

2. A method according to claim 1 , wherein processing resources allocated to the first memory cluster are allocated per types of transport operations between the first memory cluster and the one or more other memory clusters.

3. A method according to claim 1 further comprising modifying allocation of processing resources to the first memory cluster based on received information indicative of modified allocation of processing resources in each of the one or more other memory clusters to the first memory cluster.

4. A method according to claim 3 , wherein modifying allocation of processing resources to the first memory cluster includes reducing or increasing processing resources, in a second memory cluster, allocated to the first memory cluster.

5. A method according to claim 4 , wherein reducing processing resources allocated to the first memory cluster in the second memory cluster includes:

determining, based on the information, whether a number of free processing resources allocated to the first memory cluster in the second memory cluster is less than a number of processing resources to be reduced;

upon determining the number of free processing resources is less than the number of processing resources to be reduced, blocking initiation of new transport operations between the first memory cluster and the second memory cluster until the number of free processing resources allocated to the first memory cluster in the one other memory cluster is equal to or greater than the number of resource to be reduced;

modifying the information to reflect the reduction in processing resources.

6. A method according to claim 4 , wherein increasing processing resources, in one other memory cluster, allocated to the first memory cluster, includes modifying the information indicative of resources allocated to the first memory cluster in the second memory cluster to reflect the increase in processing resources allocated to the first memory cluster, the increase in processing resources corresponding to processing resources in the second memory cluster not allocated to any other memory cluster.

7. A method according to claim 1 , wherein transport operations include any of a processing thread migration operation, a remote access request operation and a remote access response operation.

8. An apparatus comprising:

a communication interface configured to receive information indicative of allocation to a first memory cluster of a subset of processing resources in each of one or more other memory clusters; and

a processing resource manager configured to:

store the information indicative of resources allocated to the first memory cluster; and

facilitate management of transport operations between the first memory cluster and the one or more other memory clusters based at least in part on the information indicative of resources allocated to the first memory cluster, each transport operation comprising transfer of data, related to a corresponding processing operation, between the first memory cluster and one of the other memory clusters, work for the corresponding processing operation at least partially executed on the first memory cluster.

9. An apparatus according to claim 8 , wherein processing resources allocated to the first memory cluster are allocated per types of transport operations between the first memory cluster and the one or more other memory clusters.

10. An apparatus according to claim 8 , wherein the resource state manager is further configured to modify allocation of processing resources to the first memory cluster based on received information indicative of modified allocation of processing resources in each of the one or more other memory clusters to the first memory cluster.

11. An apparatus according to claim 10 , wherein in modifying allocation of processing resources to the first memory cluster, the resource state manager is further configured to reduce or increase processing resources, in a second memory cluster, allocated to the first memory cluster.

12. An apparatus according to claim 11 , wherein in reducing processing resources allocated to the first memory cluster in the second memory cluster, the resource state manager is further configured to:

determine, based on the information, whether a number of free processing resources allocated to the first memory cluster in the second memory cluster is less than a number of processing resources to be reduced;

upon determining the number of free processing resources is less than the number of processing resources to be reduced, cause the communication interface to block initiation of new transport operations between the first memory cluster and the second memory cluster until the number of free processing resources allocated to the first memory cluster in the second memory cluster is equal to or greater than the number of resource to be reduced;

modify the information to reflect the reduction in processing resources.

13. An apparatus according to claim 11 , wherein in increasing processing resources allocated to the first memory cluster in the second memory cluster, the resource state manager is further configured to modify the information indicative of resources allocated to the first memory cluster in the second memory cluster to reflect the increase in processing resources allocated to the first memory cluster, the increase in processing resources corresponding to processing resources in the second memory cluster not allocated to any other memory cluster.

14. An apparatus according to claim 8 , wherein transport operations include any of a processing thread migration operation, a remote access request operation and a remote access response operation.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CERTIFICATE OF CONVERSION AND CERTIFICATE OF FORMATION Recorded Oct 2, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047185/0422 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
SECURITY AGREEMENT Recorded Aug 17, 2016
From: CAVIUM, INC.; CAVIUM NETWORKS LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 039715/0449 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2012
From: ANSARI, NAJEEB I.; BOUCHARD, GREGG A.; GOYAL, RAJAN; PANGBORN, JEFFREY A.
To: CAVIUM, INC.
Reel/Frame 029132/0006 →