Virtualization across physical partitions of a multi-core processor (MCP)
First Claim
1. A multi-core processor, comprising:
- a set of main processing elements, each configured to request a set of sub-processing elements from a logical group of sub-processing elements, the set of main processing elements comprising;
a first main processing element located in a first physical partition,a second main processing element located in a second physical partition, anda third main processing element located in a third physical partition,wherein the logical group of sub-processing elements comprises;
a first sub-processing element located in the first physical partition,a second sub-processing element located in the second physical partition, anda third sub-processing element located in the third physical partition; and
a first virtualized control thread generated by the first main processing element, the first virtualized control thread associating the second main processing element of the second physical partition with the logical group of sub-processing elements;
wherein each of the first main processing element, the second main processing element, and the third main processing element, is configured to log events taking place at each of the first sub-processing element, the second sub-processing element, and the third sub-processing element.
2 Assignments
0 Petitions
Accused Products
Abstract
A generic microprocessor architecture is provided with a set (e.g., one or more) of controlling/main processing elements (e.g., MPEs) and a set of groups of sub-processing elements (e.g., SPEs). Under this arrangement, MPEs and SPEs are organized in a way that a smaller number MPEs control the behavior of a group of SPEs using program code embodied as a set of virtualized control threads. The apparatus includes a MCP coupled to a power supply coupled with cores to provide a supply voltage to each core (or core group) and controlling-digital elements and multiple instances of sub-processing elements. In accordance with these features, virtualized control threads can traverse the physical boundaries of the MCP to control SPE(s) (e.g., logical partitions having one or more SPEs) in a different physical partition (e.g., different from the physical partition from which the virtualized control threads originated.
-
Citations
20 Claims
-
1. A multi-core processor, comprising:
-
a set of main processing elements, each configured to request a set of sub-processing elements from a logical group of sub-processing elements, the set of main processing elements comprising; a first main processing element located in a first physical partition, a second main processing element located in a second physical partition, and a third main processing element located in a third physical partition, wherein the logical group of sub-processing elements comprises; a first sub-processing element located in the first physical partition, a second sub-processing element located in the second physical partition, and a third sub-processing element located in the third physical partition; and a first virtualized control thread generated by the first main processing element, the first virtualized control thread associating the second main processing element of the second physical partition with the logical group of sub-processing elements; wherein each of the first main processing element, the second main processing element, and the third main processing element, is configured to log events taking place at each of the first sub-processing element, the second sub-processing element, and the third sub-processing element. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A multi-core processor, comprising:
-
a first physical partition comprising a first main processing element, and a first group of sub-processing elements; a second physical partition comprising a second main processing element, and a second group of sub-processing elements; a third physical partition comprising a third main processing element, and a third group of sub-processing elements; a logical partition comprising the first group of sub-processing elements, the second group of sub-processing elements, and the third group of sub-processing elements; and a virtualized control thread generated by the first main processing element, the virtualized control thread being configured to associate the second main processing element of the second physical partition with the logical partition, and the virtualized control thread being configured to control sub-processing elements of the logical partition; wherein each of the first main processing element, the second main processing element, and the third main processing element, is configured to log events taking place at each of the first sub-processing element, the second sub-processing element, and the third sub-processing element. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A processing method, comprising:
-
receiving a request, issued from a main processing element, for a number of sub-processing elements, the main processing element located within a first physical partition; determining that the requested number of sub-processing elements exceeds a number of free sub-processing elements within the first physical partition; locating at least two available sub-processing elements, at least one of the at least two available sub-processing elements located in a second physical partition, and at least one other of the at least two available sub-processing elements located in a third physical partition; joining free sub-processing elements of the first physical partition with the at least two available sub-processing elements into a logical partition; associating the main processing element with the logical partition, a virtualized control thread being generated by the main processing element; controlling a group of sub-processing elements of the logical partition using the virtualized control thread; and logging, by the main processing element, events taking place at each of the sub-processing elements. - View Dependent Claims (18, 19, 20)
-
Specification