Configuration optimization using performance prediction
By tracking performance metrics in a virtual environment and predictively determining the optimal configuration settings, the challenge of handling resource configuration optimization in a virtual environment is solved, achieving the effect of improving workload performance.
Patent Information
- Application Number
- CN202010494923.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-06-03
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2040-06-03
AI Technical Summary
In a virtual environment, dynamic optimization of processing resource allocation has challenges and it is difficult to effectively improve the performance of workloads.
By executing multiple virtual machines in the information processing system, tracking the processor's performance metrics and predictively determining the optimal configuration settings to improve the performance of the workload.
The configuration of the information processing system is realized dynamically optimized, and the utilization rate of processing resources and system performance in the virtual environment are improved.
Smart Images

Figure CN113760515B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates generally to information handling systems, and more particularly to optimizing the configuration of an information handling system based on performance predictions. Background Art
[0002] As the value and use of information continue to grow, individuals and businesses seek other ways to process and store information. One option available to users is an information processing system. An information processing system typically processes, compiles, stores and / or communicates information or data for commercial, personal or other purposes, thereby allowing users to take advantage of the value of this information. Because technology and information processing needs and requirements vary between different users or applications, information processing systems may also differ in terms of what information to process, how to process information, how much information to process, store or communicate, and how to quickly and efficiently process, store or communicate information. Changes in information processing systems allow information processing systems to be general or configured for specific users or specific purposes (such as financial transaction processing, airline reservations, enterprise data storage or global communications). In addition, an information processing system may include a variety of hardware and software components that can be configured to process, store and communicate information, and may include one or more computer systems, data storage systems and networking systems.
[0003] Hyperconverged infrastructure (HCI) generally refers to software-defined IT infrastructure, which typically includes elements such as virtualized computing (eg, a hypervisor), software-defined storage, and virtualized networking (eg, software-defined networking).
[0004] In a typical virtual environment, one or more virtual central processing units (vCPUs) are assigned to each virtual machine (VM) within the cloud environment. The operating system of the VM sees each vCPU as a single physical CPU core. In some systems, a physical CPU (pCPU) refers to a single physical CPU core or a single logical CPU core (e.g., when hyperthreading or similar technologies are enabled). The frequency of the pCPU and the number of pCPUs affect the efficiency of processing resource management.
[0005] There are some techniques for changing the operating characteristics of a processor. For example, Select Speed Technology (SST) introduces a method that allows the processor to be configured for different core counts, base frequencies, thermal design powers (TDPs), and processor overtemperature (PROCHOT) threshold temperatures by selecting different configurations and core priorities.
[0006] However, due to the nature of virtual environments, applying SST and related techniques to dynamically optimize processing resources in virtual environments can be challenging. Embodiments of the present disclosure provide a way to optimize configuration based on predictive techniques.
[0007] It should be noted that the discussion of the technology in the background section of the present disclosure does not constitute an admission of the prior art state. Unless clearly and unambiguously determined as such, no such admission is made herein. Summary of the invention
[0008] According to the teachings of the present disclosure, disadvantages and problems associated with configuration optimization may be reduced or eliminated.
[0009] According to an embodiment of the present disclosure, an information processing system may include: at least one processor; and a non-transitory memory, the non-transitory memory coupled to the at least one processor. The information processing system may be configured to: execute multiple virtual machines, the multiple virtual machines having workloads associated therewith; during a selected time, apply multiple configuration settings related to the at least one processor while executing the workloads of the multiple virtual machines; during the selected time, track multiple performance metrics related to the at least one processor; and predictively determine a selected configuration setting from the multiple configuration settings that is predicted to improve the performance of the workload.
[0010] According to these and other embodiments of the present disclosure, a method may include: executing multiple virtual machines on an information handling system, the multiple virtual machines having workloads associated therewith; during a selected time, applying multiple configuration settings associated with at least one processor of the information handling system while executing the workloads of the multiple virtual machines; during the selected time, tracking multiple performance metrics associated with the at least one processor; and predictively determining a selected configuration setting from the multiple configuration settings that is predicted to improve performance of the workload.
[0011] According to these and other embodiments of the present disclosure, an article may include: a non-transitory computer-readable medium having computer executable code thereon, the computer executable code executable by a processor of an information processing system for: executing multiple virtual machines having workloads associated therewith; applying multiple configuration settings associated with the processor while executing the workloads of the multiple virtual machines during a selected time; tracking multiple performance metrics associated with the processor during the selected time; and predictively determining a selected configuration setting from the multiple configuration settings that is predicted to improve performance of the workload.
[0012] The technical advantages of the present disclosure may be apparent to those skilled in the art from the drawings, descriptions and claims included herein. The objects and advantages of the embodiments will be realized and obtained at least by the elements, features and combinations particularly pointed out in the claims.
[0013] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the claims set forth in the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] A more complete understanding of the present embodiment and its advantages may be obtained by referring to the following description taken in conjunction with the accompanying drawings, in which like reference numerals indicate like features, and in which:
[0015] Figure 1 A block diagram illustrating an exemplary information processing system according to an embodiment of the present disclosure; and
[0016] Figure 2 An exemplary method according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0017] The preferred embodiments and their advantages are described by reference Figure 1 to Figure 2 For best understanding, like reference numerals are used throughout the several drawings to designate like and corresponding parts.
[0018] For the purposes of this disclosure, the term "information handling system" may include any instrument or collection of instruments that is operable to compute, classify, process, transmit, receive, retrieve, originate, convert, store, display, indicate, detect, record, reproduce, process or utilize any form of information, intelligence or data for commercial, scientific, control, entertainment or other purposes. For example, an information handling system may be a personal computer, a personal digital assistant (PDA), a consumer electronic device, a network storage device, or any other suitable device, and may vary in size, shape, performance, functionality and price. An information handling system may include memory, one or more processing resources (such as a central processing unit ("CPU") or hardware or software control logic). Additional components of an information handling system may include one or more storage devices, one or more communication ports for communicating with external devices, and various input / output ("I / O") devices (such as a keyboard, a mouse, and a video display). An information handling system may also include one or more buses operable to transmit communications between various hardware components.
[0019] For purposes of this disclosure, when two or more elements are referred to as being “coupled” to each other, such terminology means that such two or more elements are in electronic or mechanical communication, as applicable, whether directly or indirectly connected, with or without intervening elements.
[0020] When two or more elements are referred to as being "coupleable" to each other, such term means that they are capable of being coupled together.
[0021] For purposes of this disclosure, the term "computer-readable medium" (e.g., transient or non-transitory computer-readable medium) may include any instrument or collection of instruments that can retain data and / or instructions for a period of time. Computer-readable media may include, but are not limited to: storage media such as direct access storage devices (e.g., hard drives or floppy disks), sequential access storage devices (e.g., magnetic tape disk drives), optical disks, CD-ROMs, DVDs, random access memories (RAM), read-only memories (ROM), electrically erasable programmable read-only memories (EEPROM), and / or flash memories; communication media such as wires, optical fibers, microwaves, radio waves, and other electromagnetic and / or optical carrier waves; and / or any combination of the foregoing.
[0022] For purposes of this disclosure, the term "information processing resource" may broadly refer to any component system, device or equipment of an information processing system, including but not limited to: a processor, a service processor, a basic input and output system, a bus, a memory, an I / O device and / or interface, a storage resource, a network interface, a motherboard and / or any other component and / or element of an information processing system.
[0023] For purposes of this disclosure, the term "management controller" may broadly refer to an information handling system that provides management functions (typically out-of-band management functions) to one or more other information handling systems. In some embodiments, the management controller may be (or may be an integral part of) a service processor, a baseboard management controller (BMC), a chassis management controller (CMC), or a remote access controller (e.g., Dell Remote Access Controller (DRAC) or Integrated Dell Remote Access Controller (iDRAC)).
[0024] Figure 1 A block diagram of an exemplary information handling system 102 according to an embodiment of the present disclosure is shown. In some embodiments, the information handling system 102 may include a server chassis configured to accommodate multiple servers or "blades." In other embodiments, the information handling system 102 may include a personal computer (e.g., a desktop computer, a laptop computer, a mobile computer, and / or a notebook computer). In still other embodiments, the information handling system 102 may include a storage housing configured to accommodate multiple physical disk drives and / or other computer-readable media (which may generally be referred to as "physical storage resources") for storing data. Figure 1As shown, the information processing system 102 may include a processor 103, a memory 104 communicatively coupled to the processor 103, a BIOS 105 (e.g., UEFI BIOS) communicatively coupled to the processor 103, a network interface 108 communicatively coupled to the processor 103, and a management controller 112 communicatively coupled to the processor 103.
[0025] In operation, processor 103, memory 104, BIOS 105, and network interface 108 may comprise at least a portion of host system 98 of information handling system 102. Information handling system 102 may include one or more other information handling resources in addition to the elements specifically shown and described.
[0026] Processor 103 may include any system, device or apparatus configured to interpret and / or execute program instructions and / or process data, and may include, but is not limited to: a microprocessor, a microcontroller, a digital signal processor (DSP), an application specific integrated circuit (ASIC), or any other digital or analog circuit configured to interpret and / or execute program instructions and / or process data. In some embodiments, processor 103 may interpret and / or execute program instructions and / or process data stored in memory 104 and / or another component of information processing system 102.
[0027] Memory 104 may be communicatively coupled to processor 103 and may include any system, device, or apparatus (e.g., a computer-readable medium) configured to retain program instructions and / or data for a period of time. Memory 104 may include RAM, EEPROM, PCMCIA cards, flash memory, magnetic storage devices, optical-magnetic storage devices, or any suitable selection and / or array of volatile or non-volatile memory that retains data after power to information handling system 102 is removed.
[0028] like Figure 1 As shown, the memory 104 may store an operating system 106 thereon. The operating system 106 may include any program (or collection of programs of executable instructions) of executable instructions that are configured to manage and / or control the allocation and use of hardware resources (such as memory, processor time, disk space, and input and output devices) and to provide an interface between such hardware resources and application programs hosted by the operating system 106. In addition, the operating system 106 may include all or part of a network stack for network communications through a network interface (e.g., a network interface 108 for communicating over a data network). Although the operating system 106 is Figure 1104, but in some embodiments, the operating system 106 may be stored in a storage medium accessible to the processor 103, and the active portions of the operating system 106 may be transferred from such storage medium to the memory 104 for execution by the processor 103.
[0029] The network interface 108 may include one or more suitable systems, devices, or apparatuses operable to serve as an interface between the information handling system 102 and one or more other information handling systems via an in-band network. The network interface 108 may enable the information handling system 102 to communicate using any suitable transmission protocol and / or standard. In these and other embodiments, the network interface 108 may include a network interface card or "NIC". In these and other embodiments, the network interface 108 may be capable of serving as a local area network (LAN) on motherboard (LOM) card.
[0030] Management controller 112 may be configured to provide management functions for managing information handling system 102. Such management may be performed by management controller 112 even when information handling system 102 and / or host system 98 are powered off or powered on to a standby state. Management controller 112 may include processor 113, memory, and network interface 118 that is separate and physically isolated from network interface 108.
[0031] like Figure 1 As shown, the processor 113 of the management controller 112 may be communicatively coupled to the processor 103. Such coupling may be via a universal serial bus (USB), a system management bus (SMBus), and / or one or more other communication channels.
[0032] The network interface 118 may be coupled to a management network that may be separate and physically isolated from the data network, as shown. The network interface 118 of the management controller 112 may include any suitable system, device, or apparatus operable to serve as an interface between the management controller 112 and one or more other information processing systems via an out-of-band management network. The network interface 118 may enable the management controller 112 to communicate using any suitable transmission protocol and / or standard. In these and other embodiments, the network interface 118 may include a network interface card or "NIC". The network interface 118 may be the same type of apparatus as the network interface 108, or may be a different type of apparatus in other embodiments.
[0033] As discussed above, it is desirable to predictively change the operating characteristics of a processor to suit its workload, particularly in a virtual environment such as an HCI cluster. Embodiments of the present disclosure may provide such a solution by relying on two main components.
[0034] First, the workload assessment module for virtual environments can provide a way to assess workload execution efficiency / performance over a period of time. Second, the configuration prediction module for performance optimization can provide a method to select possible new configurations to optimize or improve performance.
[0035] As noted above, some embodiments of the present disclosure may utilize Features of Speed Selection Technology. SST includes two main features called Performance Profile (SST-PP) and Base Frequency (SST-BF). Both SST-PP and SST-BF can be enabled and configured through the BIOS / UEFI interface and / or through a management controller. In some embodiments, a host reboot may be required.
[0036] SST-PP introduces two additional configuration levels and a new CPU mailbox command interface. The SST-PP allows the processor to be configured for different core counts, base frequencies, TDPs and PROCHOT threshold temperatures by selecting different configurations.
[0037] SST-BF is a performance optimization feature for base configurations. The SST-BF implementation provides the ability to provide differentiated levels of base frequency within a System on Chip (SoC). Using SST-BF, a specific processor model can be manufactured with specific cores designated as high priority, while other cores have lower priority.
[0038] Generally, for a CPU, there are a number of metrics of interest that can be used to help predict an optimal SST configuration for an information handling system.
[0039] For example, the CPU Ready (CR host ) is a type of processing statistic that represents the amount of time a component is ready to process a job but is waiting for the scheduler to access a physical processor. From the perspective of overall host health for the CPU, this metric is likely the most important metric. CPU Ready is a metric used to determine the length of time a virtual machine has waited for enough physical processors to become available in order to satisfy the virtual machine's needs.
[0040] CPU utilization on the host (CU host ) indicates the overall CPU usage on the host server, which is important because it shows how much work the host server is doing. If the CPU utilization is too high, it may indicate a shortage of CPU resources on the host.
[0041] CPU utilization within the virtual machine (CU vm ) shows the vCPU utilization in the virtual machine. When this metric remains high, you should add additional vCPUs to the virtual machine.
[0042] In order to evaluate the performance of computing resources, all of the above metrics can be used and given appropriate weights W to generate performance indicators within a certain time period (e.g., 1 hour, 1 day, etc.). An initial performance evaluation / measurement can be performed by trying each configuration in an equal time period. The performance indicator can be given by the following formula:
[0043]
[0044] It can be expressed as PI based on i,j The performance index matrix M is constructed by using different PI values PI , where i indexes different configurations and j indexes different time periods during which measurements are made.
[0045] <![CDATA[T1]]> <![CDATA[T2]]> <![CDATA[T3]]> … <![CDATA[T n ]]> Configuration 1 <![CDATA[PI 1,1 ]]> 0 0 … 0 Configuration 2 0 0 <![CDATA[PI 2,3 ]]> … 0 Configuration 3 0 <![CDATA[PI 3,2 ]]> 0 … 0 … … … … … … Configuration 0 0 0 … <![CDATA[PI m,n ]]>
[0046] Performance indicator matrix M PI .
[0047] For each configuration, an average performance index can also be calculated. For the mth configuration, for example, the average performance index can be written as follows:
[0048]
[0049] Where N is the count of performance measurements. Then, the overall average performance index can also be calculated as:
[0050]
[0051] Based on this, the performance increment matrix M can also be constructed according to the following formula: PD :
[0052] PD i,j =PI i,j -PI avg
[0053]
[0054] Performance increment matrix M PD .
[0055] Based on this, the performance score matrix M can also be constructed according to the following formula: PS :
[0056]
[0057] <![CDATA[T1]]> <![CDATA[T2]]> <![CDATA[T3]]> … <![CDATA[T n ]]> Configuration 1 <![CDATA[PS 1,1 ]]> 0 0 … 0 Configuration 2 0 0 <![CDATA[PS 2,3 ]]> … 0 Configuration 3 0 <![CDATA[PS 3,2 ]]> 0 … 0 … … … … … … Configuration <![CDATA[PS m,1 ]]> <![CDATA[PS m,2 ]]> <![CDATA[PS m,3 ]]> … <![CDATA[PS m,n ]]>
[0058] Performance score matrix M PS .
[0059] For each configuration, the overall performance score PS of the i-th configuration can be calculated using the formula immediately above: i Average performance score PS avg It can also be calculated as:
[0060]
[0061] where M is the total number of configurations. Finally, the matrix M can also be calculated PD and M PS Hadamard product M * :
[0062]
[0063] Performance score matrix M PS .
[0064] Based on the above performance metrics, various predictions can be made. In the following discussion, for clarity and illustration, calculations based on Bayes' theorem are provided. As will be appreciated by those of ordinary skill in the art having the benefit of this disclosure, in other embodiments, different algorithms can be used. In this example, based on performance metrics (which can be collected dynamically), Bayes' theorem can be used to predict the most efficient configuration of the system.
[0065] Given a hypothesis H and evidence E, Bayes' theorem states that the relationship between the probability of the hypothesis before obtaining the evidence, P(E), and the probability of the hypothesis after obtaining the evidence, P(H|E), is given by:
[0066]
[0067] P(H) is called the prior probability, and P(H|E) is called the posterior probability. The factor connecting the two, P(E|H)) / P(E), is called the likelihood ratio.
[0068] Based on Bayes' theorem, the following definition can be used:
[0069] Evidence: Application configuration i (i=configuration index).
[0070] Assumption: h+ (get better or equal performance index) or h- (get worse performance index).
[0071] The predictions can be converted into:
[0072]
[0073] P(Cfg i) is the probability of applying configuration i, which can be calculated by the percentage of time periods in which the configuration is applied. In other words,
[0074]
[0075] Where M is the total number of evaluations / measurements. P(h+) is the overall probability of obtaining a better or equal performance metric. P(Cfg i |h+) is the overall probability of applying configuration i when obtaining a better or equal performance indicator, which in some embodiments can be calculated by the following algorithm (shown in pseudo code):
[0076]
[0077] The probability of getting better performance when applying the configuration can then be compared as follows:
[0078]
[0079] If a given configuration has a higher probability of improving system performance, it may be selected (e.g., by BIOS / UEFI or a management controller during the next server maintenance window). Performance data may be collected continuously to update the above matrix, which provides intelligence for predicting the most appropriate configuration over time.
[0080] Therefore, embodiments of the present disclosure provide a method for dynamically predicting a performance-optimized configuration for a server system, which shows a way to better utilize technologies such as SST to optimize server hardware utilization, especially in virtual environments like HCI.
[0081] Now go to Figure 2 , a flow chart of an exemplary method 200 for optimizing configuration settings according to some embodiments of the present disclosure is shown. At step 202, an information handling system executes a plurality of virtual machines. The virtual machines may have corresponding workloads associated therewith.
[0082] At step 204, different configuration settings are applied to one or more processors of the system during different time periods. For example, a particular SST setting may be applied for a given amount of time, and then, a different SST setting may be applied later for the same amount of time.
[0083] At step 206, various performance metrics may be tracked during execution of the workload of the virtual machine during each time period.
[0084] At step 208, a predictive determination is made as to which of the tested configuration settings is likely to provide the best performance in the future. After step 208, the method may end.
[0085] Those skilled in the art who have the benefit of this disclosure will appreciate that Figure 2 The preferred starting point of the method shown and the order of the steps comprising the method may depend on the implementation selected. In these and other embodiments, the method can be implemented as hardware, firmware, software, applications, functions, libraries, or other instructions. In addition, although Figure 2 A specific number of steps to be taken with respect to the disclosed methods is disclosed, but the methods may be performed with more or fewer steps than depicted. The methods may use any of the various components disclosed herein (such as Figure 1 components) and / or any other system operable to implement the method.
[0086] Although various possible advantages have been described with respect to the embodiments of the present disclosure, those of ordinary skill in the art having benefit of the present disclosure will appreciate that not all such advantages may apply in any particular embodiment. In any particular embodiment, some, all, or even none of the listed advantages may apply.
[0087] The present disclosure covers all changes, substitutions, variations, alterations and modifications to the exemplary embodiments herein that would be appreciated by a person of ordinary skill in the art. Similarly, where appropriate, the appended claims cover all changes, substitutions, variations, alterations and modifications to the exemplary embodiments herein that would be appreciated by a person of ordinary skill in the art. In addition, references in the appended claims to a device or system or component of a device or system that is adapted, arranged, capable, configured, enabled, operable or operable to perform a specific function covers the device, system or component, whether or not it or the specific function is activated, turned on or unlocked, as long as the device, system or component is so adapted, arranged, capable, configured, enabled, operable or operable.
[0088] Additionally, the recitation of structures "configured to" or "operable to" perform one or more tasks in the appended claims expressly does not intend to invoke 35 U.S.C. § 112(f) with respect to such claim elements. Thus, no claim in this application as filed is intended to be interpreted as having means-plus-function elements. If the applicant wishes to invoke § 112(f) during prosecution, the applicant will recite the claim elements using the construction "means for [performing the function]".
[0089] All examples and conditional language described herein are intended to help readers understand the present invention and the teaching purpose of promoting the concepts of this field provided by the inventor, and should be interpreted as not being limited to such specific examples and conditions. Although the embodiments of the present invention have been described in detail, it should be understood that various changes, substitutions and modifications may be made to the present disclosure without departing from the spirit and scope of the present disclosure.
Claims
1. An information processing system, comprising: at least one processor; as well as a non-transitory memory coupled to the at least one processor; The information processing system is configured to: executing a plurality of virtual machines having workloads associated therewith; applying, during selected times, a plurality of configuration settings associated with the at least one processor while executing the workloads of the plurality of virtual machines; tracking a plurality of performance metrics associated with the at least one processor during the selected time; determining a performance indicator for each configuration setting and the selected time associated therewith, the performance indicator comprising a weighted sum of the plurality of performance metrics; determining a performance delta for each configuration setting and the selected time associated therewith, the performance delta comprising a difference between an individual performance indicator and an average performance indicator; determining a performance score for each configuration setting, the performance score indicating how much the individual performance metric differs from the average performance metric over all of the selected time periods; Based on the performance delta and the performance score, a selected configuration setting from the plurality of configuration settings that is predicted to improve performance of the workload is predictively determined.
2. The information handling system of claim 1, wherein the performance metrics include CPU ready on the information handling system (CRhost), CPU utilization on the information handling system (CUhost), and CPU utilization on a virtual machine (CUvm).
3. The information handling system of claim 1, wherein the plurality of configuration settings include a core count, a base frequency, and a turbo frequency.
4. The information processing system of claim 1, wherein the selected time comprises a plurality of equal lengths of time.
5. The information handling system of claim 1, further configured to apply the selected configuration setting.
6. The information handling system of claim 5, wherein the selected configuration settings are applied during a reboot and / or a defined maintenance window.
7. A method comprising: executing a plurality of virtual machines on the information handling system, the plurality of virtual machines having workloads associated therewith; applying, during selected times, a plurality of configuration settings associated with at least one processor of the information handling system while executing the workloads of the plurality of virtual machines; tracking a plurality of performance metrics associated with the at least one processor during the selected time; determining a performance indicator for each configuration setting and the selected time associated therewith, the performance indicator comprising a weighted sum of the plurality of performance metrics; determining a performance delta for each configuration setting and the selected time associated therewith, the performance delta comprising a difference between an individual performance indicator and an average performance indicator; determining a performance score for each configuration setting, the performance score indicating how much the individual performance metric differs from the average performance metric over all of the selected time periods; as well as Based on the performance delta and the performance score, a selected configuration setting from the plurality of configuration settings that is predicted to improve performance of the workload is predictively determined.
8. The method of claim 7, wherein the performance metrics include CPU ready on the information handling system (CRhost), CPU utilization on the information handling system (CUhost), and CPU utilization on a virtual machine (CUvm).
9. The method of claim 7, wherein the plurality of configuration settings include a core count, a base frequency, and a turbo frequency.
10. The method of claim 7, wherein the selected time comprises a plurality of equal lengths of time.
11. The method of claim 7, further comprising: The selected configuration settings are applied to the information handling system upon a subsequent reboot.
12. An article of manufacture comprising a non-transitory computer readable medium having computer executable code thereon, the computer executable code executable by a processor of an information processing system for: executing a plurality of virtual machines having workloads associated therewith; applying a plurality of configuration settings associated with the processor while executing the workloads of the plurality of virtual machines during selected times; tracking a plurality of performance metrics associated with the processor during the selected time; determining a performance indicator for each configuration setting and the selected time associated therewith, the performance indicator comprising a weighted sum of the plurality of performance metrics; determining a performance delta for each configuration setting and the selected time associated therewith, the performance delta comprising a difference between an individual performance indicator and an average performance indicator; determining a performance score for each configuration setting, the performance score indicating how much the individual performance metric differs from the average performance metric over all of the selected time periods; as well as Based on the performance delta and the performance score, a selected configuration setting from the plurality of configuration settings that is predicted to improve performance of the workload is predictively determined.
13. The article of claim 12, wherein the performance metrics include CPU ready on the information handling system (CRhost), CPU utilization on the information handling system (CUhost), and CPU utilization on a virtual machine (CUvm).
14. The article of manufacture of claim 12, wherein the plurality of configuration settings include a core count, a base frequency, and a turbo frequency.
15. The article of claim 12, wherein the selected time comprises a plurality of equal lengths of time.
16. The article of manufacture of claim 12, wherein the code is further executable to: Applies the selected configuration settings.
17. The article of manufacture of claim 16, wherein the selected configuration settings are applied during a reboot and / or a defined maintenance window.
Citation Information
Patent Citations
CPU overprovisioning and cloud compute workload scheduling mechanism
CN107003887A