Systems, methods, and apparatuses for resource monitoring
AssigneeIntel Corporation
InventorsMatthew Fleming, Edwin Verplanke, Andrew Herdrich, Ravishankar Iyer
Life of this patent
Estimating the term…
Loading patent…
AssigneeIntel Corporation
InventorsMatthew Fleming, Edwin Verplanke, Andrew Herdrich, Ravishankar Iyer
Estimating the term…
Systems, methods, and apparatuses for resource monitoring identification reuse are described. In an embodiment, a system comprising a hardware processor core to execute instructions storage for a resource monitoring identification (RMID) recycling instructions to be executed by a hardware processor core, a logical processor to execute on the hardware processor core, the logical processor including associated storage for a RMID and state, are described.
A system comprising:
A method performed by a system having a hardware processor core and memory, wherein the hardware processor core includes a plurality of logical processors each have associated storage, the method comprising:
Dependencies are inferred from the claim text.
From the US filing history. Foreign family members aren’t listed.
Using stored programs, i.e. using an internal store of processing equipment to receive or retain programs: multiprogramming arrangements
Hypervisors; Virtual machine monitors: hypervisor-specific management and integration aspects
Hypervisor-specific management and integration aspects: distribution of virtual machine instances; Migration and load balancing
Hypervisor-specific management and integration aspects: monitoring or debugging support
About 8 years 5 months of term left · ends 4 Apr 2035 (estimated)
The various embodiments described herein relate to resource monitoring in a computer processor or platform.
Thread contention for shared platform resources such as cache space and memory bandwidth is an increasingly common problem in datacenter and communications scenarios. For example, in a datacenter heavy consolidation may lead to situations where applications are running from tens to hundreds of users on the same platform without any visibility into what is co-running. As such, a given user's application may slow down significantly due to contention for shared cache, memory, and/or input/output (I/O) resources. For example, an application virtual machine (VM) has no way to tell what else is running on the platform, has no control over platform resources, and has no guarantee that the application VM will receive a fair share of platform resources such as cache space and memory bandwidth. Other VMs may thrash available cache, consume excessive memory bandwidth, etc. and the application VM would be slowed significantly without any control or fairness mechanisms.
The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements, and in which:
FIG. 1 illustrates an embodiment of a system to reuse resources.
FIG. 2 illustrates an embodiment of a flexible mapping scheme to assign RMIDs or CLOS.
In the following description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. References in the specification to “one embodiment,” “an embodiment,” “an exemplary embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
FIG. 1 illustrates an embodiment of a system to reuse resources. In this illustration, there are several components including both software (an operating system (OS) or a virtual machine monitor (VMM) also called a hypervisor) stored in memory (such as random access memory RAM or static memory such as a disk) and hardware components.
In an embodiment, a mechanism for an OS or hypervisor to indicate a software-defined identification (ID) for one or more software threads (applications, virtual machines, etc.) scheduled to run on a logical processor is called a Resource Monitoring ID (RMID). Each logical processor (thread) in the system can be assigned an RMID independently, or multiple logical processors can be assigned to the same RMID value (e.g., to track an application with multiple threads). For each logical processor, only one RMID value is active at a time. In some embodiments, the number of RMIDs per processor is given by information stored in the processor itself.