DELEGATED VIRTUALIZATION ACROSS PHYSICAL PARTITIONS OF A MULTI-CORE PROCESSOR (MCP)
First Claim
1. A multi-core processor, comprising:
- a first physical partition comprising a first main processing element;
a second physical partition comprising a second main processing element and a group of sub-processing elements, the group of sub processing elements being designated as a pseudo main processing element by the first main processing element in the first physical partition;
a logical partition of sub-processing elements; and
a pseudo virtualized control thread associating the pseudo main processing element of the second physical partition with the logical partition of sub-processing elements.
2 Assignments
0 Petitions
Accused Products
Abstract
This disclosure describes an apparatus, computer architecture, method, operating system, compiler, and application program products for MPEs as well as virtualization across physical boundaries that define physical partitions in a symmetric MCP. Among other things, the disclosure is applied to a generic microprocessor architecture 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). The arrangement also enables MPEs to delegate functionality to one or more groups of SPEs such that those group(s) of SPEs may act as pseudo MPEs. Such delegation may occur across the physical boundaries. Regardless, the pseudo MPEs may utilize pseudo virtualized control threads to control the behavior of other groups of SPEs also across physical boundaries.
38 Citations
21 Claims
-
1. A multi-core processor, comprising:
-
a first physical partition comprising a first main processing element; a second physical partition comprising a second main processing element and a group of sub-processing elements, the group of sub processing elements being designated as a pseudo main processing element by the first main processing element in the first physical partition; a logical partition of sub-processing elements; and a pseudo virtualized control thread associating the pseudo main processing element of the second physical partition with the logical partition of sub-processing elements. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A processing method, comprising:
-
delegating a set of functions of a main processing element in a first physical partition of a multi-core processor to a group of sub-processing elements in a second physical partition of the multi-core processor to cause the group of sub-processing elements to act as a pseudo main processing element; associating the pseudo main processing element with a logical partition of sub-processing elements using a set of pseudo virtualized control threads; and controlling the logical partition of sub-processing elements using the set of pseudo virtualized control threads.
-
- 10. The processing method of claim 10, the logical partition of sub-processing elements being in the second physical partition.
-
17. A multi-core processor, comprising:
-
a first physical partition comprising a first main processing element; a second physical partition comprising a second main processing element and a group of sub-processing elements, the group of sub processing elements being designated as a pseudo main processing element by the first main processing element in the first physical partition; a logical partition of sub-processing elements;
in at least one of the first physical partition and a third physical partition in the multi-core processor; anda pseudo virtualized control thread associating the pseudo main processing element of the second physical partition with the logical partition of sub-processing elements.
-
-
18. A method for deploying a processing system:
providing a multi-core processor being configured to; delegate a set of functions of a main processing element in a first physical partition of the multi-core processor to a group of sub-processing elements in a second physical partition of the multi-core processor to cause the group of sub-processing elements to act as a pseudo main processing element; associate the pseudo main processing element with a logical partition of sub-processing elements using a set of pseudo virtualized control threads; and control the logical partition of sub-processing elements using the set of pseudo virtualized control threads. - View Dependent Claims (19, 20, 21)
Specification