Method,system and apparatus for main memory access subsystem usage to different partitions in a socket with sub-socket partitioning
First Claim
Patent Images
1. A method comprising:
- allocating a bandwidth parameter for each of a plurality of partitions in a socket;
decrementing the bandwidth parameter for each partition for each completed request from the corresponding partition; and
rotating arbitration priority among partitions of the plurality of partitions having a non-zero bandwidth parameter, otherwise rotating the arbitration priority among the plurality of partitions if all of the plurality of partitions have a zero bandwidth parameter.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments enable sub-socket partitioning that facilitates access among a plurality of partitions to a shared resource. A round robin arbitration policy is to allow each partition, within a socket, that may utilize a different operating system, access to the shared resource based at least in part on whether an assigned bandwidth parameter for each partition is consumed. Embodiments may further include support for virtual channels.
16 Citations
20 Claims
-
1. A method comprising:
-
allocating a bandwidth parameter for each of a plurality of partitions in a socket; decrementing the bandwidth parameter for each partition for each completed request from the corresponding partition; and rotating arbitration priority among partitions of the plurality of partitions having a non-zero bandwidth parameter, otherwise rotating the arbitration priority among the plurality of partitions if all of the plurality of partitions have a zero bandwidth parameter. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system comprising:
-
a processor; a dynamic random access memory, coupled to the processor, to receive requests from the processor; the processor to support sub-socket partitioning to utilize at least a first and a second operating system within a first partition and a second partition; a shared resource, coupled to the processor, with; a first counter to define a time period; a register, coupled to the first counter, to store a bandwidth parameter for the first partition and the second partition; and a second counter, for each partition, coupled to the first counter, to track a number of consumed cycles for each request from the corresponding partition that is used for access to the shared resource. - View Dependent Claims (8, 9, 10, 11)
-
-
12. An agent to support sub-socket partitioning for a first partition and a second partition comprising:
-
a first counter to define a time period for both the first partition and the second partition; a register, coupled to the first counter, to store a bandwidth parameter for both the first partition and the second partition; a second counter, coupled to the first counter, to track a number of consumed cycles for the first partition that is used for access to the agent; and a third counter, coupled to the first counter, to track a number of consumed cycles for the second partition that is used for access to the agent. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A processor comprising:
-
a plurality of processor cores that support sub-socket partitioning such that each one of the plurality of processor cores can utilize a different operating system; an interface, coupled to the processor cores, to generate and transmit a packet to a plurality of agents coupled to the plurality of processor cores via the interface; a transmit logic, integrated within the interface, with; a queue for each virtual channel supported by the interface to store all requests for each partition associated with the processor; and a counter, coupled to the queue, to be incremented when the virtual channel transmits the packet. - View Dependent Claims (18, 19, 20)
-
Specification