CN115390983A - Hardware resource allocation method, device, equipment and storage medium for virtual machine - Google Patents

Hardware resource allocation method, device, equipment and storage medium for virtual machine Download PDF

Info

Publication number
CN115390983A
CN115390983A CN202110569915.4A CN202110569915A CN115390983A CN 115390983 A CN115390983 A CN 115390983A CN 202110569915 A CN202110569915 A CN 202110569915A CN 115390983 A CN115390983 A CN 115390983A
Authority
CN
China
Prior art keywords
virtual machine
hardware resource
virtual
processor
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110569915.4A
Other languages
Chinese (zh)
Inventor
陈列
周旭
廖俊峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202110569915.4A priority Critical patent/CN115390983A/en
Publication of CN115390983A publication Critical patent/CN115390983A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Abstract

The invention discloses a hardware resource allocation method facing to a virtual machine, which is used for acquiring hardware resource parameters of a first virtual machine running on a host, wherein the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate; determining a second virtual machine having hardware resource competition with the first virtual machine according to the hardware resource parameters; and scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine. The invention also discloses a hardware resource allocation device, equipment and a computer storage medium for the virtual machine. According to the invention, the second virtual machine is scheduled to avoid the second virtual machine from competing with the first virtual machine for resources, so that the hardware resource supply of the first virtual machine is ensured, and the performance of the first virtual machine is improved.

Description

