CN106250217A - Synchronous dispatching method between a kind of many virtual processors and dispatching patcher thereof - Google Patents
Synchronous dispatching method between a kind of many virtual processors and dispatching patcher thereof Download PDFInfo
- Publication number
- CN106250217A CN106250217A CN201610587456.1A CN201610587456A CN106250217A CN 106250217 A CN106250217 A CN 106250217A CN 201610587456 A CN201610587456 A CN 201610587456A CN 106250217 A CN106250217 A CN 106250217A
- Authority
- CN
- China
- Prior art keywords
- processor
- virtual
- virtual processor
- concurrent physical
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
Abstract
The invention provides the synchronous dispatching method between many virtual processors and dispatching patcher thereof, the method comprises the following steps: S1, creates and at least includes some virtual processor groups of a virtual processor;S2, for concurrent physical processor create scheduling queue;S3, with timeslice as dispatching cycle, load according to concurrent physical processor and the priority of virtual processor group, to determine whether to call in virtual processor scheduling queue, and perform to call in virtual processor the operation of scheduling queue by the scheduler run on concurrent physical processor;S4, determine the virtual processor group of allocated concurrent physical processor and update scheduling queue.In the present invention, can be according to the load of concurrent physical processor and the priority of virtual processor group, with the different virtual processors rearrangement being pointed in same scheduling queue, achieve the isochronous schedules between the multiple virtual processors being pointed in different concurrent physical processor, improve the implementation effect to concurrent operations.
Description
Technical field
The present invention relates to virtual machine technique field, particularly relate to the synchronous dispatching method between a kind of virtual processor and base thereof
Isochronous schedules system between a kind of many virtual processors of this synchronous dispatching method.
Background technology
Virtual machine manager (VMM) mainly includes KVM, XEN, VMware, Hyper-V, and by Intel Virtualization Technology at thing
Multiple virtual machine is fictionalized on reason machine.Virtual processor (VCPU) is a core component of virtual machine, is also virtual machine simultaneously
Manager realizes the base unit of scheduling, and it is similar to the system call process of legacy operating system (OS).
Virtual processor is controlled by virtual machine manager, and the virtual processor that namely virtual machine is seen is not likely to be
Run simultaneously.Under actual physical situation, the concurrent physical processor (PCPU) that operating system is seen be always at can running status, so
Cause virtualized environment and actual physical situation inconsistent.This scene and then the task of virtual machine internal can be affected, virtual machine
Internal program is many one layer of scheduling than under conventional physical environment.Virtual processor is without operation, then appointing above it
Business queue all can be suspended, and the operating system of virtual machine can not control.In the case of this, parallel task is run and holds
The scene of lock task, virtual machine internal is to can't resolve the demand that they are suspended parallel and not.
Current virtual machine manager more take into account the fairness of each virtual processor, have ignored between them
Relation, the problem of the most same virtual machine internal multiple virtual processor synchronous operation.
Summary of the invention
It is an object of the invention to disclose the synchronous dispatching method between a kind of many virtual processors, and based on the method
Isochronous schedules system between a kind of many virtual processors, in order to realize the multiple virtual process being pointed in different concurrent physical processor
Isochronous schedules between device, improves the implementation effect to concurrent operations.
For realizing above-mentioned first goal of the invention, the invention provides the isochronous schedules side between a kind of many virtual processors
Method, comprises the following steps:
S1, create and at least include some virtual processor groups of a virtual processor;
S2, for concurrent physical processor create scheduling queue;
S3, with timeslice as dispatching cycle, according to load and the priority of virtual processor group of concurrent physical processor, with
Determine whether to call in virtual processor scheduling queue, and performed virtual place by the scheduler run on concurrent physical processor
The operation of scheduling queue called in by reason device;
S4, determine the virtual processor group of allocated concurrent physical processor and update scheduling queue.
As a further improvement on the present invention, the described virtual processor group device that is scheduled in units of SMP virtual machine is created
Build.
As a further improvement on the present invention, the scheduler described concurrent physical processor run is based on concurrent physical processor
Idling-resource surplus, preferentially calls the concurrent physical processor being in idle condition to occurring position to become in same scheduling queue
The virtual processor changed.
As a further improvement on the present invention, also include, according to concurrent physical processor idling-resource surplus, passing through scheduler
The concurrent physical processor associated by virtual processor that preempting priority is relatively low also calls to position occurs in same scheduling queue
The virtual processor of change.
As a further improvement on the present invention, when the concurrent physical processor that two idling-resource surpluses of existence are equal, then
Using the virtual processor group relatively low as priority of less group of the virtual coprocessor number in virtual processor group, and by adjusting
Spend the relatively low concurrent physical processor associated by virtual processor of device preempting priority and call to generation in same scheduling queue
The virtual processor of change in location.
As a further improvement on the present invention, when the virtual place comprised in the scheduling queue associated by concurrent physical processor
The quantity of reason device is identical, then using the virtual processor group relatively low as priority that concurrent physical processor id is bigger, and by scheduling
The concurrent physical processor associated by virtual processor that device preempting priority is relatively low also calls to position occurs in same scheduling queue
Put the virtual processor of change.
As a further improvement on the present invention, also include the initialization operation to virtual processor group in step S1, to incite somebody to action
Virtual processor model in virtual processor group, virtual coprocessor number, socket attribute, numa node attribute, vm-id
Attribute is advanced and is indicated and be recorded in virtual processor group.
As a further improvement on the present invention, described scheduler includes global scheduler, preemption scheduling device or mixing
Formula scheduler.
For realizing above-mentioned second goal of the invention, present invention also offers the isochronous schedules system between a kind of many virtual processors
System, including:
Initialization module, physical processor resource detection module, virtual processor management and running module, scheduling queue manage
Module;Wherein,
Initialization module, in order to create the some virtual processor groups at least including a virtual processor, and is physics
Processor creates scheduling queue;
Physical processor resource detection module, for detecting the load of concurrent physical processor;
Virtual processor management and running module, with timeslice as dispatching cycle, according to load and the void of concurrent physical processor
Intend the priority of processor group, to determine whether to call in virtual processor scheduling queue, and transported by concurrent physical processor
The scheduler of row performs to call in virtual processor the operation of scheduling queue;
Scheduling queue management module, determines the virtual processor group of allocated concurrent physical processor and updates scheduling queue.
As a further improvement on the present invention, also including physical processor resource arbitration modules, it is according to virtual processor
The demand of group, prepares the concurrent physical processor of respective number;
If concurrent physical processor number is inadequate, then the concurrent physical processor associated by virtual processor that preempting priority is relatively low;
If there is the virtual processor group that two or more priority are equal, then with in virtual processor group simultaneously
The virtual processor group relatively low as priority of less group of virtual coprocessor number, and relatively low by scheduler preempting priority
The concurrent physical processor associated by virtual processor and call to the virtual process that change in location occurs in same scheduling queue
Device;
If the quantity of the virtual processor comprised in the scheduling queue associated by concurrent physical processor is identical, then with physics
The virtual processor group relatively low as priority that processor id is bigger, and pass through the virtual place that scheduler preempting priority is relatively low
Manage the concurrent physical processor associated by device and call to the virtual processor that change in location occurs in same scheduling queue.
Compared with prior art, the invention has the beneficial effects as follows: in the present invention, can according to the load of concurrent physical processor with
And the priority of virtual processor group, with the different virtual processors rearrangement being pointed in same scheduling queue, to guarantee
Multiple virtual processors in same virtual processor group keep synchronizing, it is achieved thereby that be pointed to different concurrent physical processor
(PCPU) isochronous schedules between multiple virtual processors (VCPU) in, improves the implementation effect to concurrent operations.
Accompanying drawing explanation
Fig. 1 is the synchronous dispatching method flow chart between a kind of many virtual processors of the present invention;
Fig. 2 is the scene graph that four concurrent physical processors installed by a main frame;
Fig. 3 is that the multiple virtual processors in four scheduling queues formed in four concurrent physical processors in Fig. 2 exist
Schematic diagram before isochronous schedules;
Fig. 4 is that the multiple virtual processors in four scheduling queues formed in four concurrent physical processors in Fig. 2 exist
Schematic diagram after isochronous schedules;
Fig. 5 is the program execution flow figure of the synchronous dispatching method of a kind of many virtual processors of the present invention;
Fig. 6 is the structure chart in a kind of detailed description of the invention of the dispatching patcher between a kind of many virtual processors of the present invention;
Fig. 7 is the structure in another kind of detailed description of the invention of the dispatching patcher between a kind of many virtual processors of the present invention
Figure.
Detailed description of the invention
The present invention is described in detail for each embodiment shown in below in conjunction with the accompanying drawings, but it should explanation, these
Embodiment not limitation of the present invention, those of ordinary skill in the art according to these embodiment institute work energy, method,
Or the equivalent transformation in structure or replacement, within belonging to protection scope of the present invention.
In this specification, the concurrent physical processor of indication includes the physical central processor being installed on physical machine mainboard
(PCPU), it is possible to for having ASIC (the Application Specific Integrated of logic and/or ordering calculation function
Circuit) chip, it is possible to for FPGA (Field-Programmable Gate Array) chip.
Method disclosed in one or more embodiment, device, system or application disclosed in this specification are all
Can be individually or to represent in the way of combination.Described module or the division of unit, only a kind of logic of computer-internal
The division of function, be actually alternatively other dividing mode, the most multiple unit or module or assembly can in conjunction with or
Person is integrated or is cured in another computer system or computer installation.
Wherein, computer system or computer installation can be local physical computer, include but not limited to desktop computer,
Laptop computer, server, it is possible to be configured to distributed computing system or various types of cloud computing main frame or void
Intend computer cluster server.
In the detailed description of the invention of this specification, concurrent physical processor is with the central processing unit (Processor) of physical aspect
As a example by exemplary illustrated, PCPU is equivalent to concurrent physical processor, but therefore concurrent physical processor can not be constituted any restriction.Below
In, PCPU and concurrent physical processor have equivalents, and VCPU and virtual processor have equivalents.
The virtual management mode of VMM can be closed from the mapping of the aspect sweetly disposition physical resource of software and hardware and virtual resource
System, it is provided that the several functions such as performance isolation, security isolation and condition monitoring.VMM is as a kind of software management layers, and it is implemented in firmly
Between part layer and legacy operating system, and it is used for managing physical equipment, such as: concurrent physical processor (PCPU), internal memory (MEMORY)
Deng equipment, and it is corresponding virtual equipment interface by the hardware abstraction of bottom, makes multiple operating system be assigned to customization
Virtual hardware resource (virtual processor resources, virtual memory etc.), so that multiple operating system can be simultaneously run in same
On equipment.
Fig. 1 shows the flow chart of the synchronous dispatching method between a kind of many virtual processors of the present invention, and concrete, how empty this is
The synchronous dispatching method intended between processor comprises the following steps.
S1, create and at least include some virtual processor groups of a virtual processor;
S2, for concurrent physical processor create scheduling queue;
S3, with timeslice as dispatching cycle, according to load and the priority of virtual processor group of concurrent physical processor, with
Determine whether to call in virtual processor scheduling queue, and performed virtual place by the scheduler run on concurrent physical processor
The operation of scheduling queue called in by reason device;
S4, determine the virtual processor group of allocated concurrent physical processor and update scheduling queue.
Concrete, please join shown in Fig. 2, shown in Fig. 2 a host A, it includes four concurrent physical processors (PCPU), i.e.
PCPU_1, PCPU_2, PCPU_3 and PCPU_4, these four concurrent physical processors are based on VMM (virtual machine
Monitor), the Intel Virtualization Technology such as such as KVM, XEN, VMware or Hyper-V, virtual by the way of software dissolve one
Or multiple virtual machines, each virtual machine includes virtual processor (VCPU).Four concurrent physical processors (PCPU) can be based on virtual
Change technology, supports the structure of SMP virtual machine.
Symmetric multiprocessor (Symmetrical Multi-Processing, SMP) is widely used in virtualization field,
Also it is the multiprocessor default option of many software virtual machines.SMP has equal access to memorizer, I/O and external interrupt
Authority.The single copy of operating system just can control all kernels, makes any processor can run all of thread, and without
Consider kernel, apply or interrupt the differentiation serviced.
In the present embodiment, PCPU_1 creates its exclusive scheduling queue 11, and in like manner PCPU_2 creates has it exclusive
Scheduling queue 12, PCPU_3 creates its exclusive scheduling queue 13, and PCPU_4 creates its exclusive scheduling queue 14.Tool
Body, can be by the initialization operation to virtual processor group of the initialization module 10 in Fig. 6, with by virtual processor group (i.e.
VCPU group 21, VCPU group 22, VCPU group 23, VCPU group 24 and VCPU group 25) in virtual processor model, virtual processor number
Amount, socket attribute, numa node attribute, vm-id attribute are advanced and are indicated and be recorded in virtual processor group.Each PCPU
One or more VCPU that group is formed by Intel Virtualization Technology is included in same scheduling queue.
As it is shown on figure 3, scheduler creates five virtual processor groups, i.e. VCPU in Fig. 3 in units of SMP virtual machine
Group 21, VCPU group 22, VCPU group 23, VCPU group 24, VCPU group 25.Preferably volume, this scheduler includes global scheduler, seizes
Formula scheduler or mixed schedule device, and most preferably preemption scheduling device.Preemption scheduling device allows appointing of high priority
Business interrupts the task that (interrupt) currently performs, and seizes the control of VCPU.
Meanwhile, the VCPU in VCPU follows same VCPU group puts into the basic principle of different scheduling queues.Due to
The quantity of the VCPU in virtual processor group is the most equal, therefore define as Fig. 3 structure.In figure 3, host A
Four concurrent physical processors define 16 virtual processors by Intel Virtualization Technology;Wherein,
VCPU_1, VCPU_5, VCPU_8, VCPU_12 have collectively constituted VCPU group 21,
VCPU_2, VCPU_6, VCPU_9, VCPU_13 have collectively constituted VCPU group 22,
VCPU_3, VCPU_7, VCPU_10, VCPU_14 have collectively constituted VCPU group 23,
VCPU_4, VCPU_11, VCPU_15 have collectively constituted VCPU group 24,
VCPU_16 has collectively constituted VCPU group 21.
VCPU group 21, VCPU group 22, VCPU group 23, VCPU group 24 and VCPU group 25 are corresponding with five virtual machines respectively, and
The task such as data throughput and computing of execution.
Whole carrying can not be crossed with all virtual processors in a scheduling queue in a PCPU owing to being positioned at
OK, the multiple virtual processors being positioned in different concurrent physical processor being positioned in same virtual process group cannot be complete complete same
Step.As shown in Figure 3, VCPU_1 and VCPU_8 in VCPU group 21 is in idle condition, and VCPU_5 with VCPU_12 is in non-
Idle condition.Now, just with timeslice as dispatching cycle, according to the load of concurrent physical processor (PCPU1, PCPU3) and virtual
The priority of processor group (VCPU group 22), to determine whether to call in virtual processor scheduling queue, and passes through physical treatment
The scheduler run on device performs to call in virtual processor the operation of scheduling queue.
Timeslice is the time that concurrent physical processor (PCPU) distributes to each program, and each thread is allocated a time
Section, is referred to as the time that its timeslice, i.e. this process allow to run, makes each program carry out the most simultaneously.As
Fruit process at the end of timeslice is also being run, then PCPU will be deprived of and distribute to another process.If process is in the time
Sheet blocks before terminating or terminates, then PCPU switches at once.Without causing the PCPU wasting of resources.
Shown in Fig. 4, in order to ensure that four virtual processors in VCPU group 21 keep synchronizing, therefore can be by VCPU_5
With VCPU_6 under the scheduling of scheduler, scheduling queue 12 occurs change in location, and transposition;Meanwhile, VCPU_12 with
Under the scheduling of scheduler, in scheduling queue 14, there is change in location, and transposition in VCPU_13.So that VCPU group
Four virtual processors in 21 are all in upstate, and achieve isochronous schedules, it is to avoid in virtualization in prior art
Probably due to some or certain several virtual processors are not allocated to enough when environment is inconsistent with real physical environment
Idling-resource and the problem that is suspended.Finally, scheduling queue 12 and scheduling queue 13 are updated operation.
Under the scheduler program of virtual machine internal and traditional physical machine environment, many one layer of dispatch layers.Therefore, if one
One or more virtual machine formed by Intel Virtualization Technology in concurrent physical processor is because being not previously allocated or having taken
Effect resource and cannot properly functioning time, then this virtual processor will be suspended, and pseudo operation based on this virtual machine
System is the most uncontrollable.In this case, for concurrent tasks and the scene of holder lock task, virtual machine cannot solve these positions
One or more virtual processor in multiple virtual processors in same concurrent physical processor is in default of resource
The demand not being suspended, and also cannot realize the execution to concurrent tasks.And in the present invention, be exactly based on according to physical treatment
The load of device (PCPU1, PCPU3) and the priority of virtual processor group (VCPU group 22), to determine whether virtual process
Scheduling queue called in by device, and performs virtual processor is called in scheduling queue by the scheduler run on concurrent physical processor
The technical scheme of operation, solves above-mentioned technical problem, and can successfully manage concurrent tasks and the application scenarios of lock task.
Preferably, in the present embodiment, the synchronous dispatching method between these many virtual processors also includes, at physics
Reason device idling-resource surplus, by the concurrent physical processor associated by the virtual processor that scheduler preempting priority is relatively low and adjust
With giving the virtual processor that change in location occurs in same scheduling queue.When there is the thing that two idling-resource surpluses are equal
During reason processor, then using the virtual process relatively low as priority of less group of the virtual coprocessor number in virtual processor group
Device group, and pass through the relatively low concurrent physical processor associated by virtual processor of scheduler preempting priority and call at same tune
Degree queue occurs the virtual processor of change in location.Virtual when being comprised in the scheduling queue associated by concurrent physical processor
The quantity of processor is identical, then using the virtual processor group relatively low as priority that concurrent physical processor id is bigger, and by adjusting
Spend the relatively low concurrent physical processor associated by virtual processor of device preempting priority and call to generation in same scheduling queue
The virtual processor of change in location.
Concrete, what synchronous dispatching method between these many virtual processors was more specific realize step can join shown in Fig. 5.
First, step S10, VCPU virtualization are performed.
Then, performing step S11, create VCPU group by initialization module 10 (shown in ginseng Fig. 6), VCPU group includes one
Individual or multiple VCPU.
Then, perform step S12, be that each PCPU creates scheduling queue by initialization module 10.
Then, perform step S13, performed scheduling queue management by scheduling queue management module 40, and many with host A
Individual concurrent physical processor performs " request-response " operation.
Then, perform step S15, by scheduler according to the load of concurrent physical processor (such as, PCPU1, PCPU3) and void
Intend the priority of processor group (such as, VCPU group 22), to determine whether virtual processor is called in scheduling queue.In this step
In S15, need one or more scheduling queue that invocation step S12 is created.
Then, perform the number whether >=2 of step S16, the VCPU judged in VCPU group, if 1, the most directly should
VCPU directly runs without the operation of memory queue scheduling, and redirects execution step S19, VCPU operation, the VCPU that will be scheduled
State be loaded into PCPU (concurrent physical processor);If number >=2 of the VCPU in VCPU group, then perform step S17.This step
S16 specifically can be performed by physical processor resource monitoring modular 50.
Step S17, preparation PCPU.
Then, redirect execution step S18, judge that PCPU resource is the most sufficient, and mould can be monitored by physical processor resource
Block 50 performs.If PCPU resource is sufficient, the most directly redirect execution step S19;If PCPU resource is inadequate, then returns up and jump
Turn and perform step S15, and the operation that moves in circles successively, until finding suitable concurrent physical processor (PCPU).
Terminate.
Embodiment two:
Please join a kind of specific embodiment party of isochronous schedules system between a kind of many virtual processors of the present invention illustrated in fig. 6
Formula.
In the present embodiment, the isochronous schedules system between these many virtual processors, including:
Initialization module 10, physical processor resource detection module 50, virtual processor management and running module 20, scheduling team
Row management module 40;Wherein,
Initialization module 10, in order to create the some virtual processor groups at least including a virtual processor, and is thing
Reason processor creates scheduling queue;
Physical processor resource detection module 50, for detecting the load of concurrent physical processor;
Virtual processor management and running module 20, with timeslice as dispatching cycle, according to the load of concurrent physical processor and
The priority of virtual processor group, to determine whether to call in virtual processor scheduling queue, and by institute on concurrent physical processor
The scheduler run performs to call in virtual processor the operation of scheduling queue;
Scheduling queue management module 40, determines the virtual processor group of allocated concurrent physical processor and updates scheduling queue.
The technical scheme that the present embodiment is identical with embodiment one does not repeats them here, and please join described in embodiment one.
Embodiment three:
The another kind of scheduling that please join the isochronous schedules system between a kind of many virtual processors of the present invention illustrated in fig. 7 is
System.Isochronous schedules system between these many virtual processors relative to the difference existing for embodiment two is, in the present embodiment,
Isochronous schedules system between many virtual processors also includes physical processor resource arbitration modules 30, and it is according to virtual processor group
Demand, prepare respective number concurrent physical processor;
If concurrent physical processor number is inadequate, then the concurrent physical processor associated by virtual processor that preempting priority is relatively low;
If there is the virtual processor group that two or more priority are equal, then with in virtual processor group simultaneously
The virtual processor group relatively low as priority of less group of virtual coprocessor number, and relatively low by scheduler preempting priority
The concurrent physical processor associated by virtual processor and call to the virtual process that change in location occurs in same scheduling queue
Device;
If the quantity of the virtual processor comprised in the scheduling queue associated by concurrent physical processor is identical, then with physics
The virtual processor group relatively low as priority that processor id is bigger, and pass through the virtual place that scheduler preempting priority is relatively low
Manage the concurrent physical processor associated by device and call to the virtual processor that change in location occurs in same scheduling queue.
In the present embodiment, this scheduler includes global scheduler, preemption scheduling device or mixed schedule device, and
It is preferably preemption scheduling device.
Each functional unit in each embodiment of the present invention can be integrated in a processing unit, it is also possible to is each
Unit is individually physically present, it is also possible to two or more unit are integrated in a unit.Above-mentioned integrated unit both may be used
To use the form of hardware to realize, it would however also be possible to employ the form of SFU software functional unit realizes.
If described integrated unit realizes and as independent production marketing or use using the form of SFU software functional unit
Time, can be stored in a computer read/write memory medium.Based on such understanding, technical scheme is substantially
The part that in other words prior art contributed or this technical scheme completely or partially can be with the form of software product
Embodying, this computer software product is stored in a storage medium, including some instructions with so that a computer
Equipment (can be personal computer, server, or the network equipment etc.) or processor (processor) perform the present invention each
All or part of step of method described in embodiment.And aforesaid storage medium includes: USB flash disk, portable hard drive, read only memory
(ROM, Read-Only Memory), random access memory (RAM, Random Access Memory) magnetic disc, non-volatile
The various media that can store program code such as storage arrangement (NVM) or CD.
The a series of detailed description of those listed above is only for the feasibility embodiment of the present invention specifically
Bright, they also are not used to limit the scope of the invention, all equivalent implementations made without departing from skill of the present invention spirit
Or change should be included within the scope of the present invention.
It is obvious to a person skilled in the art that the invention is not restricted to the details of above-mentioned one exemplary embodiment, Er Qie
In the case of the spirit or essential attributes of the present invention, it is possible to realize the present invention in other specific forms.Therefore, no matter
From the point of view of which point, all should regard embodiment as exemplary, and be nonrestrictive, the scope of the present invention is by appended power
Profit requires rather than described above limits, it is intended that all by fall in the implication of equivalency and scope of claim
Change is included in the present invention.Should not be considered as limiting involved claim by any reference in claim.
Although moreover, it will be appreciated that this specification is been described by according to embodiment, but the most each embodiment only wraps
Containing an independent technical scheme, this narrating mode of description is only that for clarity sake those skilled in the art should
Description can also be formed those skilled in the art through appropriately combined as an entirety, the technical scheme in each embodiment
May be appreciated other embodiments.
Claims (10)
1. synchronous dispatching method between virtual processor more than, it is characterised in that comprise the following steps:
S1, create and at least include some virtual processor groups of a virtual processor;
S2, for concurrent physical processor create scheduling queue;
S3, with timeslice as dispatching cycle, according to load and the priority of virtual processor group of concurrent physical processor, to determine
Whether virtual processor is called in scheduling queue, and is performed virtual processor by the scheduler run on concurrent physical processor
Call in the operation of scheduling queue;
S4, determine the virtual processor group of allocated concurrent physical processor and update scheduling queue.
Synchronous dispatching method the most according to claim 1, it is characterised in that described virtual processor group is with SMP virtual machine
Created by the unit device that is scheduled.
Synchronous dispatching method the most according to claim 1 and 2, it is characterised in that run on described concurrent physical processor
Scheduler idling-resource based on concurrent physical processor surplus, preferentially calls the concurrent physical processor being in idle condition to same
One scheduling queue occurs the virtual processor of change in location.
Synchronous dispatching method the most according to claim 3, it is characterised in that also include according to concurrent physical processor idling-resource
Surplus, by the concurrent physical processor associated by the virtual processor that scheduler preempting priority is relatively low and call at same tune
Degree queue occurs the virtual processor of change in location.
Synchronous dispatching method the most according to claim 4, it is characterised in that two idling-resource surpluses are equal when existing
Concurrent physical processor time, then using less group of the virtual coprocessor number in virtual processor group as relatively low virtual of priority
Processor group, and pass through the relatively low concurrent physical processor associated by virtual processor of scheduler preempting priority and call to same
One scheduling queue occurs the virtual processor of change in location.
Synchronous dispatching method the most according to claim 5, it is characterised in that when the scheduling queue associated by concurrent physical processor
In the quantity of the virtual processor comprised identical, then using the virtual place relatively low as priority that concurrent physical processor id is bigger
Reason device group, and pass through the relatively low concurrent physical processor associated by virtual processor of scheduler preempting priority and call to same
Scheduling queue occurs the virtual processor of change in location.
Synchronous dispatching method the most according to claim 1, it is characterised in that also include virtual processor group in step S1
Initialization operation, with by the virtual processor model in virtual processor group, virtual coprocessor number, socket attribute,
Numa node attribute, vm-id attribute are advanced and are indicated and be recorded in virtual processor group.
Synchronous dispatching method the most according to claim 1, it is characterised in that described scheduler includes global scheduler, robs
Account for formula scheduler or mixed schedule device.
9. isochronous schedules system between virtual processor more than a kind, it is characterised in that including:
Initialization module, physical processor resource detection module, virtual processor management and running module, scheduling queue management mould
Block;Wherein,
Initialization module, in order to create the some virtual processor groups at least including a virtual processor, and is physical treatment
Device creates scheduling queue;
Physical processor resource detection module, for detecting the load of concurrent physical processor;
Virtual processor management and running module, with timeslice as dispatching cycle, according to load and the virtual place of concurrent physical processor
The priority of reason device group, to determine whether to call in virtual processor scheduling queue, and by being run on concurrent physical processor
Scheduler performs to call in virtual processor the operation of scheduling queue;
Scheduling queue management module, determines the virtual processor group of allocated concurrent physical processor and updates scheduling queue.
Isochronous schedules system the most according to claim 9, it is characterised in that also include that physical processor resource arbitrates mould
Block, it, according to the demand of virtual processor group, prepares the concurrent physical processor of respective number;
If concurrent physical processor number is inadequate, then the concurrent physical processor associated by virtual processor that preempting priority is relatively low;
If there is the virtual processor group that two or more priority are equal simultaneously, then virtual with in virtual processor group
The virtual processor group relatively low as priority of processor negligible amounts group, and pass through the void that scheduler preempting priority is relatively low
Intend the concurrent physical processor associated by processor and call to the virtual processor that change in location occurs in same scheduling queue;
If the quantity of the virtual processor comprised in the scheduling queue associated by concurrent physical processor is identical, then with physical treatment
The virtual processor group relatively low as priority that device id is bigger, and pass through the virtual processor that scheduler preempting priority is relatively low
Associated concurrent physical processor also calls to the virtual processor that change in location occurs in same scheduling queue.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610587456.1A CN106250217A (en) | 2016-07-22 | 2016-07-22 | Synchronous dispatching method between a kind of many virtual processors and dispatching patcher thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610587456.1A CN106250217A (en) | 2016-07-22 | 2016-07-22 | Synchronous dispatching method between a kind of many virtual processors and dispatching patcher thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106250217A true CN106250217A (en) | 2016-12-21 |
Family
ID=57603361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610587456.1A Pending CN106250217A (en) | 2016-07-22 | 2016-07-22 | Synchronous dispatching method between a kind of many virtual processors and dispatching patcher thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106250217A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107589995A (en) * | 2017-08-16 | 2018-01-16 | 广东电网有限责任公司电力调度控制中心 | Preview method for scheduling task before a kind of data service is broadcast |
CN108415876A (en) * | 2017-02-28 | 2018-08-17 | 张家口浩扬科技有限公司 | A kind of dynamic computing device |
CN109586965A (en) * | 2018-12-04 | 2019-04-05 | 郑州云海信息技术有限公司 | A kind of network interface card RSS method of automatic configuration, device, terminal and storage medium |
CN110990139A (en) * | 2019-12-06 | 2020-04-10 | 安徽芯智科技有限公司 | SMP scheduling method and system based on RTOS |
CN111459622A (en) * | 2020-04-15 | 2020-07-28 | 腾讯科技(深圳)有限公司 | Method and device for scheduling virtual CPU, computer equipment and storage medium |
WO2023165485A1 (en) * | 2022-03-04 | 2023-09-07 | 阿里巴巴(中国)有限公司 | Scheduling method and computer system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470635A (en) * | 2007-12-24 | 2009-07-01 | 联想(北京)有限公司 | Method for multi-virtual processor synchronous scheduling and computer thereof |
CN102662763A (en) * | 2012-04-11 | 2012-09-12 | 华中科技大学 | Virtual machine resource scheduling method based on service quality |
CN103677990A (en) * | 2013-12-13 | 2014-03-26 | 清华大学 | Virtual machine real-time task scheduling method and device and virtual machine |
CN103795621A (en) * | 2013-12-12 | 2014-05-14 | 华为技术有限公司 | Virtual machine data exchange method and device, and physical host |
-
2016
- 2016-07-22 CN CN201610587456.1A patent/CN106250217A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470635A (en) * | 2007-12-24 | 2009-07-01 | 联想(北京)有限公司 | Method for multi-virtual processor synchronous scheduling and computer thereof |
CN102662763A (en) * | 2012-04-11 | 2012-09-12 | 华中科技大学 | Virtual machine resource scheduling method based on service quality |
CN103795621A (en) * | 2013-12-12 | 2014-05-14 | 华为技术有限公司 | Virtual machine data exchange method and device, and physical host |
CN103677990A (en) * | 2013-12-13 | 2014-03-26 | 清华大学 | Virtual machine real-time task scheduling method and device and virtual machine |
Non-Patent Citations (1)
Title |
---|
丁晓波: "面向实时应用的虚拟机调度研究", 《万方学位论文数据库》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415876A (en) * | 2017-02-28 | 2018-08-17 | 张家口浩扬科技有限公司 | A kind of dynamic computing device |
CN107589995A (en) * | 2017-08-16 | 2018-01-16 | 广东电网有限责任公司电力调度控制中心 | Preview method for scheduling task before a kind of data service is broadcast |
CN107589995B (en) * | 2017-08-16 | 2020-06-09 | 广东电网有限责任公司电力调度控制中心 | Pre-broadcast preview task scheduling method for data service |
CN109586965A (en) * | 2018-12-04 | 2019-04-05 | 郑州云海信息技术有限公司 | A kind of network interface card RSS method of automatic configuration, device, terminal and storage medium |
CN110990139A (en) * | 2019-12-06 | 2020-04-10 | 安徽芯智科技有限公司 | SMP scheduling method and system based on RTOS |
CN111459622A (en) * | 2020-04-15 | 2020-07-28 | 腾讯科技(深圳)有限公司 | Method and device for scheduling virtual CPU, computer equipment and storage medium |
CN111459622B (en) * | 2020-04-15 | 2023-10-13 | 腾讯科技(深圳)有限公司 | Method, device, computer equipment and storage medium for scheduling virtual CPU |
WO2023165485A1 (en) * | 2022-03-04 | 2023-09-07 | 阿里巴巴(中国)有限公司 | Scheduling method and computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6646114B2 (en) | Dynamic virtual machine sizing | |
CN106250217A (en) | Synchronous dispatching method between a kind of many virtual processors and dispatching patcher thereof | |
Wu et al. | Flep: Enabling flexible and efficient preemption on gpus | |
AU2014311463B2 (en) | Virtual machine monitor configured to support latency sensitive virtual machines | |
Phillips et al. | Adapting a message-driven parallel application to GPU-accelerated clusters | |
JP6294586B2 (en) | Execution management system combining instruction threads and management method | |
Tabish et al. | A real-time scratchpad-centric os for multi-core embedded systems | |
EP1628214B1 (en) | Systems and methods for implementing an operating system in a virtual machine environment | |
CN103064746B (en) | The accurate distribution method of processor resource of forecast dispatching is carried out based on current credit | |
CN103744716B (en) | A kind of dynamically interruption Well-Balanced Mapping method based on current VCPU dispatch state | |
US8271990B2 (en) | Removing operating system jitter-induced slowdown in virtualized environments | |
CN103677990B (en) | Dispatching method, device and the virtual machine of virtual machine real-time task | |
CN104094235B (en) | Multithreading calculates | |
US11579908B2 (en) | Containerized workload scheduling | |
JP2013524386A (en) | Runspace method, system and apparatus | |
WO2012028214A1 (en) | High-throughput computing in a hybrid computing environment | |
US10942824B2 (en) | Programming model and framework for providing resilient parallel tasks | |
CN110447012B (en) | Collaborative virtual processor scheduling | |
Suo et al. | Preserving i/o prioritization in virtualized oses | |
Razaghi et al. | Host-compiled multicore RTOS simulator for embedded real-time software development | |
JP5178778B2 (en) | Virtual machine and CPU allocation method | |
Neves et al. | Scheduling mapreduce jobs in HPC clusters | |
CN102508696A (en) | Asymmetrical resource scheduling method and device | |
Suzuki et al. | Real-time GPU resource management with loadable kernel modules | |
Tellabi et al. | Empirical study of real-time hypervisors for industrial systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161221 |
|
RJ01 | Rejection of invention patent application after publication |