CN106462446A - Selecting a host for a virtual machine using a hardware multithreading parameter - Google Patents

Selecting a host for a virtual machine using a hardware multithreading parameter Download PDF

Info

Publication number
CN106462446A
CN106462446A CN201580024412.1A CN201580024412A CN106462446A CN 106462446 A CN106462446 A CN 106462446A CN 201580024412 A CN201580024412 A CN 201580024412A CN 106462446 A CN106462446 A CN 106462446A
Authority
CN
China
Prior art keywords
computer system
hardware
host computer
cpu
vcpu
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.)
Granted
Application number
CN201580024412.1A
Other languages
Chinese (zh)
Other versions
CN106462446B (en
Inventor
J·W·特纳
J·W·克洛珀
K·L·亨德森
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Priority claimed from US14/297,707 external-priority patent/US9400672B2/en
Priority claimed from US14/297,724 external-priority patent/US9304805B2/en
Priority claimed from US14/297,677 external-priority patent/US9384027B2/en
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority claimed from PCT/IB2015/054229 external-priority patent/WO2015186088A1/en
Publication of CN106462446A publication Critical patent/CN106462446A/en
Application granted granted Critical
Publication of CN106462446B publication Critical patent/CN106462446B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/46Multiprogramming arrangements
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

A cloud manager monitors available resources on host computer systems, including a number of hardware threads supported by CPUs on the host computer systems. The cloud manager receives a request to provision a virtual machine (VM) that includes a hardware multithreading parameter that specifies the amount of hardware multithreading required on the host computer system. The cloud manager then selects a host computer system for the VM taking the hardware multithreading parameter into consideration.

Description

Main frame is selected using hardware multithreading parameter for virtual machine
Technical field
The disclosure broadly relate to host computer system dispose virtual machine, and more particularly, to by using Hardware multithreading parameter to select main frame for virtual machine.
Background technology
In cloud environment, cloud manager is to host computer system deployment virtual machine to create virtual server.Typically, Cloud manager receives request, and the request designated virtual machine image is for the requirement of system resource (such as, memorizer, disk and CPU). Cloud manager determines the available host computer system with required system resource then, selects in available host computer system One, and the host computer system by deploying virtual machine to the selection.
OpenStack be for setting up the open source software of private and public cloud.In OpenStack, it is referred to as " flavor System resource of the virtual hardware template of (style) " for needed for virtual machine is specified.For example, the flavor in OpenStack can To specify the quantity of memory size, root disk size and virtual cpu for virtual machine.When virtual machine needs to be deployed, Called to execute to cloud manager using the flavor for specifying resource requirement for virtual machine.Cloud manager is found then to be had One or more host computer system for the resource that specifies in flavor, and deploying virtual machine is being met flavor's In host computer system on a host computer system.
The offer of virtual machine can be coordinated host computer system processed by the hardware multithreading in main frame.In prior art In, if hyperthread (hyperthreading) is activated on host computer system, when for virtual machine selection master During machine computer system, it may be considered that the quantity of hardware thread, and virtual cpu is allocated in the case of independent of physical core To hardware thread.If hyperthread is not activated on host computer system, when for virtual machine selection Framework computing Then only consider physical processor core during machine system, and virtual cpu is only when VM is in selected or when being supplied from above, quilt Distribute to physical processor core.Modern processors frame using such as POWER (which includes multiple hardware threads in each core) Structure, is as a result that the use of process resource is very insufficient.
When processing with isolated nuclei, the supply of virtual machine can be complicated further.Separate core processor and refer to CPU Core can be separated into multiple daughter nucleus, and which can each include multiple hardware threads, and wherein daughter nucleus is for guest operation system Core is shown as system.For example, support that the core with the isolated nuclei of 8 hardware threads can be separated into 4 daughter nucleus, per height Core supports 2 hardware threads.It is dynamic that isolated nuclei is enabled, it means that separation can in host operating system programmably Change.It is right that the processor for separating core processor with do not have isolated nuclei is not distinguished by known cloud manager by any way Treat.As a result, it is known that cloud manager provide virtual machine when may not recognize that using separate core processor advantage.
Content of the invention
According to first aspect, there is provided a kind of device, including:At least one processor;It is coupled at described at least one The memorizer of reason device;The resident cloud manager in which memory and by least one computing device, the cloud pipe Reason device includes:Main frame MA monitoring agency, determines available CPU's in multiple main frames computer system that virtual machine can be deployed to Quantity, and also determine that the hardware thread quantity that is supported by each CPU on the plurality of host computer system;And main frame Selection mechanism, receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter, the wherein Selection of chiller Mechanism selects have the CPU number of the hardware thread quantity for meeting VM request including in the plurality of host computer system The host computer system of amount.
According to second aspect, there is provided a kind of selection by least one computing device is for disposing the main frame of virtual machine The computer implemented method of computer system, methods described includes:Determine that the multiple main frames that virtual machine can be deployed to are calculated The quantity of the available CPU in machine system;Determine the hardware thread that is supported by each CPU on the plurality of host computer system Quantity;Receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter;And select the plurality of main frame Including in computer system has the host computer system of multiple CPU of the hardware thread quantity for meeting VM request.
The present invention may be implemented as computer program.
According to preferred implementation, cloud manager monitors the available resources on host computer system, including Framework computing The hardware thread quantity that is supported by CPU in machine system.Cloud manager receives the request of supply virtual machine (VM), and the request includes The hardware multithreading parameter of the quantity of the hardware multithreading needed in given host computer system.Then cloud manager is by examining Hardware multithreading parameter is considered to select host computer system for VM.
According to one embodiment there is provided a kind of solution for placing virtual cpu by using hardware multithreading parameter Scheme.
According to an embodiment, the disclosure relates generally to deploying virtual machine to host computer system, and more It is related to, by using hardware multithreading parameter, virtual cpu is deployed to host computer system body.
According to one embodiment there is provided a kind of multi-thread for hardware used in there is the main frame for separating core processor Journey parameter is supplying the solution of virtual cpu.
According to an embodiment, the disclosure relates generally to deploying virtual machine to host computer system, and more It is related to dispose virtual cpu to the main frames for including one or more separation core processors by using hardware multithreading parameter body Computer system.
According to one embodiment there is provided a kind of device, including:At least one processor;It is coupled to described at least one The memorizer of individual processor;The resident cloud manager in which memory and by least one computing device, institute Stating cloud manager includes:Main frame MA monitoring agency, determine in multiple main frames computer system that virtual machine can be deployed to can With the quantity of CPU, and also determine that the hardware thread quantity that is supported by each CPU on the plurality of host computer system; Selection of chiller mechanism, receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter, the wherein main frame Selection mechanism selects including with the hardware thread quantity for meeting VM request in the plurality of host computer system The host computer system of multiple CPU;And virtual cpu (vCPU) placement mechanism, using the hardware multithreading parameter in choosing Multiple virtual cpus (vCPU) are placed on the host computer system that selects.
According to one embodiment there is provided a kind of by least one computing device in host computer system The computer implemented method of upper deployment virtual machine, methods described includes:Determine the multiple main frames meter that virtual machine can be deployed to The quantity of the available CPU in calculation machine system;Determine the hardware lines that is supported by each CPU on the plurality of host computer system Number of passes amount;Receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter;Select the plurality of main frame meter Including in calculation machine system has the host computer system of multiple CPU of the hardware thread quantity for meeting VM request;With And multiple virtuality vCPU are placed using the hardware multithreading parameter on the host computer system for selecting.
According to one embodiment there is provided a kind of computer implemented method by least one computing device, institute Method is stated for multiple virtual cpus (vCPU) are placed on host computer system, methods described includes:Determine the quantity of CPU, The amount of memorizer, and the amount of available disk space in the multiple main frames computer system of virtual machine can be disposed;Determine described The quantity of the hardware thread that each CPU in multiple main frames computer system is supported;Receiving includes the virtual machine of herein below (VM) ask:Specify the storage requirement of the minimum of the memorizer of the VM;The disk demand of the minimum of the disk of specified VM;With And cpu demand, which specifies quantity and the hardware multithreading parameter for the virtual cpu of the VM, the wherein hardware multithreading First value of parameter indicates that hardware multithreading is closed, and the second value of the hardware multithreading parameter indicates hardware thread quantity Numerical value, and the 3rd value of the hardware multithreading parameter indicates that the host computer system of selection is not consider hardware Thread is selected in the case of being on or off on the host computer system for selecting;Select the plurality of master Including in machine computer system has a host computer of multiple CPU of the hardware thread quantity for meeting VM request System;And using the hardware multithreading parameter, the plurality of vCPU is placed on selected host computer in the following way In system:When the hardware multithreading parameter indicates that hardware multithreading is closed, by each vCPU in the VM is placed On different physical core in selected host computer system;When hardware multithreading parameter indicates hardware thread quantity, by VM In each vCPU be placed on the different hardware thread in selected host computer system.
According to one embodiment there is provided method as described in epimere, also includes to join by using hardware multithreading VM is sized by number.
According to one embodiment there is provided a kind of device, including:At least one processor;It is coupled to described at least one The memorizer of individual processor;The resident cloud manager in which memory and by least one computing device, described Cloud manager includes:Main frame MA monitoring agency, determines:The available CPU that can dispose in the multiple main frames computer system of virtual machine Quantity;The hardware thread quantity that each CPU on the plurality of host computer system is supported;And it is directed to the plurality of master Whether each CPU in machine computer system enables isolated nuclei;Selection of chiller mechanism, receiving includes the virtual machine of the following (VM) ask:Virtual cpu quantity;And hardware multithreading parameter;Wherein the Selection of chiller mechanism selects the plurality of main frame Multiple CPU for including with hardware thread quantity in computer system and meet the number of virtual cpu in VM request The host computer system that the isolated nuclei of amount and hardware multithreading parameter is arranged.
According to one embodiment there is provided a kind of by least one computing device in host computer system The upper computer implemented method for placing multiple virtual cpu (vCPU), methods described includes:Determine and can dispose the multiple of virtual machine Available CPU quantity on host computer system;Determine the hardware that each CPU on the plurality of host computer system is supported The quantity of thread;Determine whether each CPU on the plurality of host computer system enables isolated nuclei, and if it is, Determine the subset quantity of each core;Receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter;And Selecting the multiple CPU for including with hardware thread quantity in the plurality of host computer system and meet the VM please The host computer system that the isolated nuclei of the quantity of the virtual cpu in asking and hardware multithreading parameter is arranged.
According to one embodiment there is provided a kind of computer implemented method by least one computing device, institute Method is stated for multiple virtual cpus (vCPU) are placed on host computer system, methods described includes:Determine the quantity of CPU, The amount of memorizer, and the amount of available disk space in the multiple main frames computer system of virtual machine can be disposed;Determine described The quantity of the hardware thread that each CPU in multiple main frames computer system is supported;Determine the plurality of host computer system On each CPU whether enable isolated nuclei;Receiving includes virtual machine (VM) request of herein below:Specify the memorizer of the VM Minimum storage requirement;The disk demand of the minimum of the disk of specified VM;And cpu demand, which is specified for the VM The quantity of virtual cpu and hardware multithreading parameter, the first value of the wherein hardware multithreading parameter indicates hardware multithreading It is closed, the second value of the hardware multithreading parameter indicates the numerical value of hardware thread quantity, and hardware multithreading ginseng 3rd value of number indicates that the host computer system of selection is not consider hardware thread in the Framework computing for selecting Selected in the case of being on or off in machine system;Including the multiple CPU with hardware thread quantity and satisfaction The host computer system that the quantity of virtual cpu and the isolated nuclei of hardware multithreading parameter in the VM request is arranged; And arranged using the isolated nuclei of the hardware multithreading parameter and the host computer system of selection in the following way, will The plurality of vCPU is placed on selected host computer system:When the hardware multithreading parameter indicates hardware multithreading closing When, by each vCPU in the VM is placed on the different physical core in selected host computer system;When hardware is many The isolated nuclei of thread parameter instruction hardware thread quantity and selected computer system is arranged when being activated, by each in VM VCPU is placed on the different hardware thread in selected host computer system.
According to an embodiment, cloud manager monitors the available resources on host computer system, including by main frame meter The hardware thread quantity that CPU in calculation machine system is supported.Cloud manager receives the request of supply virtual machine (VM), and the request includes Specify the hardware multithreading parameter that hardware multithreading whether is allowed on host computer system.Then cloud manager is by consideration Hardware multithreading parameter selects host computer system for VM.Then by using hardware multithreading parameter, VM is placed on selected On host computer system.
According to an embodiment, cloud manager monitors the available resources on host computer system, including Framework computing Whether the hardware thread quantity that is supported by CPU in machine system and CPU enable isolated nuclei.Cloud manager receives supply virtual machine (VM) request, the request includes to specify the hardware multithreading for whether allowing hardware multithreading on host computer system to join Number.Then, cloud manager is arranged by considering hardware multithreading parameter, the hardware thread of CPU support and isolated nuclei, to select for VM Select host computer system.Then by using hardware multithreading parameter, VM is placed on selected host computer system.Knot Fruit be more effectively using the cpu resource in the main frame of virtual machine.
According to describing in greater detail below as shown in drawings, foregoing and other feature and advantage will be apparent.
Description of the drawings
Accompanying drawing hereafter is will refer to, and embodiments of the present invention is described only by means of way of example.Similar accompanying drawing represents Represent similar element:
Fig. 1 is the block diagram of the cloud computing node according to a preferred embodiment of the present invention;
Fig. 2 is the block diagram of the cloud computing environment according to a preferred embodiment of the present invention;
Fig. 3 is the block diagram of the level of abstraction model layer according to a preferred embodiment of the present invention;
Fig. 4 is the block diagram of some features for illustrating the cloud manager according to a preferred embodiment of the present invention;
Fig. 5 is the block diagram for illustrating some features according to the cloud VM of a preferred embodiment of the present invention request;
Fig. 6 be according to a preferred embodiment of the present invention for being registered in potential host computer system system Available resources cloud manager method flow chart;
Fig. 7 be according to the cloud manager of a preferred embodiment of the present invention in order to supply on host computer system The flow chart of the method for VM;
Fig. 8 is the block diagram of the x86 double-core CPU of prior art;
Fig. 9 is flow chart of the cloud manager in order to the art methods for VM request selecting main frame;
Figure 10 is to be shown in prior art cloud VM request the block diagram for how specifying cpu demand;
Figure 11 is the potential main frame meter for illustrating three x86 dual core processors according to a preferred embodiment of the present invention The block diagram of calculation machine system;
Figure 12 be according to potential in the illustrating including being allocated to Figure 11 of a preferred embodiment of the present invention The block diagram of the virtual machine of the vCPU of main frame;
Figure 13 is the flow chart for being shown on the physical core in host computer system the art methods for placing vCPU;
Figure 14 is the six core CPU of Power8 for illustrating two in six cores according to a preferred embodiment of the present invention Framework block diagram;
Figure 15 be according to a preferred embodiment of the present invention for selected using multithreading parameter main frame and The flow chart of the method that the vCPU in control main frame is placed;
Figure 16 is quantity and the hardware multithreading parameter including vCPU according to a preferred embodiment of the present invention Example cpu demand;
Figure 17 is the first sample cpu demand including hardware multithreading parameter according to the preferred embodiment of the present invention;
Figure 18 shows the potential Power8 master of the cpu demand for meeting in Figure 17 according to the preferred embodiment of the present invention Machine;
Figure 19 shows the second sample CPU need including hardware multithreading parameter according to the preferred embodiment of the present invention Ask;
Figure 20 shows the potential Power8 master of the cpu demand for meeting in Figure 19 according to the preferred embodiment of the present invention Machine;
Figure 21 shows the 3rd sample CPU need including hardware multithreading parameter according to the preferred embodiment of the present invention Ask;
Figure 22 shows the potential Power8 master of the cpu demand for meeting in Figure 21 according to the preferred embodiment of the present invention Machine;
Figure 23 shows the 4th sample CPU need including hardware multithreading parameter according to the preferred embodiment of the present invention Ask;
Figure 24 shows the potential Power8 master of the cpu demand for meeting in Figure 23 according to the preferred embodiment of the present invention Machine;
Figure 25 is to include the CPU need of hardware multithreading parameter according to the preferred embodiment of the present invention for selecting to meet The flow chart of the method for the main frame that asks;
Figure 26 is the flow chart of the method for placing vCPU using hardware multithreading parameter on selected host computer system;
Figure 27 is the host-level statistics for being shown for each potential main frame collection according to the preferred embodiment of the present invention Block diagram;
Figure 28 is can be realized in OpenStack flavor according to illustrating for the preferred embodiment of the present invention to refer to Determine the block diagram of the extra specification of hardware multithreading parameter;
Figure 29 is to execute to be sized the side that (resize) is operated for the existing VM to may include hardware multithreading parameter The flow chart of method;
Figure 30 shows the block diagram of the framework of the six core CPU of Power8 using isolated nuclei, it illustrates in six cores Two;
Figure 31 is the sample cpu demand of the number and hardware multithreading parameter for including vCPU;
Figure 32 is the first sample cpu demand for including hardware multithreading parameter;
Figure 33 shows the potential Power8 main frame of the cpu demand for meeting in Figure 32;
Figure 34 shows the second sample cpu demand including hardware multithreading parameter;
Figure 35 shows the potential Power8 main frame of the cpu demand for meeting in Figure 34;
Figure 36 shows the 3rd sample cpu demand including hardware multithreading parameter;
Figure 37 shows the potential Power8 main frame of the cpu demand for meeting in Figure 36;
Figure 38 shows the 4th sample cpu demand including hardware multithreading parameter;
Figure 39 shows the potential Power8 main frame of the cpu demand for meeting in Figure 38;
Figure 40 is to meet the main frame of cpu demand and responsible method for selection when main frame has isolated nuclei Flow chart, the cpu demand includes hardware multithreading parameter;
Figure 41 is the block diagram for illustrating filter, and the filter is used for can use when hardware multithreading parameter is arranged to 4 or 8 In the main frame for filtering out enabled isolated nuclei pattern;And
Figure 42 be for using hardware multithreading parameter in selected host computer system when main frame has isolated nuclei The flow chart for placing vCPU and responsible method on system.
Specific embodiment
Cloud manager monitors the available resources on host computer system, including by by CPU on host computer system The isolated nuclei whether multiple hardware threads that supports and CPU enable.Cloud manager receives the request of supply virtual machine (VM), should Virtual machine includes hardware multithreading parameter, and whether the hardware multithreading parameter specifies on host computer system, allow hardware many Thread (or in one embodiment, the quantity of the hardware multithreading needed on host computer system).Then, Yun Guan Reason device is arranged by considering hardware multithreading parameter, the hardware thread that is supported by CPU and isolated nuclei, to select Framework computing for VM Machine system.Then, using hardware multithreading parameter, VM is placed on selected host computer system.As a result it is more effective land productivity With the cpu resource in main frame come for virtual machine.
It is understood in advance that, the although disclosure includes the detailed description with regard to cloud computing, but the technical scheme described in which Realization be but not limited to cloud computing environment, but can be in conjunction with the calculating ring of any other type of currently known or later exploitation Border and realize.
Cloud computing is a kind of service offering pattern, enters for the configurable computing resource pond to sharing accommodating, on demand Network access.Configurable computing resource is can to carry out minimum interaction with regard to energy with minimum management cost or with ISP Rapid deployment and the resource of release, for example, can be network, the network bandwidth, server, process, internal memory, storage, application, virtuality Machine and service.This cloud mode can include at least five features, at least three service models and at least four deployment models.
Feature includes:
Self-help service on demand:The consumer of cloud can be single in the case of it need not artificially be interacted with ISP Aspect automatically disposes the computing capability of server time and the network storage etc. on demand.
Extensive network insertion:Computing capability can be obtained on network by standards body, and this standards body promotes By different types of thin client platform or thick client computer platform, (for example mobile phone, kneetop computer, individual digital are helped Reason PDA) use to cloud.
Resource pool:The computing resource of supplier is included into resource pool and by multi-tenant (multi-tenant) mode service In many heavy users, wherein on demand different actual resources and virtual resource are dynamically distributed and reallocate.Generally, Consumer can not control or even and be unaware of the accurate location of provided resource, but can specify on higher level of abstraction Position (such as country, state or data center), therefore has location independence.
Rapid elasticity:Rapidly, flexiblely (sometimes automatically) computing capability can be disposed, to realize Quick Extended, And can discharge rapidly and carry out rapid drop.In consumer, the available computing capability for disposing often seem be unlimited, And any number of computing capability can be obtained when any.
Measurable service:Cloud system by using be suitable to COS (such as storage, process, bandwidth and any active ues Account number) certain level of abstraction metrology capability, automatically control and optimize resource effectiveness.Can monitor, control and report money Source service condition, is that ISP and consumer both sides provide transparency.
Service model is as follows:
Software services (SaaS):The ability for providing the consumer be using supplier run in cloud architecture should With.Can be set from various client computer by the thin client interface (such as network Email) of such as web browser Standby access is applied.In addition to the limited application configuration specific to user is arranged, consumer neither manages nor controls including net The bottom cloud architecture of network, server, operating system, storage or even single application power etc..
Platform services (PaaS):The ability for providing the consumer with is that deployment consumer creates or obtains in cloud architecture Application, the program design language that these applications exploitings supplier supports makes peace instrument creation.Consumer neither manages nor controls System includes the bottom cloud architecture of network, server, operating system or storage, but the application which is disposed is possessed of control power, To applying hosting environment configuration also may be possessed of control power.
Architecture services (IaaS):The ability for providing the consumer with is that consumer can dispose wherein and run bag Include process, storage, network and other basic calculation resources of any software of operating system and application.Consumer neither manages Do not control the cloud architecture of bottom, but the application to operating system, storage and its deployment is possessed of control power, to the net for selecting Network component (such as host firewall) may be with limited control.
Deployment model is as follows:
Private clound:Cloud architecture is individually for certain operation.Cloud architecture can be managed by the tissue or third party Manage and may reside in the organization internal or outside.
Community Cloud:If cloud architecture is shared and has been supported common interests (such as task mission, peace by stem organization Full demand, policy and close rule consideration) specific community.Community Cloud can be managed by jointly internal multiple tissues or third party Manage and may reside in inside or outside the community.
Public cloud:Cloud architecture is provided to the public or large-scale industrial colony and is had by the tissue for selling cloud service.
Mixed cloud:Cloud architecture is by cloud (private clound, the community Cloud or public cloud) group of two or more deployment models Become, these clouds are still unique entity, but by making data and applying the standardized technique that can transplant or proprietary technology (the cloud burst flow for being for example used for the load balance between cloud shares technology) binds together.
Cloud computing environment is service-oriented, and feature concentrates on the mutual behaviour of Stateless, lower coupling, modularity and the meaning of one's words The property made.The core of cloud computing is the architecture comprising interconnecting nodes network.
With reference now to Fig. 1, which show the block diagram of an example of cloud computing node.The cloud computing node that Fig. 1 shows 100 is only an example of the cloud computing node being suitable for, and the function of embodiment of the present invention and range should not be brought Any restriction.In a word, cloud computing node 100 can be utilized to implement and/or execute above-described any function.
Cloud computing node 100 is with computer system/server 110, and which with other universal or special calculating numerous can be System environment or configuration are operated together.It is well known that being suitable to computing system, the ring for operating together with computer system/server 110 The example of border and/or configuration is included but is not limited to:Personal computer system, server computer system, table top computer system, Thin client, thick client computer, hand-held or laptop devices, based on the system of microprocessor, Set Top Box, programmable consumer electronics produce Product, NetPC Network PC, minicomputer system large computer system and the distributed cloud computing including above-mentioned any system Technological accumulation and inheritance, etc..
Computer system/server 110 can in the computer system executable instruction for being executed by computer system (such as Program module) general linguistic context under describe.Generally, program module can include to execute specific task or realize specifically taking out The routine, program of image data type, target program, component, logic, data structure etc..Computer system/server 110 is permissible Implement in the distributed cloud computing environment for executing task by the remote processing devices of communication network links.In distributed cloud meter Calculate in environment, program module is may be located on the Local or Remote computing system storage medium including storage device.
As shown in figure 1, computer system/server 110 in cloud computing node 100 table in the form of the universal computing device Existing.The component of computer system/server 110 can be included but is not limited to:One or more processor or processing unit 120, system storage 130, connect the bus 122 of different system component (including system storage 130 and processing unit 120).
Bus 122 represents one or more in a few class bus structures, including memory bus or Memory Controller, Peripheral bus, AGP, processor or using the arbitrarily bus-structured local bus in multiple bus structures.Lift For example, these architectures include but is not limited to industry standard architecture (ISA) bus, MCA (MAC) Bus, enhancement mode isa bus, VESA's (VESA) local bus and periphery component interconnection (PCI) bus.
Computer system/server 110 typically comprises various computing systems computer-readable recording medium.These media can be energy Enough arbitrarily obtainable media for being accessed by computer system/server 110, including volatibility and non-volatile media, removable Dynamic and immovable medium.Fig. 1 illustrates an example of removable media, and which includes digital video disc (DVD) 192.
System storage 130 can include the computer of the such as volatibility of firmware 132 or nonvolatile memory form System-readable media.Firmware 132 provides the interface of the hardware of computer system/server 110.System storage 130 may be used also To include the computer system readable media of form of volatile memory, such as random access memory (RAM) 134 and/or height Fast buffer memory 136.It is removable/nonremovable, volatile that computer system/server 110 may further include other Property/nonvolatile computer system storage medium.Citing is only used as, storage system 140 can be used for reading and writing immovable, non- Volatibility magnetizing mediums (Fig. 1 does not show, commonly referred to " hard disk drive ").Although not shown in Fig. 1, it is provided that for can The disc driver that mobile non-volatile magnetic disk (such as " floppy disk ") is read and write, and to may move anonvolatile optical disk (such as CD- ROM, DVD-ROM or other optical mediums) CD drive read and write.In these cases, each driver can pass through one Individual or multiple data media interfaces are connected with bus 122.Memorizer 130 can include at least one program product, the program Product has one group of (for example, at least one) program module, and these program modules are configured to perform each embodiment of the present invention Function, following article is described in detail.
Program/utility 150 with one group of (at least one) program module 42, can store in memory 130, Such program module 152 includes but is not limited to operating system, one or more application program, other program modules and journey Ordinal number evidence, potentially includes the realization of network environment in each or certain combination in these examples.Program module 152 is generally held Function and/or method in row embodiment described in the invention.
Computer system/server 110 can also with one or more external equipments 190 (for example keyboard, sensing equipment, Display 180, disc driver etc.) communication, can also enable a user to and the computer system/server with one or more 110 interaction equipment communications, and/or with enable the computer system/server 110 with other computing devices one or more Any equipment (such as network interface card, modem etc.) communication for being communicated.This communication can pass through input/output (I/ O) interface 170 is carried out.Also, computer system/server 110 can also pass through network adapter 160 and one or more Network (such as LAN (LAN), wide area network (WAN) and/or public network, such as the Internet) communicates.As illustrated, network is suitable Orchestration 160 is communicated with other modules of computer system/server 110 by bus 122.Although it should be understood that in figure is not shown Go out, other hardware and/or software module can be operated together with computer system/server 110, including but not limited to:Micro- generation Code, device driver, redundant processing unit, external disk drive array, RAID (RAID) system, tape drive Dynamic device and data backup storage system etc..
With reference now to Fig. 2, which show exemplary cloud computing environment 200.As illustrated, cloud computing environment 200 is wrapped Include cloud computing consumer using local computing device can communicate therewith one or more cloud computing node 100 of letter, this Ground computing device can be for example personal digital assistant (PDA) or mobile phone 210A, desktop computer 210B, notebook computer 210C and/or Automotive Computer System 210N.Can be in communication with each other between cloud computing node 100.Can be including but not limited to Will in private clound as above, community Cloud, one or more network of public cloud or mixed cloud or combinations thereof Cloud computing node 100 carries out physics or virtual group (not shown).So, the consumer of cloud is without the need in local computing device On safeguard resource just can request that cloud computing environment 200 provide architecture service (IaaS), platform service (PaaS) and/ Or software services (SaaS).It should be appreciated that all kinds of computing devices 210A-N that Fig. 2 shows are only schematically cloud computing Node 100 and cloud computing environment 200 can with any type of network and/or any type of meter that is connected of network addressable Calculation equipment (for example using web browser) communicates.
With reference now to Fig. 3, which show one group of function modeling layer that cloud computing environment 200 (Fig. 2) is provided.First should Understand, component shown in Fig. 3, layer and function are only all schematic, disclosure of the invention and claim not limited to this. As shown in figure 3, providing following layers and corresponding function:
Hardware and software layer 310 includes hardware and software component.The example of nextport hardware component NextPort includes:Main frame, for example SystemSystem;Based on the server of RISC (Reduced Instruction Set Computer) architecture, such as IBM SystemSystem System;IBM System x system;IBM BladeCenter system;Storage device;Network and networking component.The example of component software Attached bag is included:Network application server software, such as IBMApplication server software;Database software, for example IBMDatabase software.(IBM, System z, System p, WebSphere and DB2 are IBM public affairs Take charge of in registered trade mark from all parts of the world).
Virtual level 320 provides a level of abstraction, and this layer can provide the example of following pseudo-entity:Virtual server, void Intend storage, virtual network (including virtual private networks), virtual application and operating system, and virtual client.
In one example, management level 330 can provide following function:Resource provisioning function:There is provided in cloud computing The computing resource of task and the dynamic access of other resources is executed in environment;Metering and pricing function:Right in cloud computing environment The use of resource carries out cost tracing, and provides bill and invoice for this.In one example, the resource can include that application is soft Part is permitted.Security function:Consumer for cloud and task provide authentication, are that data and other resources provide protection.User Door function:It is that consumer and system manager provide the access to cloud computing environment.Service level management function:Cloud meter is provided Distribution and the management of resource is calculated, to meet required service level.SLA (SLA) is planned and fulfils function:For root Preset and supply according to providing to cloud computing resources tomorrow requirement for SLA prediction.Cloud manager 350 is to retouch as discussed The example of the cloud manager that states.Although the cloud manager 350 for illustrating in Fig. 3 is resided in management level 330, cloud manager 350 is also The all ranks shown in Fig. 3 can be crossed over.
Live load layer 340 provides the example of cloud computing environment function in the cards.In this layer, it is possible to provide work The example of load or function includes:Mapping and navigation;Software development and life cycle management;The teaching of Virtual Class is carried For;Data Analysis Services;Trading processing;And mobile desktop.
The present invention can be system, method and/or computer program.Computer program can include have thereon There is the computer-readable recording medium (or medium) of computer-readable program instructions, for making each side of the computing device present invention Face.
Computer-readable recording medium can be tangible device, and which can retain with store instruction for instructing execution equipment Use.Computer-readable recording medium can be such as but not limited to electronic storage device, magnetic storage apparatus, light storage device, Electromagnetism storage device, semiconductor memory apparatus or aforesaid any suitable combination.Computer-readable recording medium more specific The non-exhaustive list of example includes following:Portable computer diskette, hard disk, random access memory (RAM), read only memory (ROM), Erasable Programmable Read Only Memory EPROM read only memory (EPROM or flash memory), static RAM (SRAM), Portable optic disk read-only storage (CD-ROM), digital universal disc (DVD), memory stick, floppy disk, encoding device, for example wherein Record has punched card or bulge-structure in the groove of instruction, and aforesaid any suitable combination.As it is used herein, Computer-readable recording medium is not interpreted as transient signal itself, the electromagnetism of such as radio wave or other Free propagations Ripple, by the electromagnetic wave (for example, light pulse passes through fiber optic cables) of waveguide or the propagation of other transmission mediums or by wire transmission The signal of telecommunication.
Computer-readable program instructions described here can be via network from computer-readable recording medium or outside meter Calculation machine or External memory equipment download to corresponding calculating/processing equipment, and the network is, for example, the Internet, LAN, wide area network Local Area Network and/or wireless network.Network can be wirelessly transferred, router including copper transmission cable, optical delivery fiber, fire prevention Wall, switch, gateway computer and/or Edge Server.Network adapter cards or network in each calculating/processing equipment connect Mouth receives computer-readable program instructions from network, and forwards computer-readable program instructions to be stored in corresponding calculating/process In computer-readable recording medium in equipment.
Computer-readable program instructions for executing the operation of the present invention can be assembly instruction, instruction set architecture (ISA) instruction, machine instruction, machine-dependent instructions, microcode, firmware instructions, condition setup data or source code or target generation Code is with one or more programming language (including the OO programming language of such as Smalltalk, C++ etc., and such as " C " The conventional process programming language of programming language or similar programming language etc) any combinations write.Computer-readable program Instruction can be executed completely on the computer of user, partly executed on the computer of user, executed as independent software package, Part is executed on the computer of user, and part executes on the remote computer, or completely in remote computer or server Upper execution.In the case of the latter, remote computer can pass through any kind of network (including LAN (LAN) or wide area Net (WAN)) computer of user is connected to, or may be coupled to outer computer for example, carried by using Internet service The Internet for business).In some embodiments, including such as Programmable Logic Device, field programmable gate array (FPGA) Or the electronic circuit of programmable logic array (PLA) can be executed by using the status information of computer-readable program instructions Computer-readable program instructions with by electronic circuit personalization, so as to execute embodiments of the present invention.
Here refers to the method according to embodiment of the present invention, the flow chart of device (system) and computer program And/or block diagram describes each aspect of the present invention.It should be appreciated that each block of flow chart and/or block diagram and flow chart and/or The combination of the block in block diagram can be realized by computer-readable program instructions.
These computer-readable program instructions can be provided to general purpose computer, special-purpose computer or other programmable numbers According to processing meanss processor to produce machine so that create via the processor of computer or other programmable data processing units Build the device of the function/action that specifies in the one or more square frames for flowchart and/or block diagram.These computers can Reader instruction can also be stored in a computer-readable storage medium, and which can indicate computer, and programmable data processes dress Put and/or other equipment is worked in a specific way so that the computer-readable recording medium of the instruction that is wherein stored with includes to realize The manufacture of the instruction of the aspect of the function/action that specifies in one or more frames of flow chart and/or block diagram.
Computer-readable program instructions can also be loaded into computer, other programmable data processing units or other equipment On, so that in computer, executing series of operation steps on other programmable devices or other equipment, to produce computer reality The existing instruction flowchart for causing to execute on computer, other programmable devices or other equipment and/or the one of block diagram Function/the action that specifies in individual or multiple square frames.
The system that flow chart and block diagram in accompanying drawing shows the various embodiments according to the present invention, method and computer The framework in the cards of program product, function and operation.At this point, each block in flow chart or block diagram can represent and refer to The module of order, section or part, which includes the one or more executable instructions for realizing the logic function that specifies.Replace at some Can not occur according to the order shown in accompanying drawing for the function of in embodiment, marking in frame.For example, depending on involved Function, two for continuously illustrating block can essentially be substantially while execute, or these blocks sometimes can be in reverse order Execute.Will additionally note that, each frame in block diagram and/or flow chart illustration and block diagram and/or the frame in flow chart illustration Combination can be realized by the system based on specialized hardware for executing specified function or action, execute specific use hardware and calculating The combination of machine instruction.
Fig. 4 shows a suitable example of the cloud manager 350 shown in Fig. 3.Cloud manager 350 includes cloud supply machine Structure 410, which includes resource request interface 420.Resource request interface 420 allows software entity to ask virtuality from cloud manager 350 Machine and without the need for manual intervention.Cloud manager 350 also includes user interface 430, and which allows user to be interacted with cloud manager to execute Any suitable function, including the offer of VM, VM's is destructed, performance evaluation of cloud etc..Resource request interface 420 and user connect Difference between mouth 430 is that user must execute the function of being specified by user manually using user interface 430, and resource please Ask interface 420 can by software entity for ask to provide cloud resource by cloud mechanism 350 and without the need for the input from human user.
Cloud manager 350 also includes the main frame MA monitoring agency for monitoring available resource on potential host computer system 440, thus the available resources that cloud manager 350 will can have on specified resource and the potential host computer system for VM It is compared.Selection of chiller mechanism 450 is allowed based on by the specified resource of the VM for being asked and potential host computer system Available resources be compared, select potential host computer system.VCPU placement mechanism 460 is multi-thread by using hardware Journey parameter, vCPU is placed on selected host computer system.VM is sized mechanism 470 and allows with multi-thread using hardware The mode of journey parameter adjusts the size of existing VM, even if being also such when original VM does not use hardware multithreading parameter.
Fig. 5 shows and can connect via resource request interface 420 or via the user on the cloud organization of supply 410 in Fig. 4 Mouthfuls 430 and the suitable example of cloud VM request 510 submitted to, cloud VM asks 510 in order to ask to be carried by cloud manager 350 For VM.Cloud VM request 510 can include any specification to the demand of resource requirement on VM.The example of suitably demand includes to deposit Memory requirements 520, disk demand 530 and cpu demand 540.Storage requirement 520 specifies the amount of memory needed for VM.Disk demand 530 The amount of the disk needed for specified VM.Cpu demand 540 specifies the quantity of the virtual cpu needed for VM, and also hardware can be specified multi-thread Journey parameter, is discussed in greater detail below.Of course, it is possible to specify other demands not shown in Fig. 5 for VM, such as network is needed Sue for peace any other suitable demand.In the prior art, OpenStack be referred to as the things of " flavor " please as cloud VM Ask, which specifies the minimum essential requirement to the resource on VM.
As shown in fig. 6, method 600 is preferably executed by the main frame MA monitoring agency 440 in Fig. 4, which is in order to monitor potential master Available resources in machine computer system.Determine the available resources on (step 610) potential host computer system and record (step Rapid 620).A kind of known way of implementation method 600 is to determine its available resources using driver inquiry main frame.
With reference to Fig. 7, method 700 starts (step 710) by receiving cloud VM request.Then the resource in cloud VM request is needed Asking (step 720) is compared with available resources on potential host computer system.Note, can be from 620 the step of Fig. 6 Available resources in the daily record of middle establishment in read step 720.Then select that there is the resource requirement for meeting in cloud VM request The main frame (step 730) of resource.Then, VM is deployed on selected host computer system (step 740).
Many modern processors (or CPU) includes multiple process cores.One example of polycaryon processor is shown in Fig. 8 The double-core CPU 810 of x86.X86 double-core CPU 810 includes the first core 820 with two hardware threads 822 and 824 and has Second core 840 of two hardware threads 842 and 844.The presence of the multiple hardware threads on each core can be to host computer Challenge is produced in system supply VM.In the prior art, generally ignore the quantity of the hardware thread in multi-core CPU, only consider thing Reason core.For example, the art methods 900 in Fig. 9 read cloud VM request (step 910), and then selection is asked with cloud VM is met The main frame (step 920) of multiple physical core of the vCPU quantity in asking.The cpu demand 1010 of prior art as shown in Figure 10 refers to Determine the quantity of the virtual cpu (vCPU) in VM, and be an appropriate example of cpu demand 540 shown in Fig. 5.Because for When VM selects main frame, method 900 is only using physical core, so the multiple hardware threads on core are by underutilization, from without utilizing Available cpu resource.The quantity of hardware thread in other prior arts, is considered when the hyperthread of main frame is enabled, and is held Row vCPU does not consider physical core to the placement of hardware thread.This method may cause invalid VM, because a few thing is negative Carry and benefit from using the thread in different IPs, and other live loads are then preferably serviced by thread for same core.
Step 920 in Fig. 9 can include for the host computer system that selects to meet VM request any suitably Criterion or exploration.For example, the quantity of physical core can increase according to some excessive ratio (overcommit ratio) such as 2.0 Plus.Therefore, if main frame has three physical core and can use, the excessive ratio that three physical core are multiplied by 2.0 will cause can use Processor number is 6, it means that can dispose on main frame needs the VM of six vCPU, and can not dispose needs seven vCPU's VM.Will be discussed below a simply example.
Figure 11 represents the potential host computer system of sample including three double-core x86CPU.We assume that this main frame is Through causing the VM1 shown in Figure 12 to run thereon, two in two physical core and CPU2 that the VM1 is deployed in CPU1 First in physical core, as shown in the shade in those cores in Figure 12.We are it is further assumed that the VM2 shown in Figure 12 needs It is deployed.Determine the quantity of available core, be that the core of nine, i.e., six is multiplied by excessive ratio 2 and deducts for the example in Figure 11 Three cores that the VM1 in potential main frame 1 shown in Figure 11 is used.Because VM2 needs two vCPU, and potential main frame 1 With 9 available core, so potential main frame 1 is the effectively potential main frame of the VM2 shown in Figure 12.
Note, by actual for the vCPU independent step for being placed on potential main frame and being independently of selecting the potential main frame for VM Suddenly.With reference to Figure 13, method 1300 starts (step 1310) by reading cloud VM request.Then the vCPU in cloud VM request is placed On physical core (step 1320).In fig. 11, first core of first core of CPU1 and the thread T1 of the second core and CPU2 is cloudy Shadow is illustrated, is had been placed on these three corresponding cores with three vCPU indicating in the VM1 shown in Figure 12.It is noted that It is not static to place.In the different time, run on any hardware thread that vCPU can be on any active nucleus.By making With hyperthread, in three double-cores of distribution, have 12 hardware threads.VM1 needs 3 such threads, and leaves 9 for VM Individual.However, vCPU is assigned to any thread, this might mean that:The work that runs in the operating system thread of shared memory Make to run preferably in the hardware thread of identical vCPU, and the work for running in independent operating system thread preferably exists Run in hardware thread in different core.Therefore, prior art is in the mode for recognizing potential main frame for VM and selected Cause poor efficiency in the mode that VM is run on main frame, this is because VM does not currently consider the core on CPU to the distribution of potential main frame Difference and hardware thread between.
Prior art identification physical processor core or hardware thread, but both can not be identified as virtual cpu and can dispose The entity for arriving.In the case of without hyperthread, single double-core CPU as shown in Figure 8 has two available CPU, its form For two physical core 820 and 840 that vCPU can be deployed to.Using hyperthread, single double-core CPU can be supported more vCPU;However, whether vCPU is by same physical core or the operation of the hardware thread in different IPs not being to determine property.By recognizing VCPU needs to be allocated to multiple hardware threads and not exclusively single physical core or single hardware thread, this disclosure Finer granularity level is created with claim.
When the quantity of hardware thread increases, vCPU is assigned to the problem aggravation of single hardware thread or core.For Fig. 8 With the x86 double-core CPU shown in 11, hyperthread causes two threads of each core.For the processor with more multi-hardware thread, ask Topic becomes readily apparent from.For example, the 6 core CPU 1410 of Power8 for illustrating in Figure 14 is (hard including eight to include the first core 1420 Part thread 1432,1434,1436,1438,1442,1444,1446 and 1448) and the second core 1450 (also include eight hardware Thread 1462,1464,1466,1468,1472,1474,1476 and 1478.Not shown four other cores in fig. 14, but class Two cores shown in being similar to.When the number based on the physical core as shown in the art methods 900 in Fig. 9 selects main frame, A lot of hardware threads can not used.Therefore, if two vCPU are deployed to two cores 1420 and 1450 shown in Figure 14, knot Seven in eight hardware threads that fruit will be wasted on each core.Final result be at any given time point will use only for Two in 16 threads of two cores, this wastes 14 in 16 hardware threads.This means to use Fig. 9 Shown in art methods 900 come using ten six (12.5%) individual available processes resources on two cores in Power8 core In two.Alternatively, if vCPU is distributed to hardware thread when each core has many hardware threads, having needs The VM of the live load of high degree of parallelism and shared memory will by be located at other vCPU identical physical core on rather than point Cloth is on many physical core, and obtains better performance.
Do not make in order to avoid the problem for crossing over the vCPU being distributed on physical core as described by above with reference to Figure 14 perhaps more With the problem of thread, recognize that potential main frame and the new paragon of deployment VM are based on following principle, by using hard in cloud VM request Part multithreading parameter considering hardware thread, the principle be multiple hardware threads that vCPU can be assigned in physical core and not Only physical core core or single hardware thread.This has been come by using the new parameter for being related to hardware multithreading in cloud VM request Become.For the specific example of this paper, the hardware multithreading parameter is referred to as " SMT " parameter, and which represents symmetrical multithreading, and this is For describing the known term of the hardware multithreading on CPU in this area.With reference to shown in Figure 15, method 1500 is by using cloud VM SMT parameter in request and in one embodiment quantity and the isolated nuclei setting with the hardware thread with regard to each core The relevant information of main frame starting, to select host computer system (step 1510).Once have selected host computer system System, when VM is disposed on selected main frame, it is possible to use the identical SMT parameter in cloud VM request arranges decision to make to vCPU (step 1520).In one embodiment, when VM is disposed on selected main frame, with regard to the hardware for being related to each core of main frame The information that the quantity of thread and isolated nuclei are arranged can be used for making the layout of vCPU and determine (step 1520).
Figure 10 shows the prior art cpu demand 1010 for cloud VM request, and which includes to specify the vCPU needed on VM 1020 quantity.Cloud VM request 1610 according to Figure 16 of disclosure herein and claim includes vCPU's 1620 Quantity, but comprise additionally in hardware multithreading (SMT) parameter 1630.The value of SMT parameter can be zero, indicate hardware multithreading quilt Close, or can be the power of numeral 2 for representing hardware lines number of passes.Some examples will be illustrated.With reference to Figure 17, cpu demand 1610A is suitable examples of the cpu demand 1610 shown in Figure 16, and is 2 including 2 vCPU 1720 and with value SMT parameter 1730.For the potential main frame with 6 core CPU 1410 of Power8 as shown in figure 14, the potential main frame will have Using a core of two threads, cause six untapped threads, as shown in figure 18.
The second cpu demand 1610B in Figure 19 is another suitable example of the cpu demand 1610 shown in Figure 16, and And including 2 vCPU 1920 and with the SMT parameter for indicating the pent value of hardware multithreading at 1930.Many in hardware In the case of thread is pent, for the potential main frame with 6 core CPU 1410 of Power8 as shown in figure 14, the potential master Machine will be with two cores, a thread used in each core, cause 14 untapped threads in two cores, such as Figure 20 Shown.Note, when hyperthread is disabled, because the cpu demand 1010 of prior art does not consider to appoint when main frame hyperthread is disabled What hardware multithreading, thus the net result of the potential main frame of the cpu demand 1610B in the Figure 19 with pent SMT parameter Identical with prior art cpu demand 1010 shown in Figure 10.In the prior art, if enabling hyperthread, unpredictable which The hardware thread of individual core will process vCPU.Consideration hardware multithreading can be subtracted by specifying the value for hardware multithreading parameter The quantity of untapped hardware thread on few potential main frame, and can controlling, which vCPU is run on same core.
Example in Figure 16-19 shows that how hardware multithreading parameter provides more controls for how disposing vCPU. For example, if the VM with 2 vCPU will run the operation operated by identical data, it may be desirable to 2 vCPU are by portion Two different hardware threads in same core are affixed one's name to, as shown in the example in Figure 17 and 18, this is because transporting on same core Two threads of row will have very high performance access to the available cache memory of core.If with 2 vCPU's VM will run operation independent of each other, then it may be desirable to 2 vCPU are deployed to two different cores, showing in such as Figure 19 and 20 Shown in example.
The 3rd cpu demand 1610C in Figure 21 is another suitable example of the cpu demand 1610 shown in Figure 16, and And the value including 8 vCPU 2120 and at 2130 is 8 SMT parameter.For with 6 core of Power8 as shown in figure 14 The potential main frame of CPU 1410, the core that potential main frame will have using all eight threads, cause without untapped line Journey, as shown in figure 22.
The 4th cpu demand 1610D in Figure 23 is another suitable example of the cpu demand 1610 shown in Figure 16, and And the SMT parameter with value 4 including 12 vCPU 2320 and at 2330.For with Power8 6 as shown in figure 14 The potential main frame of core CPU 1410, potential main frame will cause 12 with three cores, four threads wherein used in each core Untapped thread, as shown in figure 24.These simple examples show and how to specify firmly in host computer system is selected Part multithreading parameter provides the control to how vCPU is deployed to host computer system.
Notice that the example shown in Figure 17-24 assumes that vCPU can be deployed to each available thread.Above for Fig. 9- 12 discuss " excessive ratio ", and the quantity of CPU is increased some amount.According to disclosure herein and claim, master is selected Similar excessive ratio can be applied in machine computer system.
With reference to Figure 25, method 2500 selects main frame in specified hardware multithreading parameter, as the institute of Figure 16,17,19,21 and 23 Show.Read cloud VM request (step 2510).When SMT parameter be OFF (closing) when (step 2520=is), select have meet cloud The main frame (step 2530) of multiple physical core of the vCPU quantity in VM request.Note, step 2530 is similar to existing in Fig. 9 Step 920 in technical method 900.When SMT parameter is ON (unlatching) (step 2520=is no), select following with meeting Main frame, the number of threads of each core of the main frame meets the quantity in SMT parameter and the quantity of core is met in cloud VM VCPU quantity is divided by the Thread Count (step 2540) that specifies in SMT parameter.This is to select to have to meet in cloud VM request A kind of concrete mode of the main frame of multiple hardware threads of vCPU quantity.Then method 2500 is completed.
Once have selected host computer system, then the vCPU of VM can be placed on selected main frame.With reference to figure Figure 26, when vCPU needs to be placed on selected main frame, method 2600 starts (step 2610).When SMT parameter is for closing When closing (step 2620=is), each vCPU is placed on different physical core (step 2630).When SMT parameter is for opening (step 2620=is no), vCPU can be placed on (step 2640) on the different hardware thread on Same Physical core.Then method 2600 complete.
Using the hardware multithreading parameter in cloud VM request, cloud manager is not only must be known by the CPU in potential main frame Physical core quantity, and the it must also be noted that quantity of thread supported of CPU in potential main frame.This is present to ensure that main frame Single core can support as the cloud VM Thread Count specified of request.Refer again to Fig. 6, it means that determining in step 610 can Not only include to determine available CPU core with resource, and also determine that whether the multiple threads on these CPU core can use.Realize this Point a kind of mode be:A part of as the available resources in the step 610 in Fig. 6 is propped up by host computer system to collect The maximum SMT for holding is arranged.One example of such case illustrates in Figure 27, wherein max_guest_smt represents by the master in Fig. 4 The value that machine MA monitoring agency 440 is collected, to indicate whether potential host computer system supports hardware multithreading.max_guest_ The probable value of smt is 0, represents that the SMT on host computer system is closed, and the power of numeral 2 indicates available hardware on each CPU Thread Count.When all CPU in host computer system are same type, max_guest_smt will be applied to main frame The single value of all CPU in computer system.When host computer system includes the difference of the hardware thread with varying number During the CPU of type, different max_guest_smt values there may be for each CPU in host computer system.
OpenStack helps the expectation topology of given client CPU currently without any existing support.Realize this paper institute A kind of mode of the interpolation of the hardware multithreading parameter of discussion is to add additional specifications to OpenStack flavor, as Figure 28 institute Show.Parameter powerkvm:Smt is the new parameter in OpenStack flavor, the expectation SMT value of its given client VM.Note, The probable value of this parameter is -1, represents " being indifferent to ";Zero, represent SMT closing;Or certain power of numeral 2.By in max_ Guest_smt arranges the ability for including to collect the information with regard to the hardware multithreading on potential main frame and in OpenStack Flavor middle finger periodically hopes that the ability of the hardware multithreading of rank, this disclosure and claim are provided for selecting The host computer system of the potential VM of deployment thereon and the hardware multithreading ability to better profit from host computer system Mode dispose these VM, so as to improve the utilization rate of the cpu resource on host computer system.
Hardware multithreading parameter discussed in this article can be used for VM and be sized operation.Sometimes virtual machine is needed more Many or less resource, therefore can be sized to add or reduce the resource for being deployed to virtual machine.Will be big for VM adjustment A kind of little proper method is to specify an OpenStack flavor, to change the resource allocation to VM.When will be big for VM adjustment Hour, OpenStack flavor can be with powerkvm discussed above:Smt parameter and as shown in figure 28.Figure 29 shows Go out for by adjusted size of for VM method 2900, its VM preferably as shown in Figure 4 is sized mechanism 470 and executes.Read The flavor (step 2910) for being sized operation for existing VM.The flavor for quoting in step 2910 is that have to VM New (that is, adjusted size of) resource allocation flavor.When flavor does not include SMT parameter (step 2920=is no), The SMT parameter of VM is arranged to OFF (step 2930).When flavor includes SMT parameter (step 2920=is), when SMT joins When the value of number is OFF or " being indifferent to " (step 2940=is), the SMT parameter of VM is arranged to OFF (step 2930).When When SMT in flavor has the value of 2 power (step 2940=is no), the SMT parameter of VM is arranged to specify in flavor SMT value (step 2950).Then method 2900 terminates.Method 2900 actually allows " improvement " existing VM to use SMT The mode of parameter.
6 core CPU of Power8 supports daughter nucleus, it means that when isolated nuclei is enabled, and eight threads in each core can be by It is separated into the daughter nucleus of two threads.Figure 30 illustrates with the 6 core CPU 3010 of Power8 that isolated nuclei is enabled, with include by Be divided into the first core 3020 of four daughter nucleus 3022,3024,3026 and 3028, and be divided into four daughter nucleus 3052,3054, 3056 and 3058 the second core 3050.Four other cores not shown in Figure 30, but two cores shown in being analogous to.Each daughter nucleus With two hardware threads, as shown in figure 30.By each core is divided into daughter nucleus, daughter nucleus rather than core can be assigned to void Plan machine, this causes to save untapped hardware thread in a large number.
When there is isolated nuclei main frame, cloud manager can determine whether the main frame for VM supports isolated nuclei, and this will be Favourable.With reference to Figure 31, cpu demand 3110 is preferably a part for the request of the cloud VM shown in Fig. 5 510.Cpu demand 3110 is advised Determine quantity and the hardware multithreading parameter 3130 of vCPU 3120.Examples below shows how isolated nuclei affects the choosing of main frame Select and place vCPU on the host.
In Figure 32, cpu demand 3110A is suitable examples of the cpu demand 3110 shown in Figure 31, and including 2 Individual vCPU 3220 and with value for 2 SMT parameter 3230.For with as shown in figure 30 with enabling isolated nuclei The potential main frame of 6 core CPU 3010 of Power8, the daughter nucleus that the potential main frame will have using two threads, cause permissible Three daughter nucleus for being used by other VM, as shown in figure 33.
The second cpu demand 3110B in Figure 34 is another suitable example of the cpu demand 3110 shown in Figure 31, and And it is set to the SMT parameter of the value of OFF including 2 vCPU 3420 and at 3430.In the case of hardware multithreading is closed, For the potential main frame with the as shown in figure 30 6 core CPU 3010 of Power8 for enabling isolated nuclei, the potential main frame will have There are two daughter nucleus, a thread used in each daughter nucleus, cause a untapped thread in each daughter nucleus, and can be by other Two daughter nucleus that VM is used, as shown in figure 35.
The 3rd cpu demand 3110C in Figure 36 is another suitable example of the cpu demand 3110 shown in Figure 31, and And including 8 vCPU 3620 and at 3630, there is the SMT parameter being worth for 2.For have value for 2 hardware multithreading parameter, For the potential main frame with the as shown in figure 30 6 core CPU 3010 of Power8 for enabling isolated nuclei, potential main frame will be with four Individual daughter nucleus, two threads used in each daughter nucleus, cause not using without thread, as shown in figure 37.In implementing at one, Whole eight vCPU can be placed on whole eight threads (four daughter nucleus) of same physical core.Certainly, alternatively, Figure 37 In four daughter nucleus can be placed on two or more physical core.
The 4th cpu demand 3110D in Figure 38 is another suitable example of the cpu demand 3110 shown in Figure 31, and And including 12 vCPU 3820 and at 3830 with value for 2 SMT parameter.Join for having hardware multithreading of the value for 2 Number, for the potential main frame with the as shown in figure 30 6 core CPU 3010 of Power8 for enabling isolated nuclei, the potential main frame will With six daughter nucleus, two threads wherein used in each daughter nucleus, and the thread without any daughter nucleus are not used, such as Figure 39 Shown.In implementing at one, eight in 12 vCPU all eight threads (four that can be placed on Same Physical core Individual daughter nucleus) on, and remaining four vCPU can be placed on four threads in different physical core two daughter nucleus.When So, in replacement scheme, six daughter nucleus in Figure 39 can be placed on three or more physical core.
All examples of the cpu demand in Figure 32,34,36 and 38 are used for the situation that main frame enables isolated nuclei.Work as main frame When there is the isolated nuclei for disabling, in addition to main frame is by the setting disabled with isolated nuclei, as a result similar to figure 17 above -24 Shown in example.
Example in Figure 32,36 and 38 all has the SMT parameter that value is for 2.As Power8 daughter nucleus includes two threads, because This in SMT parameter, specifies two threads to provide most effectively places vCPU on Power8CPU.It is noted that SMT parameter can Can be more than the Thread Count on daughter nucleus.For example, if in Figure 36 3630 at SMT parameter be arranged to value 4, have two lines The main frame of the daughter nucleus of journey will be unsatisfactory for request.Therefore, when SMT arranges the Thread Count for exceeding for daughter nucleus, there is no isolated nuclei Main frame be not potential main frame.
With reference to Figure 40, method 4000 shows the selection of the host computer system that asks using cloud VM, and cloud VM is asked Including considering the hardware multithreading parameter for whether enabling isolated nuclei on host computer system.Method 4000 is preferably by scheming Selection of chiller mechanism 450 shown in 4 executes.Read cloud VM request (step 4010).When SMT close (step 4020=is) and Potential main frame enabled isolated nuclei (step 4030=is) when, if potential main frame have meet cloud VM request in vCPU number Multiple daughter nucleus of amount then can be selected potential main frame (step 4040).When SMT closes (step 4020=is) and potential main frame When having disabled isolated nuclei (step 4030=is no), if potential main frame has multiple physics of the vCPU quantity for meeting in cloud VM Core, then can select potential main frame (step 4050).When SMT is that ON (step 4020=is no) and potential main frame are enabled and separated During core (step 4060=is), if the hardware thread number of daughter nucleus can meet specify in SMT parameter hardware lines number of passes, And the number of daughter nucleus can meet the quantity of the quantity divided by the hardware thread that specifies in SMT parameter of the vCPU in cloud VM request (step 4070), then can select potential main frame.When SMT is for ON (step 4020=is no) and potential main frame has dividing for disabling During freestone (step 4060=is no), such as the quantity of the hardware thread of pit can meet the hardware thread that specifies in SMT parameter Quantity and if the quantity of physical core can meet cloud VM request in vCPU quantity hard divided by specified in SMT parameter The quantity of part thread, then can select potential main frame (step 4080).Note, preferably for each potential main frame repetition methods 4000, this can form potential main frame pond, it is possible to use any suitable standard or exploration carry out from wherein selection main frame Individual.For example, it is possible to select main frame rather than the main frame with disabling isolated nuclei with the isolated nuclei for enabling, now ask in VM Cause the more efficient use of CPU core and thread.Method 4000 shows hardware multithreading parameter and from main frame with regard to each The isolated nuclei of core is arranged and how the information of hardware thread provide more preferable control to the selection of host computer system, and this will lead Cause more effectively to place vCPU.
As shown in figure 41, it is possible to use filter PowerKVMSMTFilter so that when the feelings in SMT=4 or SMT=8 When asking VM under condition, cloud manager filters out the main frame of enabled isolated nuclei pattern.This filter can help cloud manager Quickly reduce the potential host number of VM.
With reference to Figure 42, when vCPU needs to be placed on selected main frame, method 4200 starts (step 4210).Side The vCPU placement mechanism 460 preferably as shown in Figure 4 of method 4200 is executed.When SMT closes (step 4220=is) and in main frame On when enabling isolated nuclei (step 4230=is), vCPU is placed on different daughter nucleus (step 4240).When SMT closes (step Rapid 4220=is) and main frame on when disabling isolated nuclei (step 4230=is no), vCPU is placed on different physical core (step Rapid 4250).When SMT opens (step 4220=is no) and enables isolated nuclei on main frame (step 4260=is), vCPU quilt It is placed on (step 4270) on the thread of daughter nucleus.When SMT is for ON (step 4220=is no) and disabling isolated nuclei on main frame (step 4260=is no), vCPU is placed on the thread of Same Physical core (step 4280).Note, if the quantity of vCPU is super The number of threads that crosses in physical core, then vCPU will be placed on for all vCPU provide requirement hardware thread multiple cores On.Method 4200 is illustrated how by specified hardware multithreading parameter and using the information for arranging with regard to isolated nuclei to Framework computing The placement of the vCPU in machine system provides more preferable control.
In order to support to place VM, cloud manager by considering the isolated nuclei in cloud VM request and hardware multithreading parameter The quantity of the physical core in the CPU in potential main frame must not only be known, and it must also be noted that propped up by the CPU in potential main frame Whether isolated nuclei is enabled in the quantity of the thread that holds, and potential main frame.Refer again to Fig. 6, it means that true in step 610 Whether determining available resources not only includes to determine available CPU core, but also can use including the multiple threads on these CPU core, and Whether isolated nuclei is enabled on these cores.A kind of mode for realizing this point is, used as the available money in the step 610 in Fig. 6 The part in source, collects whether enable isolated nuclei on potential host computer system.
Cloud manager monitors the available resources on host computer system, including being supported by CPU on host computer system Hardware thread quantity, and in one embodiment, including CPU whether enabled isolated nuclei.Cloud manager is received and is supplied The request of virtual machine (VM) is answered, the request includes hardware multithreading parameter, whether the parameter specifies on host computer system Permission hardware multithreading (or in one embodiment, the quantity of the hardware multithreading needed on host computer system). In one embodiment, cloud manager, then by considering hardware multithreading parameter, is that VM selects host computer system.? In another embodiment, cloud manager and then the consideration hardware multithreading parameter that passes through, the hardware thread that CPU is supported and isolated nuclei Arrange, select the host computer system for VM.Then using hardware multithreading parameter, VM is placed on selected main frame meter In calculation machine system.As a result be more effectively using the cpu resource in the main frame of virtual machine.
It will be understood by those skilled in the art that many changes within the scope of the claims are possible.Therefore, although on Mask body illustrate and describes the disclosure, it will be appreciated, however, by one skilled in the art that in the spirit without departing from claim and model In the case of enclosing, these and other changes can be executed in form and details.

Claims (28)

1. a kind of device, including:
At least one processor;
It is coupled to the memorizer of at least one processor;
The resident cloud manager in which memory and by least one computing device, the cloud manager includes:
Main frame MA monitoring agency, determines the quantity of the available CPU in multiple main frames computer system that virtual machine can be deployed to, And also determine that the hardware thread quantity that is supported by each CPU on the plurality of host computer system;And
Selection of chiller mechanism, receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter, wherein described Selection of chiller mechanism selects have the hardware lines number of passes for meeting VM request including in the plurality of host computer system The host computer system of multiple CPU of amount.
2. device according to claim 1, also includes:
Virtual cpu (vCPU) placement mechanism, using the hardware multithreading parameter on the host computer system for selecting Place multiple virtual cpus (vCPU).
3. device according to claim 1, wherein the main frame MA monitoring agency are further determined that and are directed in the plurality of master Whether each CPU in machine computer system enables isolated nuclei, and wherein the Selection of chiller mechanism selects the plurality of master In machine computer system except have meet the VM request hardware thread quantity multiple CPU in addition to, also include meet The host computer system that the isolated nuclei of the virtual cpu quantity and the hardware multithreading parameter in the VM request is arranged System.
4. device according to claim 3, also includes virtual cpu (vCPU) placement mechanism, in the main frame meter for selecting Arranged using the hardware multithreading parameter and the isolated nuclei in calculation machine system, to put on the host computer for selecting Put multiple virtual cpus (vCPU).
5., according to device in any one of the preceding claims wherein, the first value of the wherein hardware multithreading parameter is indicated firmly Part multithreading is closed.
6. basis is subordinated to the device described in the claim 5 of claim 2 or claim 3, wherein when the hardware is multi-thread When first value of journey parameter indicates that hardware multithreading is closed, each vCPU in the VM is placed by vCPU placement mechanism On different physical core in the host computer system for selecting.
7., according to device in any one of the preceding claims wherein, the second value of the wherein hardware multithreading parameter indicates to use Numerical value in hardware thread quantity.
8. basis is subordinated to the device described in the claim 7 of Claims 2 or 3, wherein when described in the hardware multithreading When second value indicates the numerical value for hardware thread quantity, each vCPU in the VM is placed on by the vCPU placement mechanism On different hardware thread in the host computer system for selecting.
9., according to device in any one of the preceding claims wherein, the 3rd value of the wherein hardware multithreading parameter is indicated: Select the host computer system be do not consider hardware thread select the host computer system on be out In the case of opening or closing, selected.
10., according to device in any one of the preceding claims wherein, the wherein VM request also includes storage requirement and disk Demand.
11. further determine that described according to device in any one of the preceding claims wherein, wherein the main frame MA monitoring agency The amount of memorizer on each host computer system and the amount of disk space in multiple main frames computer system.
12. devices according to claim 1, wherein when the virtual cpu quantity in VM request is hard more than described During the value of part multithreading parameter, the Selection of chiller mechanism select in the plurality of host computer system including multiple CPU Host computer system, each in wherein the plurality of CPU have multiple hardware threads.
13. according to the device in any one of the preceding claims wherein for being subordinated to claim 2, the wherein cloud manager also Mechanism is sized including VM, using the hardware multithreading parameter, at least one VM is sized.
14. is a kind of by least one computing device for selecting the calculating for disposing the host computer system of virtual machine The method that machine is realized, methods described includes:
Determine the quantity of the available CPU in multiple main frames computer system that virtual machine can be deployed to;
Determine the hardware thread quantity that is supported by each CPU on the plurality of host computer system;
Receiving includes virtual machine (VM) request of virtual cpu quantity and hardware multithreading parameter;And
Select including with the multiple of the hardware thread quantity for meeting VM request in the plurality of host computer system The host computer system of CPU.
15. methods according to claim 14, also include:
The plurality of vCPU is placed using the hardware multithreading parameter on the host computer system for selecting.
16. methods according to claim 14, also include:
Determine whether each CPU on the plurality of host computer system enables isolated nuclei, if it is, determining each core Daughter nucleus quantity,
And wherein select step to include:VM request is met except including in the plurality of host computer system has Hardware thread quantity multiple CPU host computer system outside, also select meet the VM request in the virtuality The host computer system that the isolated nuclei of CPU quantity and the hardware multithreading parameter is arranged.
17. methods according to claim 16, are additionally included on the host computer system of selection using described hard Part multithreading parameter and the isolated nuclei are arranged, to place multiple virtual cpus on the host computer system for selecting (vCPU).
18. methods according to any one of claim 14 to 17, the first value of the wherein hardware multithreading parameter refers to Show that hardware multithreading is closed.
19. methods according to be subordinated to the claim 14 of claim 15 or claim 16, wherein when the hardware When first value of multithreading parameter indicates that hardware multithreading is closed, each vCPU in the VM is placed on selection On different physical core in the host computer system.
20. methods according to any one of claim 14 to 19, the second value of the wherein hardware multithreading parameter refers to Show the numerical value for hardware thread quantity.
21. methods according to be subordinated to the claim 20 of claim 15 or 16, wherein when the hardware multithreading When second value indicates the numerical value for hardware thread quantity, each vCPU in the VM is placed on the main frame described in selection On different hardware thread in computer system.
22. methods according to any one of claim 14 to 21, the 3rd value of the wherein hardware multithreading parameter refers to Show selection the host computer system be do not considering hardware thread select the host computer system on be beat In the case that on or off is closed, selected.
The request of 23. methods according to any one of claim 14 to 228, the wherein VM also include storage requirement and Disk demand.
24. methods according to any one of claim 14 to 239, wherein the main frame MA monitoring agency further determine that institute State the amount of memorizer on each host computer system in multiple main frames computer system and the amount of disk space.
25. methods according to claim 14, wherein when the virtual cpu quantity in VM request is hard more than described During the value of part multithreading parameter, the host computer system including multiple CPU in the plurality of host computer system is selected, Each in wherein the plurality of CPU has multiple hardware threads.
26. methods according to any one of be subordinated to the claim 15 to 26 of claim 15, are also included using described The VM is sized by hardware multithreading parameter.
27. methods according to claim 14, including:
In addition to the CPU quantity, also determine that in multiple main frames computer system that virtual machine can be deployed to available deposits The amount of reservoir and the amount of disk space,
Wherein described virtual machine (VM) request also includes:
Specify the storage requirement of the minimum of memorizer for the VM;And
The disk demand of the minimum of disk for VM is specified,
First value of the wherein hardware multithreading parameter indicates that hardware multithreading is closed, the of the hardware multithreading parameter Two-value indicates the numerical value for hardware thread quantity, and the 3rd value of the hardware multithreading parameter indicates the master of selection Machine computer system is not consider hardware thread feelings for being on or off on the host computer system for selecting Selected under condition.
A kind of 28. computer programs including program code devices, are adapted for carrying out when described program is run on computers Method according to any one of claim 14 to 27.
CN201580024412.1A 2014-06-06 2015-06-04 Host is selected using hardware multithreading parameter for virtual machine Active CN106462446B (en)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US14/297,724 2014-06-06
US14/297,707 US9400672B2 (en) 2014-06-06 2014-06-06 Placement of virtual CPUS using a hardware multithreading parameter
US14/297,724 US9304805B2 (en) 2014-06-06 2014-06-06 Provisioning virtual CPUs using a hardware multithreading parameter in hosts with split core processors
US14/297,707 2014-06-06
US14/297,677 US9384027B2 (en) 2014-06-06 2014-06-06 Selecting a host for a virtual machine using a hardware multithreading parameter
US14/297,677 2014-06-06
US14/305,703 2014-06-16
US14/305,703 US9372705B2 (en) 2014-06-06 2014-06-16 Selecting a host for a virtual machine using a hardware multithreading parameter
US14/305,853 2014-06-16
US14/305,955 US9304806B2 (en) 2014-06-06 2014-06-16 Provisioning virtual CPUs using a hardware multithreading parameter in hosts with split core processors
US14/305,853 US9400673B2 (en) 2014-06-06 2014-06-16 Placement of virtual CPUS using a hardware multithreading parameter
US14/305,955 2014-06-16
PCT/IB2015/054229 WO2015186088A1 (en) 2014-06-06 2015-06-04 Selecting a host for a virtual machine using a hardware multithreading parameter

Publications (2)

Publication Number Publication Date
CN106462446A true CN106462446A (en) 2017-02-22
CN106462446B CN106462446B (en) 2019-10-08

Family

ID=56682546

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580024412.1A Active CN106462446B (en) 2014-06-06 2015-06-04 Host is selected using hardware multithreading parameter for virtual machine

Country Status (5)

Country Link
JP (1) JP6628742B2 (en)
KR (1) KR101884549B1 (en)
CN (1) CN106462446B (en)
DE (1) DE112015000216T5 (en)
GB (1) GB2541340B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673928A (en) * 2019-09-29 2020-01-10 天津卓朗科技发展有限公司 Thread binding method, thread binding device, storage medium and server

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100138828A1 (en) * 2008-12-01 2010-06-03 Vincent Hanquez Systems and Methods for Facilitating Virtualization of a Heterogeneous Processor Pool
US20130111468A1 (en) * 2011-10-27 2013-05-02 Verizon Patent And Licensing Inc. Virtual machine allocation in a computing on-demand system
US20140007097A1 (en) * 2012-06-29 2014-01-02 Brocade Communications Systems, Inc. Dynamic resource allocation for virtual machines

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9317336B2 (en) 2011-07-27 2016-04-19 Alcatel Lucent Method and apparatus for assignment of virtual resources within a cloud environment
JP5503678B2 (en) 2012-03-07 2014-05-28 株式会社Nttドコモ Host providing system and host providing method
JP5813554B2 (en) 2012-03-30 2015-11-17 ルネサスエレクトロニクス株式会社 Semiconductor device
JP5894496B2 (en) * 2012-05-01 2016-03-30 ルネサスエレクトロニクス株式会社 Semiconductor device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100138828A1 (en) * 2008-12-01 2010-06-03 Vincent Hanquez Systems and Methods for Facilitating Virtualization of a Heterogeneous Processor Pool
US20130111468A1 (en) * 2011-10-27 2013-05-02 Verizon Patent And Licensing Inc. Virtual machine allocation in a computing on-demand system
US20140007097A1 (en) * 2012-06-29 2014-01-02 Brocade Communications Systems, Inc. Dynamic resource allocation for virtual machines

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHRIS WAHL: "Hyper-Threading Gotcha with Virtual Machine vCPU Sizing", 《HTTP://WAHLNETWORK.COM/2013/09/30/HYPER-THREADING-GOTCHA-VIRTUAL-MACHINE-VCPU-SIZING/》 *
ERIC SIRON: "Hyper-V Virtual CPUs Explained", 《HTTPS://WWW.ALTARO.COM/HYPER-V/HYPER-V-VIRTUAL-CPUS-EXPLAINED/》 *
JEFF SAVIT: "Best Practices-Core allocation,Jeff Savit", 《HTTPS://BLOGS.ORACLE.COM/VIRTUALIZATION/BEST-PRACTICES-CORE-ALLOCATION-V2》 *
JEREMIAH PESCHKA: "Five SQL Server Settings to Change", 《HTTPS://WWW.BRENTOZAR.COM/ARCHIVE/2013/09/FIVE-SQL-SERVER-SETTINGS-TO-CHANGE/》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673928A (en) * 2019-09-29 2020-01-10 天津卓朗科技发展有限公司 Thread binding method, thread binding device, storage medium and server
CN110673928B (en) * 2019-09-29 2021-12-14 天津卓朗科技发展有限公司 Thread binding method, thread binding device, storage medium and server

Also Published As

Publication number Publication date
GB201620786D0 (en) 2017-01-18
KR101884549B1 (en) 2018-08-29
CN106462446B (en) 2019-10-08
GB2541340B (en) 2017-07-19
JP2017520830A (en) 2017-07-27
DE112015000216T5 (en) 2016-09-01
KR20160147958A (en) 2016-12-23
JP6628742B2 (en) 2020-01-15
GB2541340A (en) 2017-02-15

Similar Documents

Publication Publication Date Title
CN105978704B (en) System and method for creating new cloud resource instruction set architecture
US20210247829A1 (en) Holistic global performance and power management
US10999406B2 (en) Attaching service level agreements to application containers and enabling service assurance
US11775354B2 (en) Reducing overlay network overhead across container hosts
CN105912396B (en) For dynamically distributing the technology of the resource of configurable computing resource
CN104205056B (en) Across the method and system of the dynamically distributes of the live load of multiple clouds
CN104424013B (en) The method and apparatus for disposing virtual machine in a computing environment
CN105453040B (en) The method and system of data flow is handled in a distributed computing environment
CN110580197A (en) Distributed computing architecture for large model deep learning
US9619274B2 (en) Provisioning virtual CPUs using a hardware multithreading parameter in hosts with split core processors
US9639390B2 (en) Selecting a host for a virtual machine using a hardware multithreading parameter
CN104216662B (en) Optimal Volume Placement Across Remote Replication Relationships
CN106933669A (en) For the apparatus and method of data processing
CN103238138A (en) Network interface for partition deployment/re-deployment in a cloud environment
CN105897805A (en) Method and device for cross-layer scheduling of resources of data center with multi-layer architecture
CN108549583A (en) Big data processing method, device, server and readable storage medium storing program for executing
CN108701132A (en) Resource management system and method
Kriushanth et al. Auto scaling in Cloud Computing: an overview
CN109588054A (en) Accurate and detailed modeling using distributed simulation engine to the system with large complicated data set
DE112021005927T5 (en) PATCHING WORKFLOWS
DE112021003274T5 (en) RESOURCE ALLOCATION TO OPTIMIZE HYPERPARAMETERS IN LARGE DEEP LEARNING WORKLOADS
Hluchý et al. Effective computation resilience in high performance and distributed environments
CN106462446A (en) Selecting a host for a virtual machine using a hardware multithreading parameter
CN104424012A (en) Method and equipment used for providing user-defined virtual device
CN107924502A (en) Multistage high-effect Business Process Management engine

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant