Managing a set of wear-leveling data using a set of thread events
First Claim
1. A system for managing virtual machine (VM) placement related to a shared pool of configurable computing resources comprising a plurality of hosts, wherein each host comprises a plurality of hardware components including a plurality of different hardware component types, and wherein the different component types include at least a processor component type, the system comprising:
- a memory having a set of computer readable computer instructions, anda processor for executing the set of computer readable instructions, the set of computer readable instructions including;
detecting a respective set of wear-leveling data for each host of the plurality of hosts, each set of wear leveling data includes a plurality of sets of component usage data, wherein each set of component usage data respectively corresponds to an individual different component type and indicates a degree of historical utilization of the respectively corresponding hardware component type in the host, and wherein the set of component usage data for the processor components for at least one of the hosts is determined based on a set of thread event data collected at the at least one host via monitoring a set of processor utilization resource registers (PURRs);
ascertaining a respective set of component prioritization data for each VM of a plurality of VMs, wherein each set of component prioritization data specifies one or more operational priorities that respectively correspond to the different component types indicating a degree of importance of the respective component type relative to the other different component types;
determining a placement arrangement for the VMs with respect to the plurality of hosts, wherein the determining comprises, for each VM of the plurality of VMs;
identifying, using the set of component prioritization data for the VM, the component type with the highest degree of importance for the VM;
identifying, using the sets of wear-leveling data, a compatible host of the plurality of hosts that has the lowest degree of historical utilization of the identified component type compared to the other hosts of the plurality of hosts; and
storing, in the placement arrangement, an indication that the VM is matched with the identified compatible host; and
placing, based on the placement arrangement, each VM of the plurality of VMs on the host matched to the VM.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed aspects include managing a set of wear-leveling data with respect to a set of physical cores of a set of compute nodes. A set of physical cores of the set of compute nodes may be monitored using a set of processor utilization resource registers (PURRs) to identify the set of wear-leveling data. By monitoring the set of physical cores of the set of compute nodes, a set of thread events with respect to the set of physical cores of the set of compute nodes may be detected. Based on the set of thread events, the set of wear-leveling data may be determined. The set of wear-leveling data may then be established in a data store. The wear leveling data may be used to manage asset placement with respect to a shared pool of configurable computing resources.
44 Citations
3 Claims
-
1. A system for managing virtual machine (VM) placement related to a shared pool of configurable computing resources comprising a plurality of hosts, wherein each host comprises a plurality of hardware components including a plurality of different hardware component types, and wherein the different component types include at least a processor component type, the system comprising:
-
a memory having a set of computer readable computer instructions, and a processor for executing the set of computer readable instructions, the set of computer readable instructions including; detecting a respective set of wear-leveling data for each host of the plurality of hosts, each set of wear leveling data includes a plurality of sets of component usage data, wherein each set of component usage data respectively corresponds to an individual different component type and indicates a degree of historical utilization of the respectively corresponding hardware component type in the host, and wherein the set of component usage data for the processor components for at least one of the hosts is determined based on a set of thread event data collected at the at least one host via monitoring a set of processor utilization resource registers (PURRs); ascertaining a respective set of component prioritization data for each VM of a plurality of VMs, wherein each set of component prioritization data specifies one or more operational priorities that respectively correspond to the different component types indicating a degree of importance of the respective component type relative to the other different component types; determining a placement arrangement for the VMs with respect to the plurality of hosts, wherein the determining comprises, for each VM of the plurality of VMs; identifying, using the set of component prioritization data for the VM, the component type with the highest degree of importance for the VM; identifying, using the sets of wear-leveling data, a compatible host of the plurality of hosts that has the lowest degree of historical utilization of the identified component type compared to the other hosts of the plurality of hosts; and storing, in the placement arrangement, an indication that the VM is matched with the identified compatible host; and placing, based on the placement arrangement, each VM of the plurality of VMs on the host matched to the VM.
-
-
2. A computer-implemented method for managing virtual machine (VM) placement related to a shared pool of configurable computing resources comprising a plurality of hosts, wherein each host comprises a plurality of hardware components including a plurality of different hardware component types, and wherein the different component types include at least a processor component type, the method comprising:
-
detecting a respective set of wear-leveling data for each host of the plurality of hosts, each set of wear leveling data includes a plurality of sets of component usage data, wherein each set of component usage data respectively corresponds to an individual different component type and indicates a degree of historical utilization of the respectively corresponding hardware component type in the host, and wherein the set of component usage data for the processor components for at least one of the hosts is determined based on a set of thread event data collected at the at least one host via monitoring a set of processor utilization resource registers (PURRs); ascertaining a respective set of component prioritization data for each VM of a plurality of VMs, wherein each set of component prioritization data specifies one or more operational priorities that respectively correspond to the different component types indicating a degree of importance of the respective component type relative to the other different component types; determining a placement arrangement for the VMs with respect to the plurality of hosts, wherein the determining comprises, for each VM of the plurality of VMs; identifying, using the set of component prioritization data for the VM, the component type with the highest degree of importance for the VM; identifying, using the sets of wear-leveling data, a compatible host of the plurality of hosts that has the lowest degree of historical utilization of the identified component type compared to the other hosts of the plurality of hosts; and storing, in the placement arrangement, an indication that the VM is matched with the identified compatible host; and placing, based on the placement arrangement, each VM of the plurality of VMs on the host matched to the VM.
-
-
3. A computer program product for managing virtual machine VM placement related to a shared pool of configurable computing resources comprising a plurality of hosts, wherein each host comprises a plurality of hardware components including a plurality of different hardware component types, and wherein the different component types include at least a processor component type, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:
-
detecting a respective set of wear-leveling data for each host of the plurality of hosts, wherein each set of wear leveling data includes a plurality of sets of component usage data, wherein each set of component usage data respectively corresponds to an individual different component type, and indicates a degree of historical utilization of the respectively corresponding hardware component type in the host, and wherein the set of component usage data for the processor components for at least one of the hosts is determined based on a set of thread event data collected at the at least one host via monitoring a set of processor utilization resource registers (PURRs); ascertaining a respective set of component prioritization data for each VM of a plurality of VMs, wherein each set of component prioritization data specifies one or more operational priorities that respectively correspond to ones of the different component types indicating a degree of importance of the respective component type relative to the other different component types; determining a placement arrangement for the VMs with respect to the plurality of hosts, wherein the determining comprises, for each VM of the plurality of VMs; identifying, using the set of component prioritization data for the VM, the component type with the highest degree of importance for the VM, identifying, using the sets of wear-leveling data, a compatible host of the plurality of hosts that has the lowest degree of historical utilization of the identified component type compared to the other hosts of the plurality of hosts, and storing, in the placement arrangement, an indication that the VM is matched with the identified compatible host; and placing, based on the placement arrangement, each VM of the plurality of VMs on the host matched to the VM.
-
Specification