Hardware resource allocation method, device, equipment and storage medium for virtual machine
Technical Field
The present invention relates to the technical field of hardware resources, and in particular, to a method, an apparatus, a device, and a storage medium for allocating hardware resources for a virtual machine.
Background
Most of the current hosts (hosts) adopt a Non-Uniform Memory Access (NUMA) server architecture. In the NUMA architecture, a plurality of processors originally located together in a physical space are divided into a plurality of nodes (nodes), each node is allocated with a processor and a memory belonging to the node, and the node can also access memories of other nodes across nodes, and the access speed of the memory of the node is higher than that of the memories of other nodes.
When a plurality of virtual machines run on a host, the virtual machines with the same type of service may be scheduled to the same node and compete for hardware resources on the same node, or the virtual machines with the same type of service may be scheduled to different nodes and compete for hardware resources on the node when the virtual machines cross-node access other nodes where the virtual machines with the same type of service are located. When the hardware resources compete, the hardware resources are preempted by other virtual machines, which results in insufficient hardware resources of the virtual machine, and the performance of the virtual machine is obviously reduced.
The above is only for the purpose of assisting understanding of the technical aspects of the present invention, and does not represent an admission that the above is prior art.
Disclosure of Invention
The invention mainly aims to provide a hardware resource allocation method facing to a virtual machine, aiming at avoiding a second virtual machine and a first virtual machine from competing for resources so as to improve the performance of the first virtual machine.
In order to achieve the above object, the present invention provides a hardware resource allocation method for a virtual machine, including the following steps:
acquiring hardware resource parameters of a first virtual machine running on a host, wherein the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate;
determining a second virtual machine having hardware resource competition with the first virtual machine according to the hardware resource parameters;
and scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine.
Optionally, the step of determining, according to the hardware resource parameter, a second virtual machine that has hardware resource contention with the first virtual machine includes:
when the hardware resource parameters comprise the cache failure rate and the cache failure rate is greater than a first threshold value, determining a physical processor where the first virtual machine is located;
treating, on the physical processor, a virtual machine other than the first virtual machine as the second virtual machine.
Optionally, the step of scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine includes:
reducing processor cache capacity occupied by the second virtual machine on the physical processor.
Optionally, after the step of reducing the processor cache capacity occupied by the second virtual machine on the physical processor, the method further includes:
and returning to execute the step of acquiring the hardware resource parameters of the first virtual machine running on the host.
Optionally, the step of determining, according to the hardware resource parameter, a second virtual machine that has hardware resource contention with the first virtual machine includes:
when the hardware resource parameters comprise the memory bandwidth utilization rate and the memory bandwidth utilization rate is greater than a second threshold value, determining a first node where the first virtual machine is located;
and taking other virtual machines except the first virtual machine on the first node as the second virtual machine.
Optionally, the step of scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine includes:
migrating the second virtual machine from the first node to a second node of the host to isolate the second virtual machine from the first virtual machine.
Optionally, after the step of determining the first node where the first virtual machine is located when the hardware resource parameter includes the memory bandwidth utilization rate and the memory bandwidth utilization rate is greater than a second threshold, the method further includes:
when the hardware resource parameters further include the virtual processor utilization rate, if the virtual processor utilization rate is less than or equal to a third threshold value and the number of the first virtual machines on the host is less than the number of the nodes of the host, scheduling the virtual processor threads of the first virtual machines to the first nodes for running.
Optionally, the step of scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine includes:
and reducing the memory bandwidth occupied by the second virtual machine on the first node.
Optionally, before the step of obtaining hardware resource parameters of a first virtual machine running on the host, the method further includes:
and when receiving an instruction of a specified important virtual machine, taking the virtual machine corresponding to the instruction of the specified important virtual machine on the host as the first virtual machine.
Optionally, the method further comprises:
when receiving an instruction for starting a virtual machine, acquiring the number of virtual processor threads of a third virtual machine corresponding to the instruction for starting the virtual machine;
and when the number of the virtual processor threads of the third virtual machine is less than or equal to the number of cores of the physical processor of the third node of the host, starting the third virtual machine, and scheduling all the virtual processor threads of the third virtual machine to the third node for running.
Optionally, after the step of obtaining the hardware resource parameter of the first virtual machine running on the host, the method further includes:
when the hardware resource parameters include the virtual processor utilization rate, if the virtual processor utilization rate is greater than a fourth threshold value, scheduling a plurality of virtual processor threads of the first virtual machine to run on different nodes of the host, wherein the fourth threshold value is greater than or equal to the third threshold value.
In addition, to achieve the above object, the present invention further provides a hardware resource allocation apparatus for a virtual machine, including:
the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring hardware resource parameters of a first virtual machine running on a host, and the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate;
the determining module is used for determining a second virtual machine which is in hardware resource competition with the first virtual machine according to the hardware resource parameters;
and the scheduling module is used for scheduling the second virtual machine so as to limit the hardware resources occupied by the second virtual machine.
In addition, to achieve the above object, the present invention further provides a hardware resource allocation device for a virtual machine, where the hardware resource allocation device for a virtual machine includes: a memory, a processor and a virtual machine-oriented hardware resource allocation program stored on the memory and executable on the processor, the virtual machine-oriented hardware resource allocation program, when executed by the processor, implementing the steps of the virtual machine-oriented hardware resource allocation method as described in any one of the above.
In addition, to achieve the above object, the present invention further provides a computer storage medium, on which a hardware resource allocation program for a virtual machine is stored, and when the hardware resource allocation program for the virtual machine is executed by a processor, the method of allocating hardware resources for the virtual machine according to any one of the above-mentioned steps is implemented.
The hardware resource allocation method, device, equipment and storage medium for the virtual machine, provided by the embodiments of the present invention, acquire a hardware resource parameter of a first virtual machine running on a host, where the hardware resource parameter includes at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate, determine a second virtual machine that has hardware resource contention with the first virtual machine according to the hardware resource parameter, and schedule the second virtual machine to limit hardware resources occupied by the second virtual machine. According to the invention, the second virtual machine is scheduled to avoid the second virtual machine from competing with the first virtual machine for resources, so that the hardware resource supply of the first virtual machine is ensured, and the performance of the first virtual machine is improved.
Drawings
Fig. 1 is a schematic terminal structure diagram of a hardware operating environment according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating an embodiment of a method for allocating hardware resources to a virtual machine according to the present invention;
FIG. 3 is a flowchart illustrating a hardware resource allocation method for a virtual machine according to another embodiment of the present invention;
FIG. 4 is a flowchart illustrating a hardware resource allocation method for a virtual machine according to yet another embodiment of the present invention;
FIG. 5 is a flowchart illustrating a virtual machine-oriented hardware resource allocation method according to another embodiment of the present invention;
FIG. 6 is a flowchart illustrating a virtual machine-oriented hardware resource allocation method according to another embodiment of the present invention;
FIG. 7 is a schematic diagram of the component modules of the virtual machine-oriented hardware resource allocation apparatus according to the present invention;
fig. 8 is a schematic diagram of a terminal structure of the host according to the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Embodiments of the present invention provide a solution, where a second virtual machine is scheduled to avoid the second virtual machine competing for resources with a first virtual machine, so as to ensure hardware resource supply of the first virtual machine and improve performance of the first virtual machine.
As shown in fig. 1, fig. 1 is a schematic terminal structure diagram of a hardware operating environment according to an embodiment of the present invention.
The terminal in the embodiment of the invention is terminal equipment, such as a Host (Host).
As shown in fig. 1, the terminal may include: a processor 1001, e.g. a CPU, a network interface 1004, a user interface 1003, a memory 1005, a communication bus 1002. Wherein a communication bus 1002 is used to enable connective communication between these components. The user interface 1003 may include a Display screen (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a wireless interface (e.g., WI-FI interface). The memory 1005 may be a high-speed RAM memory or a non-volatile memory (e.g., a magnetic disk memory). The memory 1005 may alternatively be a storage device separate from the processor 1001 described previously.
Those skilled in the art will appreciate that the terminal structure shown in fig. 1 is not intended to be limiting and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components.
As shown in fig. 1, a memory 1005, which is a kind of computer storage medium, may include therein an operating system, a network communication module, a user interface module, and a virtual machine-oriented hardware resource allocation program.
In the terminal shown in fig. 1, the network interface 1004 is mainly used for connecting to a backend server and performing data communication with the backend server; the user interface 1003 is mainly used for connecting a client (user side) and performing data communication with the client; and the processor 1001 may be configured to invoke a virtual machine oriented hardware resource allocation program stored in the memory 1005 and perform the following operations:
acquiring hardware resource parameters of a first virtual machine running on a host, wherein the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate;
determining a second virtual machine having hardware resource competition with the first virtual machine according to the hardware resource parameters;
and scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
when the hardware resource parameters comprise the cache failure rate and the cache failure rate is greater than a first threshold value, determining a physical processor where the first virtual machine is located;
treating, on the physical processor, a virtual machine other than the first virtual machine as the second virtual machine.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
reducing processor cache capacity occupied by the second virtual machine on the physical processor.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
and returning to execute the step of acquiring the hardware resource parameters of the first virtual machine running on the host.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
when the hardware resource parameters comprise the memory bandwidth utilization rate and the memory bandwidth utilization rate is greater than a second threshold value, determining a first node where the first virtual machine is located;
and taking other virtual machines except the first virtual machine on the first node as the second virtual machine.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
migrating the second virtual machine from the first node to a second node of the host to isolate the second virtual machine from the first virtual machine.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
when the hardware resource parameters further include the utilization rate of the virtual processor, if the utilization rate of the virtual processor is less than or equal to a third threshold value and the number of the first virtual machines on the host is less than the number of the nodes on the host, scheduling the virtual processor threads of the first virtual machines to the first nodes for running.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
and reducing the memory bandwidth occupied by the second virtual machine on the first node.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
and when receiving an instruction of a specified important virtual machine, taking the virtual machine corresponding to the instruction of the specified important virtual machine on the host as the first virtual machine.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
when receiving an instruction for starting a virtual machine, acquiring the number of virtual processor threads of a third virtual machine corresponding to the instruction for starting the virtual machine;
and when the number of the virtual processor threads of the third virtual machine is less than or equal to the number of cores of the physical processor of the third node of the host, starting the third virtual machine, and scheduling all the virtual processor threads of the third virtual machine to the third node for running.
Further, the processor 1001 may call the virtual machine-oriented hardware resource allocation program stored in the memory 1005, and also perform the following operations:
when the hardware resource parameters include the virtual processor utilization rate, if the virtual processor utilization rate is greater than a fourth threshold value, scheduling the multiple virtual processor threads of the first virtual machine to run on different nodes of the host, wherein the fourth threshold value is greater than or equal to the third threshold value.
Referring to fig. 2, in an embodiment, the virtual machine-oriented hardware resource allocation method includes the following steps:
step S10, acquiring hardware resource parameters of a first virtual machine running on a host, wherein the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate;
in this embodiment, the terminal in this embodiment is a terminal device, for example, a Host (Host), a PC, and the like, and the terminal device runs a hardware resource allocation program facing a virtual machine, so as to control hardware resource allocation of the Host through the hardware resource allocation program facing the virtual machine.
Optionally, the host is a physical server, and the host includes a plurality of physical processors (CPUs). The host computer adopts a server system architecture of Non-Uniform Memory Access (NUMA), and a plurality of physical processors which are originally together in a physical space are divided into a plurality of nodes (nodes), so that the host computer can comprise a plurality of nodes, each node is provided with a physical processor and a Memory belonging to the node, the node can also Access the memories of other nodes across the nodes, and the Access speed of the Memory of the node is higher than that of the memories of other nodes. The nodes are connected and communicated in a Quick Path Interconnect (QPI) and/or super Path Interconnect (UPI) mode. At least one virtual machine can be operated on each node, so that the specified network service can be provided for the client through the interaction of the virtual machine and the client. The Virtual Machine (VM) is a special program running on a host, and represents a special process to a lower physical Machine and a Virtual server environment to an upper user.
Alternatively, as shown in fig. 8, fig. 8 is a schematic diagram of a terminal structure of the host. The host 200 includes a plurality of nodes (nodes) 210, each node 210 includes at least one physical processor 220 and a local memory 230, the physical processor 220 includes a plurality of cores, and the physical processor 220 is connected to the memory 230 to read data from and write data to the local memory 230, and the reading speed is faster when the physical processor 220 accesses the local memory 230 of the node than when the physical processor 220 accesses the local memory 230 of other nodes.
Optionally, at least two virtual machines run on the host simultaneously: a first virtual machine and a second virtual machine. When the Virtual machine runs, various functions of the Virtual machine are realized through a Virtual processor (vcpu) thread, the vcpu thread is a sub-thread of a Virtual machine process, the Virtual machine process seen on the host is represented as a main process, and the vcpu thread is a sub-thread of the main process. The vcpu thread depends on hardware resources, for example, a physical processor in the node is relied on for data calculation, and a memory in the node is relied on for data reading and writing.
Optionally, the hardware resource parameter includes at least one of a Cache miss Rate (CacheMiss Rate), a Memory Bandwidth (MB) utilization Rate, and a virtual processor utilization Rate, where the Cache miss Rate is a miss Rate of a CPU Cache in a physical processor where the virtual machine is located, and the CPU Cache may be at least one of a first-Level Cache, a second-Level Cache, and a third-Level Cache, for example, the third-Level Cache is generally a Last-Level processor Cache (LLC), and the LLC is a Last-Level buffer of the physical CPU, which is a Cache of Memory data, and is used to match a high speed of the physical CPU with a low speed of the Memory. The memory bandwidth is the speed of the processor accessing the memory, the unit is GB/s, the memory bandwidth utilization rate is the memory bandwidth utilization rate occupied by the first virtual machine at the node where the first virtual machine is located, and the virtual processor utilization rate is the utilization rate of the vcpu thread of the first virtual machine.
Optionally, a plurality of first virtual machines may exist at the same time, so as to perform hardware resource allocation according to each first virtual machine.
Optionally, the step of acquiring the hardware resource parameters of the first virtual machine running on the host may be performed periodically. The user can send an instruction for designating the important virtual machine, when the terminal device receives the instruction for designating the important virtual machine, the virtual machine corresponding to the instruction for designating the important virtual machine on the host machine is used as a first virtual machine, and then the step of acquiring the hardware resource parameter of the first virtual machine running on the host machine can be executed according to the designated first virtual machine, so that the hardware resource allocation is carried out for the important virtual machine, and the performance of the important virtual machine is not influenced by resource competition.
Step S20, determining a second virtual machine having hardware resource competition with the first virtual machine according to the hardware resource parameters;
in this embodiment, after the hardware resource parameter of the first virtual machine is obtained, whether hardware resource contention exists on the host is determined according to the hardware resource parameter of the first virtual machine, and if so, a second virtual machine having hardware resource contention with the first virtual machine is determined according to the hardware resource parameter.
Optionally, when determining whether hardware resource contention exists according to the hardware resource parameter, the hardware resource parameter may be compared with a corresponding threshold, and when the hardware resource parameter is greater than the corresponding threshold, the hardware resource contention exists, for example, the cache failure rate may be compared with a first threshold, the memory bandwidth utilization rate may be compared with a second threshold, and the virtual processor utilization rate may be compared with a third threshold, where each threshold may be set according to actual needs.
Optionally, when determining, according to the hardware resource parameter, a second virtual machine that is in hardware resource contention with the first virtual machine, the second virtual machine may be determined according to the hardware resource that is in contention, for example, when the hardware resource that is in contention includes cache failure rate, the other virtual machine in the physical processor where the first virtual machine is located is taken as the second virtual machine, and for example, when the hardware resource that is in contention includes memory bandwidth utilization rate, the other virtual machine in the first node where the first virtual machine is located is taken as the second virtual machine.
And step S30, scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine.
In this embodiment, after the second virtual machine is determined, the first virtual machine is scheduled, and the amount of hardware resources available to the second virtual machine is limited, so as to reduce or avoid hardware resource contention between the second virtual machine and the first virtual machine, thereby ensuring that the hardware resources required by the first virtual machine are sufficient, and improving the performance of the first virtual machine.
Optionally, when the second virtual machine is scheduled, the occupation of the hardware resources required by the first virtual machine by the second virtual machine may be limited by reducing the hardware resource quota of the second virtual machine or migrating the second virtual machine to another node other than the node where the first virtual machine is located.
In the technical scheme disclosed in this embodiment, the second virtual machine is scheduled to avoid the second virtual machine from competing for resources with the first virtual machine, so that the hardware resource supply of the first virtual machine is ensured, and the performance of the first virtual machine is improved.
In another embodiment, as shown in fig. 3, on the basis of the embodiment shown in fig. 2, the step S20 includes:
step S21, when the hardware resource parameters comprise the cache failure rate and the cache failure rate is greater than a first threshold value, determining a physical processor where the first virtual machine is located;
and step S22, regarding other virtual machines except the first virtual machine on the physical processor as the second virtual machine.
In this embodiment, when the hardware resource parameter includes a cache failure Rate (CacheMiss Rate), it is determined whether a second virtual machine competing for the physical processor cache with the first virtual machine exists according to the cache failure Rate, and if the detected cache failure Rate is greater than a first threshold, it indicates that contention for the physical processor cache exists, so that the physical processor where the first virtual machine is located may be determined, and all virtual machines except the first virtual machine on the physical processor may be regarded as second virtual machines. It should be noted that, if multiple vcpu threads of the first virtual machine are respectively located in different physical processors, multiple cache failure rates of the first virtual machine are obtained at the same time, and therefore, multiple second virtual machines can be determined according to the multiple cache failure rates.
Optionally, the physical processor Cache may include at least one of a first Level Cache, a second Level Cache, and a third Level Cache, where the third Level Cache is a Last Level processor Cache (LLC), and the LLC is a Last Level buffer of the physical CPU, and is a Cache of memory data to match a high speed of the physical CPU and a low speed of the memory, and thus, the Cache failure rate of the first virtual machine may be the Cache failure rate of the first virtual machine on the LLC.
Optionally, since the second virtual machine occupies more physical processor caches, the physical processor cache capacity that the first virtual machine may occupy is smaller, which further causes the cache failure rate of the first virtual machine to be too high, and affects the performance of the first virtual machine, therefore, the physical processor cache quota of the second virtual machine may be adjusted downward by the cache partitioning technique to reduce the processor cache capacity that the second virtual machine occupies on the physical processor, so that the first virtual machine may use more physical processor caches, for example, the physical processor cache quota of the second virtual machine may be adjusted downward to 90% of the current quota.
Optionally, after the processor cache capacity occupied by the second virtual machine on the physical processor is reduced, contention of the physical processor cache may still exist between the second virtual machine and the first virtual machine, at this time, the step of obtaining the hardware resource parameter of the first virtual machine running on the host may be returned to be executed, so as to re-detect the cache failure rate of the first virtual machine, and when the re-detected cache failure rate is greater than the first threshold, the processor cache capacity occupied by the second virtual machine on the physical processor is reduced again until the cache failure rate of the first virtual machine is less than or equal to the first threshold or the processor cache capacity occupied by the second virtual machine on the physical processor is less than the preset capacity. Optionally, when the processor cache capacity occupied by the second virtual machine on the physical processor is smaller than the preset capacity, if the cache failure rate of the first virtual machine is still greater than the first threshold, the step of migrating the second virtual machine from the first node to the second node of the host to isolate the second virtual machine from the first virtual machine may be performed, so as to improve the performance of the first virtual machine on the premise of ensuring that the performance of the second virtual machine is not too low.
Optionally, after the second virtual machine is determined, the second virtual machine may also be migrated to another physical processor other than the physical processor where the first virtual machine is located to run, or the second virtual machine may also be migrated to another node other than the node where the first virtual machine is located to run, so as to limit resource contention of the second virtual machine and the first virtual machine for the physical processor cache.
In the technical solution disclosed in this embodiment, when the hardware resource parameter includes a cache failure rate, whether hardware resource contention exists is determined according to the cache failure rate and a first threshold, and when the hardware resource contention exists, a processor cache capacity occupied by a second virtual machine on a physical processor is limited, so that the performance of a first virtual machine is improved.
In another embodiment, as shown in fig. 4, on the basis of the embodiment shown in any one of fig. 2 to 3, the step S20 includes:
step S23, when the hardware resource parameter includes the memory bandwidth utilization rate and the memory bandwidth utilization rate is greater than a second threshold, determining a first node where the first virtual machine is located;
and step S24, regarding other virtual machines except the first virtual machine on the first node as the second virtual machine.
In this embodiment, when the hardware resource parameter includes a memory bandwidth utilization rate, it may be determined whether a second virtual machine competing for the memory bandwidth with the first virtual machine exists according to the memory bandwidth utilization rate, and if the detected memory bandwidth utilization rate is greater than a second threshold, it indicates that competition for the memory bandwidth exists, so that a first node where the first virtual machine is located may be determined, and all virtual machines except the first virtual machine on the first node are taken as second virtual machines.
Optionally, each node includes its own memory, and the second virtual machine running on the first node occupies more memory bandwidth, so that the memory bandwidth that can be occupied by the first virtual machine on the first node is smaller, which further causes the memory bandwidth utilization rate of the first virtual machine to be too high, and affects the performance of the first virtual machine. In addition, in the NUMA architecture, the second virtual machine is configured to use the memory of the second node, and the first virtual machine is configured to use the memory of the first node, and each virtual machine uses the local memory of the node, so that the data read-write speed is higher, and the performance of the virtual machine can be improved.
Optionally, after the memory bandwidth utilization rate is greater than the second threshold and the first node where the first virtual machine is located is determined, the first virtual machine may also be scheduled, so as to reduce the influence on other virtual machines on the premise of ensuring the performance of the first virtual machine. Specifically, the hardware resource parameters further include a virtual processor (vcpu) utilization rate, and it is determined whether all or part of virtual processor threads of the first virtual machine can be scheduled to a single node (i.e., the first node) to run according to the virtual processor utilization rate and the number of the first virtual machines on the host, and the virtual processor threads of the first virtual machine are concentrated to the first node to run on the premise of ensuring the performance of the first virtual machine. Optionally, when the virtual processor thread of the first virtual machine is collected to the first node and operated, the virtual processor thread of the first virtual machine migrated to the first node is reallocated to the local memory of the first node to improve data reading data, it should be noted that, when the virtual processor thread of the first virtual machine is migrated, data in the memory corresponding to the virtual processor thread before migration may also be migrated to the reallocated local memory of the first node.
Optionally, when determining whether all the virtual processor threads of the first virtual machine can be scheduled to a single node for operation according to the virtual processor utilization rate and the number of the first virtual machines on the host, three thresholds and the total number of nodes on the host may be obtained, and if the virtual processor utilization rate is less than or equal to the third threshold and the number of the first virtual machines on the host is less than the total number of nodes on the host, it is determined that all the virtual processor threads of the first virtual machine can be scheduled to a single node for operation without affecting the performance of the first virtual machine.
Optionally, when the first node where the first virtual machine is located is determined, if the plurality of virtual processor threads of the first virtual machine are located in different nodes, any one of the plurality of nodes where the virtual processor thread of the first virtual machine is located may be used as the first node. Optionally, since there may be a plurality of first virtual machines on the host at the same time, in order to avoid an influence between the plurality of first virtual machines, a node where no other first virtual machine exists among the plurality of nodes where the virtual processor thread of the first virtual machine is located may be used as the first node.
Alternatively, the third threshold may be determined according to the maximum virtual processor utilization rate available by a single node in the host, for example, when the single node includes 4 processor cores, the maximum virtual processor utilization rate is 400%, and thus 400% may be used as the third threshold, or 300% less than 400% may be used as the third threshold.
Optionally, when the second virtual machine is scheduled, the memory bandwidth quota occupied by the second virtual machine on the first node may also be adjusted downward by a Platform Quality Of Service (PQOS) tool, so as to reduce the memory bandwidth occupied by the second virtual machine on the first node, so that the first virtual machine may use more memory bandwidth, for example, the memory bandwidth quota Of the second virtual machine may be adjusted downward to 90% Of the current quota. It should be noted that, when the utilization rate of the virtual processor is greater than the third threshold, or the number of the first virtual machines on the host is greater than or equal to the total number of the nodes of the host, all the virtual processor threads of the first virtual machine cannot be scheduled to a single node to run, at this time, a mode of reducing the memory bandwidth occupied by the second virtual machine on the first node may be adopted instead of a mode of migrating the second virtual machine from the first node to the second node of the host to avoid resource contention.
Optionally, after reducing the memory bandwidth occupied by the second virtual machine on the first node, there may still be contention of the memory bandwidth between the second virtual machine and the first virtual machine, at this time, the step of obtaining the hardware resource parameter of the first virtual machine running on the host may be returned to be executed, so as to re-detect the memory bandwidth utilization rate of the first virtual machine, and reduce the memory bandwidth occupied by the second virtual machine on the first node again when the re-detected memory bandwidth utilization rate is greater than the second threshold, until the memory bandwidth utilization rate of the first virtual machine is less than or equal to the second threshold or the memory bandwidth occupied by the first node of the second virtual machine is less than the preset bandwidth. Optionally, when the memory bandwidth occupied on the first node of the second virtual machine is smaller than the preset bandwidth, if the memory bandwidth utilization rate of the first virtual machine is still greater than the second threshold, the step of migrating the second virtual machine from the first node to the second node of the host to isolate the second virtual machine from the first virtual machine may be performed, so as to improve the performance of the first virtual machine on the premise that the performance of the second virtual machine is not too low.
In the technical scheme disclosed in this embodiment, when the hardware resource parameter includes a memory bandwidth utilization rate, whether hardware resource contention exists is determined according to the memory bandwidth utilization rate, and when the hardware resource contention exists, the second virtual machine is limited to occupy the memory bandwidth on the first node where the first virtual machine is located, so as to improve the performance of the first virtual machine.
In another embodiment, as shown in fig. 5, on the basis of the embodiment shown in any one of fig. 2 to fig. 4, the method for allocating hardware resources to a virtual machine further includes:
step S40, when receiving an instruction for starting a virtual machine, acquiring the number of virtual processor threads of a third virtual machine corresponding to the instruction for starting the virtual machine;
in this embodiment, in the host running process, the hardware resources of the virtual machine may be specifically allocated when the virtual machine is started, so as to improve the performance of the virtual machine. Specifically, when an instruction for starting the virtual machine is received, the number of virtual processor (vcpu) threads required by a third virtual machine corresponding to the instruction for starting the virtual machine is obtained, so as to determine how to allocate the hardware resources to the third virtual machine according to the number of virtual processor threads required by the third virtual machine. It should be noted that, after the third virtual machine is started, the third virtual machine may be designated as the first virtual machine or determined as the second virtual machine.
Step S50, when the number of the virtual processor threads of the third virtual machine is less than or equal to the number of cores of the physical processor of the third node of the host, starting the third virtual machine, and scheduling all the virtual processor threads of the third virtual machine to the third node for running.
In this embodiment, when the number of the virtual processor threads required by the third virtual machine is less than or equal to the number of cores of the physical processor of the third node of the host, it indicates that all the virtual processor threads of the third virtual machine can be simultaneously run on the third node, and therefore, the third virtual machine can be started, and the third virtual machine is limited to run on the third node through a Control group (cgroup), and when there is a remaining local memory in the third node, the remaining local memory of the third node is preferentially allocated to the third virtual machine. By limiting the third virtual machine to only operate on the third node, the third virtual machine is prevented from being switched back and forth among a plurality of nodes, the overhead caused by node crossing is avoided, and the memory data read-write performance of the third virtual machine is improved by preferentially distributing the local memory to the third node.
Optionally, when the number of the virtual processor threads of the third virtual machine is greater than the number of cores of the physical processors of the third node of the host, the virtual processor threads of the third virtual machine are preferentially allocated to the third node, and the threads that cannot be allocated to the third node are allocated to other nodes on the host.
Alternatively, step S40 and step S50 may be before step S10, or may be after step S10 or step S30.
In the technical scheme disclosed in this embodiment, when the virtual machine is started, the virtual processor thread of the virtual machine is limited to a single node as much as possible, and the local memory of the node is preferentially allocated, so that overhead caused by node crossing is avoided, and the memory data read-write performance of the virtual machine is improved.
In another embodiment, as shown in fig. 6, on the basis of the embodiment shown in any one of fig. 2 to 5, after the step S10, the method further includes:
step S60, when the hardware resource parameter includes the virtual processor utilization rate, if the virtual processor utilization rate is greater than a fourth threshold, scheduling the multiple virtual processor threads of the first virtual machine to run on different nodes of the host, where the fourth threshold is greater than or equal to a third threshold.
In this embodiment, after obtaining the hardware resource parameter of the first virtual machine running on the host, when the hardware resource parameter includes a virtual processor utilization rate, if the virtual processor utilization rate is greater than a fourth threshold, it indicates that the frequency of the physical processor core where the virtual machine is located is high, and due to the limitation of the physical processor power, at most two cores in a single physical processor can reach the highest frequency at the same time, so that when the virtual processor utilization rate is greater than the fourth threshold, there may be a problem that the performance of the first virtual machine is limited by the physical processor power. Optionally, when the plurality of virtual processor threads of the first virtual machine are respectively dispatched to different nodes on the host, the virtual processor threads may be limited to run only on a certain core of the physical processor of the corresponding node, so as to avoid increasing the starting cost of the core when the virtual processor threads are switched back and forth between the plurality of cores, and since the virtual processor threads are always run on a fixed certain core, the core is always in a load state, the core can fully exert a frequency-cut function, and the peak performance of the core and the performance of the first virtual machine are improved. It should be noted that the number of the virtual processor threads of the first virtual machine is at least two, so that the virtual processor threads of the first virtual machine are respectively dispatched to different nodes on the host.
Optionally, because there are a plurality of virtual processor threads of the first virtual machine, the processor utilization rate of each virtual processor thread alone may be obtained, the virtual processor thread whose processor utilization rate is greater than or equal to the preset utilization rate is taken as a full-load thread, and the full-load threads in the first virtual machine are respectively scheduled to different nodes on the host only for the full-load thread, so as to avoid the full-load thread being limited by the power of the physical processor.
Alternatively, the first virtual machine in this embodiment may be each virtual machine running on the host, and is not limited to the important virtual machine specified by the user.
In the technical solution disclosed in this embodiment, when the hardware resource parameter includes a virtual processor utilization rate, if the virtual processor utilization rate is relatively high, multiple virtual processor threads of the first virtual machine are scheduled to different nodes of the host to run, so as to avoid the limitation of the physical processor power, so that the first virtual machine can fully utilize the physical processor, and improve the performance of the first virtual machine.
In yet another embodiment, the embodiments shown in fig. 2 to 6 are specifically illustrated to support the embodiments shown in fig. 2 to 6.
1. For the embodiment shown in fig. 2 to 4:
in the prior art, the virtual machine is still scheduled by the kernel, and the kernel does not sense hardware and resource attributes, which causes a problem of performance degradation of the virtual machine due to hardware resource competition, for example, two virtual machines with large memory access are scheduled to the same node of a NUMA architecture cpu under the condition that linux kernel does not sense resource consumption, and two services both occupy memory bandwidth resources of the other side, thereby causing the memory access performance degradation of the two virtual machines. For example, a virtual machine with a large communication traffic between two cores runs across a node at the same time, which causes competition due to large transmission data volume of QPI/UPI, and further causes performance degradation.
Therefore, the method monitors the consumption of the virtual machine on various resources in the user mode, such as memory bandwidth, cpu utilization Rate, cacheMiss Rate and the like, sets an experience threshold for each index, and adjusts the hardware resource corresponding to the index when a certain index exceeds the experience threshold, for example:
(1) For LLC resources, when the CacheMiss Rate of an important virtual machine exceeds a threshold value, the LLC resource allocation numerical value of other non-important virtual machines sharing the LLC with the important virtual machine is set to be 90% of the existing resources through a Cache partitioning technology, then the CacheMiss Rate of the important virtual machine is continuously monitored, if the value of the LLC resource allocation numerical value is reduced to be below the threshold value, the monitoring is stopped, and otherwise, the adjustment is continuously carried out by utilizing an equal difference method.
(2) When the memory bandwidth utilization rate of the important virtual machine exceeds a threshold value, judging whether the cpu utilization rate exceeds the cpu resource upper limit which can be provided by a single node, if the cpu utilization rate does not exceed the cpu resource upper limit and the number of the important virtual machines is less than the number of nodes, scheduling the important virtual machine to the single node for operation, transferring the memory to the node, and scheduling other virtual machines on the node to another node for operation, so that local memory access can be ensured, and competition of other virtual machines on the memory bandwidth resources is isolated. If the number of the important virtual machines exceeds the threshold value or the number of the nodes exceeds the number of the nodes, limiting the memory bandwidth quota of the non-important virtual machines to be 90% of the default value through a PQOS tool, then continuously monitoring the performance index data of the target virtual machine, and continuously adjusting the quota by using an equal difference method without reducing the performance index data below the threshold value.
2. For the embodiment shown in fig. 5 to 6:
in the prior art, the problem that the performance of a virtual machine is reduced due to the fact that hardware resources are not fully utilized exists: for example, switching a single-threaded cpu-intensive task between multiple cores or even across nodes can bring about the overhead of LLC refresh and deep wake-up of sleeping cpu, and if it is fixed on a core, the local advantage of LLC can be fully exploited. For example, in the database operation service of a 16-core virtual machine, the linux kernel is used for scheduling to distribute the vcpus of the virtual machine on two nodes, but in this way, firstly, the local memory bandwidth resource is not fully utilized, and secondly, the cross-node overhead is introduced, so that the performance of the virtual machine scheduled by the kernel by utilizing two nodes is poorer than that of the virtual machine scheduled by the kernel by utilizing only one node.
Therefore, the method monitors the consumption of the virtual machine on various resources in the user mode, such as memory bandwidth, cpu utilization Rate, cacheMiss Rate and the like, sets an experience threshold for each index, and adjusts the hardware resource corresponding to the index when a certain index exceeds the experience threshold, for example:
(1) For a virtual machine with the vcpu number not exceeding the physical core number on a single node, in order to prevent randomness of linux scheduling and avoid performance problems caused by cross-node access, the virtual machine is limited to run on a certain node through cgroup when the virtual machine is started, and meanwhile, a memory is preferentially distributed on the node, so that overhead caused by cross-node can be avoided, and local memory access is guaranteed.
(2) For a virtual machine which runs with most of vcpus at full load and has a vcpu number greater than 2, a thread at full load should be distributed to multiple node nodes as much as possible to run, and the virtual machine is limited on a certain core to fully exert a frequency-gating function, so that a few cores can reach the highest frequency, and the peak performance is improved.
In summary, in the present application, in a cpu environment of a NUMA architecture, an important virtual machine competes for QPI/UPI resources with other virtual machines, and by distributing competing services to different nodes for operation, performance improvement caused by resource competition can be avoided, and in a more complex scenario, the objective can be achieved by a resource isolation means, for example, a second virtual machine is migrated to isolate the second virtual machine from a first virtual machine, so that efficient utilization of resources is achieved, and performance is improved. According to the method and the device, performance index data of the virtual machine are monitored in a user mode, and then the hardware resource allocation and the virtual machine scheduling are adjusted according to the hardware resources, the set threshold and the set strategy, so that the purpose of fully utilizing the hardware resources is achieved, the resource supply of the important virtual machine is guaranteed, and the performance of the important virtual machine is improved.
Furthermore, referring to fig. 7, an embodiment of the present invention further provides a hardware resource allocation apparatus 100 for a virtual machine, where the hardware resource allocation apparatus 100 for a virtual machine includes:
an obtaining module 110, configured to obtain a hardware resource parameter of a first virtual machine running on a host, where the hardware resource parameter includes at least one of a cache failure rate, a memory bandwidth utilization rate, and a virtual processor utilization rate;
a determining module 120, configured to determine, according to the hardware resource parameter, a second virtual machine that has hardware resource contention with the first virtual machine;
a scheduling module 130, configured to schedule the second virtual machine to limit hardware resources occupied by the second virtual machine.
The hardware resource allocation device for the virtual machine, which is provided by the embodiment of the invention, avoids the competition of the second virtual machine and the first virtual machine for resources by scheduling the second virtual machine, thereby ensuring the hardware resource supply of the first virtual machine and improving the performance of the first virtual machine.
In addition, an embodiment of the present invention further provides a hardware resource allocation device for a virtual machine, where the hardware resource allocation device for a virtual machine includes: a memory, a processor and a virtual machine-oriented hardware resource allocation program stored on the memory and executable on the processor, the virtual machine-oriented hardware resource allocation program, when executed by the processor, implementing the steps of the virtual machine-oriented hardware resource allocation method as described in any one of the above.
In addition, an embodiment of the present invention further provides a computer storage medium, where a hardware resource allocation program for a virtual machine is stored on the computer storage medium, and when being executed by a processor, the hardware resource allocation program for the virtual machine implements the steps of the hardware resource allocation method for the virtual machine according to any one of the above descriptions.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising a … …" does not exclude the presence of another identical element in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) as described above and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (14)

1. A hardware resource allocation method facing to a virtual machine is characterized by comprising the following steps:
acquiring hardware resource parameters of a first virtual machine running on a host, wherein the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate;
determining a second virtual machine having hardware resource competition with the first virtual machine according to the hardware resource parameters;
and scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine.
2. The method for allocating hardware resources facing a virtual machine according to claim 1, wherein the step of determining, according to the hardware resource parameter, a second virtual machine competing with the first virtual machine for hardware resources includes:
when the hardware resource parameters comprise the cache failure rate and the cache failure rate is greater than a first threshold value, determining a physical processor where the first virtual machine is located;
treating, on the physical processor, a virtual machine other than the first virtual machine as the second virtual machine.
3. The virtual machine-oriented hardware resource allocation method of claim 2, wherein the step of scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine comprises:
reducing processor cache capacity occupied by the second virtual machine on the physical processor.
4. The virtual machine-oriented hardware resource allocation method of claim 3, wherein after the step of reducing the processor cache capacity occupied by the second virtual machine on the physical processor, further comprising:
and returning to execute the step of acquiring the hardware resource parameters of the first virtual machine running on the host.
5. The method for allocating hardware resources facing a virtual machine according to claim 1, wherein the step of determining, according to the hardware resource parameter, a second virtual machine competing with the first virtual machine for hardware resources includes:
when the hardware resource parameters comprise the memory bandwidth utilization rate and the memory bandwidth utilization rate is greater than a second threshold value, determining a first node where the first virtual machine is located;
and taking other virtual machines except the first virtual machine on the first node as the second virtual machine.
6. The virtual machine-oriented hardware resource allocation method of claim 5, wherein the step of scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine comprises:
migrating the second virtual machine from the first node to a second node of the host to isolate the second virtual machine from the first virtual machine.
7. The method for allocating hardware resources facing a virtual machine according to claim 6, wherein after the step of determining the first node where the first virtual machine is located when the hardware resource parameter includes the memory bandwidth utilization rate and the memory bandwidth utilization rate is greater than a second threshold, the method further includes:
when the hardware resource parameters further include the virtual processor utilization rate, if the virtual processor utilization rate is less than or equal to a third threshold value and the number of the first virtual machines on the host is less than the number of the nodes of the host, scheduling the virtual processor threads of the first virtual machines to the first nodes for running.
8. The virtual machine-oriented hardware resource allocation method of claim 5, wherein the step of scheduling the second virtual machine to limit the hardware resources occupied by the second virtual machine comprises:
and reducing the memory bandwidth occupied by the second virtual machine on the first node.
9. The virtual machine-oriented hardware resource allocation method of claim 1, wherein before the step of obtaining hardware resource parameters of a first virtual machine running on a host, the method further comprises:
and when receiving an instruction of a specified important virtual machine, taking the virtual machine corresponding to the instruction of the specified important virtual machine on the host as the first virtual machine.
10. The virtual machine-oriented hardware resource allocation method of claim 1, wherein the method further comprises:
when an instruction for starting a virtual machine is received, acquiring the number of virtual processor threads of a third virtual machine corresponding to the instruction for starting the virtual machine;
and when the number of the virtual processor threads of the third virtual machine is less than or equal to the number of cores of the physical processor of the third node of the host, starting the third virtual machine, and scheduling all the virtual processor threads of the third virtual machine to the third node for running.
11. The virtual machine-oriented hardware resource allocation method of claim 1, wherein after the step of obtaining hardware resource parameters of a first virtual machine running on a host, the method further comprises:
when the hardware resource parameters include the virtual processor utilization rate, if the virtual processor utilization rate is greater than a fourth threshold value, scheduling the multiple virtual processor threads of the first virtual machine to run on different nodes of the host, wherein the fourth threshold value is greater than or equal to the third threshold value.
12. A hardware resource allocation apparatus for a virtual machine, the hardware resource allocation apparatus comprising:
the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring hardware resource parameters of a first virtual machine running on a host, and the hardware resource parameters comprise at least one of cache failure rate, memory bandwidth utilization rate and virtual processor utilization rate;
the determining module is used for determining a second virtual machine which is in hardware resource competition with the first virtual machine according to the hardware resource parameters;
and the scheduling module is used for scheduling the second virtual machine so as to limit the hardware resources occupied by the second virtual machine.
13. A hardware resource allocation device for a virtual machine, the hardware resource allocation device comprising: memory, a processor and a virtual machine-oriented hardware resource allocation program stored on the memory and executable on the processor, the virtual machine-oriented hardware resource allocation program when executed by the processor implementing the steps of the virtual machine-oriented hardware resource allocation method according to any one of claims 1 to 11.
14. A computer storage medium, characterized in that the computer storage medium has stored thereon a hardware resource allocation program for a virtual machine, which when executed by a processor implements the steps of the hardware resource allocation method for a virtual machine according to any one of claims 1 to 11.
CN202110569915.4A 2021-05-24 2021-05-24 Hardware resource allocation method, device, equipment and storage medium for virtual machine Pending CN115390983A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110569915.4A CN115390983A (en) 2021-05-24 2021-05-24 Hardware resource allocation method, device, equipment and storage medium for virtual machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110569915.4A CN115390983A (en) 2021-05-24 2021-05-24 Hardware resource allocation method, device, equipment and storage medium for virtual machine

Publications (1)

Publication Number Publication Date
CN115390983A true CN115390983A (en) 2022-11-25

Family

ID=84114113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110569915.4A Pending CN115390983A (en) 2021-05-24 2021-05-24 Hardware resource allocation method, device, equipment and storage medium for virtual machine

Country Status (1)

Country Link
CN (1) CN115390983A (en)

Similar Documents

Publication Publication Date Title
US9442763B2 (en) Resource allocation method and resource management platform
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US8145872B2 (en) Autonomic self-tuning of database management system in dynamic logical partitioning environment
US10019167B2 (en) Non-Uniform Memory Access (NUMA) resource assignment and re-evaluation
US9104498B2 (en) Maximizing server utilization within a datacenter
US20160306680A1 (en) Thread creation method, service request processing method, and related device
KR102028096B1 (en) Apparatus and method for isolation of virtual machine based on hypervisor
KR101356033B1 (en) Hybrid Main Memory System and Task Scheduling Method therefor
JP2008191949A (en) Multi-core system, and method for distributing load of the same
US20160196157A1 (en) Information processing system, management device, and method of controlling information processing system
CN113032101B (en) Resource allocation method of virtual machine, server and computer readable storage medium
KR101140914B1 (en) Technique for controlling computing resources
US10754547B2 (en) Apparatus for managing disaggregated memory and method thereof
CN110795323A (en) Load statistical method, device, storage medium and electronic equipment
CN114389955A (en) Embedded platform heterogeneous resource pooling management method
US8447951B2 (en) Method and apparatus for managing TLB
US20200142736A1 (en) Computer processing system with resource optimization and associated methods
WO2016202154A1 (en) Gpu resource allocation method and system
US20120042322A1 (en) Hybrid Program Balancing
CN115390983A (en) Hardware resource allocation method, device, equipment and storage medium for virtual machine
CN113010453A (en) Memory management method, system, equipment and readable storage medium
CN108255601B (en) Method and device for allocating LLC resources
KR101952221B1 (en) Efficient Multitasking GPU with Latency Minimization and Cache boosting
CN114510324B (en) Disk management method and system for KVM virtual machine with ceph volume mounted thereon
CN115794450B (en) Micro-kernel system service-oriented parallelism optimization method, system and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination