IP Library Granted Patent US 7,546,405
Granted Patent B2
US 7,546,405 · App. 11/535,128 · Granted Jun 9, 2009

Methods and apparatus for dynamic grouping of requestors of resources in a multi-processor system

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 7,546,405
App. No.
11/535,128
Granted
Jun 9, 2009
Kind
B2
Abstract

Methods and apparatus provide for: assigning each of a plurality of requesters to a respective one of a plurality of requester groups; receiving tokens from a plurality of resources, where each token is an exchange medium for permitting one of the requesters having the token to access an associated one of the resources for a period of time; receiving requests for the tokens from one or more of the requesters; allocating the tokens to at least one of the respective requester groups and the requesters thereof based on token allocation criteria; and dynamically re-assigning one or more of the requesters among the requester groups based on feedback information concerning at least some prior token allocations.

Claims (40)

1. A method, comprising:

assigning each of a plurality of requestors to a respective one of a plurality of requestor groups;

receiving tokens from a plurality of resources, where each token is an exchange medium for permitting one of the requestors having the token to access an associated one of the resources for a period of time;

receiving requests for the tokens from one or more of the requestors;

allocating the tokens to at least one of the respective requestor groups and the requestors thereof based on token allocation criteria; and

dynamically re-assigning one or more of the requestors among the requestor groups based on a number of times that each requestor did not receive a token allocation when requested, and a number of times that each requestor group did not receive a token allocation when requested.

2. The method of claim 1 , wherein the step of dynamically re-assigning includes at least one of: (i) re-assigning one of the requestors having a relatively high number of times that it did not receive a token allocation to a different requestor group; and (ii) re-assigning one of the requestors having a relatively low number of times that it did not receive a token allocation to a different requestor group.

3. The method of claim 2 , wherein at least one of:

the relatively high number of times is a highest number of times that the given requestor did not receive a token allocation when requested; and

the relatively low number of times is a lowest number of times that the given requestor did not receive a token allocation when requested.

4. The method of claim 2 , wherein the step of dynamically re-assigning includes re-assigning the requestor having a relatively high number of times to the group containing the requestor having a relatively low number of times.

5. The method of claim 2 , wherein the step of dynamically re-assigning includes re-assigning the requestor having a relatively low number of times to the group containing the requestor having a relatively high number of times.

6. The method of claim 1 , wherein the step of dynamically re-assigning includes at least one of: (i) re-assigning to a different requestor group at least one requestor from one of the requestor groups having a relatively high total number of times that the requestors thereof did not receive a token allocation; and (ii) re-assigning to a different requestor group at least one requestor from one of the requestor groups having a relatively low total number of times that the requestors thereof did not receive a token allocation.

7. The method of claim 6 , wherein at least one of:

the relatively high total number of times is a highest total number of times that the requestors of the given requestor group did not receive a token allocation when requested; and

the relatively low total number of times is a lowest total number of times that the requestors of the given requestor group did not receive a token allocation when requested.

8. The method of claim 6 , wherein the step of dynamically re-assigning includes re-assigning one of the requestors from the requestor group having the relatively high total number of times to the requestor group having the relatively low total number of times.

9. The method of claim 6 , wherein the step of dynamically re-assigning includes re-assigning one of the requestors from the requestor group having the relatively low total number of times to the requestor group having the relatively high total number of times.

10. The method of claim 1 , wherein the token allocation criteria includes granting token requests based on a priority of the requests for tokens.

11. The method of claim 1 , wherein the token allocation criteria includes granting token requests on a round robin basis.

12. The method of claim 1 , wherein the step of dynamically re-assigning includes re-assigning one of the requestors having a highest number of complaints within one of the requestor group having a highest number of total complaints with another one of the requestors having a lowest number of complaints within another one of the requestor groups having a lowest number of total complaints.

13. An apparatus comprising:

a plurality of parallel processors capable of operative communication with a plurality of resources;

a token manager circuit operable to: (i) receive tokens from a plurality of resources, where each token is an exchange medium for permitting one of the processors having the token to access an associated one of the resources for a period of time; (ii) receive requests for the tokens from one or more of the processors, and (iii) allocate the tokens to the respective processors based on token allocation criteria; and

a controller circuit operable to: (i) assign each of the plurality of processors to a respective one of a plurality of requestor groups, (ii) and dynamically re-assign one or more of the processors among the requestor groups based on a number of times that each processor did not receive a token allocation when requested, and a number of times that each requestor group did not receive a token allocation when requested.

14. The apparatus of claim 13 , wherein the controller circuit is operable to at least one of: (i) re-assign one of the processors having a relatively high number of times that it did not receive a token allocation to a different requestor group; and (ii) re-assign one of the processors having a relatively low number of times that it did not receive a token allocation to a different requestor group.

15. The apparatus of claim 14 , wherein at least one of:

the relatively high number of times is a highest number of times that the given processor did not receive a token allocation when requested; and

the relatively low number of times is a lowest number of times that the given processor did not receive a token allocation when requested.

16. The apparatus of claim 14 , wherein the controller circuit is operable to dynamically re-assign the processor having a relatively high number of times to the group containing the processor having a relatively low number of times.

17. The apparatus of claim 14 , wherein the controller circuit is operable to dynamically re-assign the requestor having a relatively low number of times to the group containing the processor having a relatively high number of times.

18. The apparatus of claim 13 , wherein the controller circuit is operable to at least one of: (i) re-assign to a different requestor group at least one processor from one of the requestor groups having a relatively high total number of times that the processors thereof did not receive a token allocation; and (ii) re-assigning to a different requestor group at least one processor from one of the requestor groups having a relatively low total number of times that the processors thereof did not receive a token allocation.

19. The apparatus of claim 18 , wherein at least one of:

the relatively high total number of times is a highest total number of times that the processors of the given requestor group did not receive a token allocation when requested; and

the relatively low total number of times is a lowest total number of times that the processors of the given requestor group did not receive a token allocation when requested.

20. The apparatus of claim 18 , wherein the controller circuit is operable to dynamically re-assign one of the processors from the requestor group having the relatively high total number of times to the requestor group having the relatively low total number of times.

21. The apparatus of claim 18 , wherein the controller circuit is operable to dynamically re-assign one of the processors from the requestor group having the relatively low total number of times to the requestor group having the relatively high total number of times.

22. The apparatus of claim 13 , wherein the token allocation criteria includes granting token requests based on a priority of the requests for tokens.

23. The apparatus of claim 13 , wherein the token allocation criteria includes granting token requests on a round robin basis.

24. The apparatus of claim 13 , wherein the controller circuit operates to re-assign one of the processors having a highest number of complaints within one of the requestor groups having a highest number of total complaints with another one of the processors having a lowest number of complaints within another one of the requestor groups having a lowest number of total complaints.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2011
From: SONY NETWORK ENTERTAINMENT PLATFORM INC.
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 027481/0351 →
CHANGE OF NAME Recorded Dec 26, 2011
From: SONY COMPUTER ENTERTAINMENT INC.
To: SONY NETWORK ENTERTAINMENT PLATFORM INC.
Reel/Frame 027445/0657 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR'S NAME TO READ TERAKAWA, HIROAKI PREVIOUSLY RECORDED ON REEL 018536 FRAME 0831. ASSIGNOR(S) HEREBY CONFIRMS THE THAT ASSIGNOR'S NAME IS TERAKAWA, HIROAKI.. Recorded Nov 21, 2006
From: TERAKAWA, HIROAKI
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 018542/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2006
From: TERAKAWA, HIROSHI
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 018536/0831 →