CN115237589A - SR-IOV-based virtualization method, device and equipment - Google Patents
SR-IOV-based virtualization method, device and equipment Download PDFInfo
- Publication number
- CN115237589A CN115237589A CN202210705719.XA CN202210705719A CN115237589A CN 115237589 A CN115237589 A CN 115237589A CN 202210705719 A CN202210705719 A CN 202210705719A CN 115237589 A CN115237589 A CN 115237589A
- Authority
- CN
- China
- Prior art keywords
- resource
- resources
- tasks
- virtualization
- virtualized
- 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012545 processing Methods 0.000 claims abstract description 18
- 238000007726 management method Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 19
- 238000013468 resource allocation Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 abstract description 14
- 230000006870 function Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 9
- 238000013507 mapping Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The disclosure relates to a method, a device and equipment for virtualization based on SR-IOV. The SR-IOV-based virtualization method comprises the following steps: acquiring resource scheduling requests of a plurality of tasks; performing virtualization processing on the resources according to the scheduling request to obtain a plurality of virtualized resources; the multiple virtualized resources are distributed to the multiple tasks, so that the space or time factors are avoided being considered in the resource virtualization process, the corresponding resources can be directly acquired according to the task requirements, virtualization processing is performed according to the acquired resources, the virtualized resources capable of meeting the task requirements of the resources are acquired, and the utilization rate of the resources is improved.
Description
Technical Field
The present disclosure relates to the field of big data processing technologies, and in particular, to a virtualization method, apparatus, and device based on SR-IOV.
Background
The existing super-fusion is that each discrete unit such as network, storage, calculation and the like are combined into a whole by a software definition mode and a virtualization technology, and the overall performance of the system and the utilization rate of hardware are improved by unified calling. The super-fusion technology relies on virtualization of hardware resources and a distributed resource management configuration technology, wherein the virtualization of the hardware resources sends various resources to a Virtual Machine (VM) in a virtualization manner, and the distributed resource management configuration technology schedules all the hardware resources to an upper layer application. However, in the process of virtualizing the hardware resources, the hardware resources may be allocated to the corresponding virtualization processes only through a single aspect of "space" or "time" of the resources, and the resources cannot be scheduled sufficiently, so that the resource utilization rate is low.
Disclosure of Invention
In order to solve the technical problem, the present disclosure provides a virtualization method, apparatus and device based on SR-IOV.
A first aspect of the embodiments of the present disclosure provides a SR-IOV-based virtualization method, including: acquiring resource calling requests of a plurality of tasks; performing virtualization processing on the resources according to the scheduling request to obtain a plurality of virtualized resources; a plurality of virtualized resources are allocated to a plurality of tasks.
In another embodiment, the method comprises: based on the type of the task, a resource matching the type of the task is determined.
In one embodiment, the virtualization of the resource according to the scheduling request includes: for the determined resources, determining the quantity of resource virtualization according to the quantity of tasks matched with the resources in the plurality of tasks; the resources are virtualized into a number of virtualized resources.
In another embodiment, after determining the resource matching the type of the task based on the type of the task, the method further comprises: determining whether the resource is valid based on the target flag bit of the resource; and when the resources are effective, determining the quantity of resource virtualization according to the quantity of the tasks matched with the resources in the plurality of tasks.
A second aspect of the embodiments of the present disclosure provides a SR-IOV-based virtualization management apparatus, including: the request acquisition module is used for acquiring resource calling requests of a plurality of tasks; the resource virtualization module is used for performing virtualization processing on the resources according to the scheduling request to obtain a plurality of virtualized resources; a resource allocation module to allocate the plurality of virtualized resources to the plurality of tasks.
In another embodiment, the apparatus further comprises: and the resource matching module is used for determining the resources matched with the types of the tasks based on the types of the tasks.
In one embodiment, the resource virtualization module comprises: the first resource quantity determining submodule is used for determining the quantity of resource virtualization according to the quantity of tasks matched with the resources in the plurality of tasks for the determined resources; and the resource virtualization submodule is used for virtualizing the resources into a number of virtualized resources.
In another embodiment, the apparatus further comprises: the resource judging module is used for determining whether the resource is effective or not based on the target zone bit of the resource; and the first resource quantity determining submodule is used for determining the quantity of resource virtualization according to the quantity of the tasks matched with the resources in the plurality of tasks for the determined resources when the resources are effective.
A third aspect of the embodiments of the present disclosure provides a mobile terminal device, which includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor may implement the method of the first aspect.
A fourth aspect of embodiments of the present disclosure provides a computer-readable storage medium having a computer program stored therein, which, when executed by a processor, the processor may implement the method of the first aspect described above.
Compared with the prior art, the technical scheme provided by the embodiment of the disclosure has the following advantages:
according to the embodiment of the disclosure, the resource calling requests of the tasks are obtained, the resources are virtualized according to the scheduling requests to obtain the virtualized resources, the virtualized resources are distributed to the tasks, the consideration of space or time factors in the process of resource virtualization is avoided, the corresponding resources can be directly obtained according to the task demands, the virtualized processing is performed according to the obtained resources, the virtualized resources of which the task demands can be solved are obtained, and the utilization rate of the resources is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure.
In order to more clearly illustrate the embodiments or technical solutions in the prior art of the present disclosure, the drawings used in the description of the embodiments or prior art will be briefly described below, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without inventive exercise.
FIG. 1 is a flowchart of a method for SR-IOV based virtualization management according to an embodiment of the present disclosure;
FIG. 2 is a schematic structural diagram of a SR-IOV-based virtualization management device according to an embodiment of the present disclosure;
FIG. 3 is a schematic structural diagram of a SR-IOV-based virtualization management system according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a virtualization management unit according to an embodiment of the present disclosure;
fig. 5 is a schematic structural diagram of a hardware resource mapping scheduling unit according to an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of a computer device in an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order, and/or performed in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based at least in part on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the order or interdependence relationship of the functions performed by the devices, modules or units.
It is noted that references to "a", "an", and "the" modifications in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that "one or more" may be used unless the context clearly dictates otherwise.
The names of messages or information exchanged between devices in the embodiments of the present disclosure are for illustrative purposes only, and are not intended to limit the scope of the messages or information.
In the existing virtualization process of hardware resources, when scheduling the hardware resources, the following problems may occur:
when hardware resource scheduling is performed, existing SR-IOV-based I/O devices often only adopt "time" or "space", and these two methods perform resource scheduling at a larger granularity, where the "time" scheduling method is to schedule the same type of resource at different time periods, and the "space" scheduling method is to physically divide the resource into a plurality of sub-devices with the same function. However, these two resource scheduling methods are more suitable for hardware resources with single function, and when aiming at multi-functional hardware resources, they can only call the single function of the hardware resources, and cannot fully utilize each function included in the hardware resources, resulting in lower resource utilization rate of the multi-functional hardware resources.
In order to solve the above problem, the embodiments of the present disclosure provide a virtualization method, apparatus, and device based on SR-IOV. The following describes a resource scheduling method provided by the embodiment of the present disclosure with reference to fig. 1.
In the disclosed embodiments, the SR-IOV based virtualization method may be performed by an electronic device. Among them, the electronic devices may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., car navigation terminals), wearable devices, and the like, and fixed terminals such as digital TVs, desktop computers, smart home devices, and the like.
The SR-IOV technology is a Virtualization solution scheme based on Physical hardware, and can improve the performance and the extensibility of the Physical I/O device, and virtualize two types of channels, namely, a Physical Function (PF) channel and a Virtual Function (VF) channel.
Fig. 1 shows a flowchart of a SR-IOV-based virtualization method according to an embodiment of the present disclosure.
As shown in FIG. 1, the SR-IOV based virtualization method may include the following steps:
s100, resource scheduling requests of a plurality of tasks are obtained.
In the embodiment of the present disclosure, when a user wants to use a hardware resource to execute a corresponding task function, a resource scheduling request required by the task function to be implemented may be created within a specific program of an electronic device, so that the electronic device may obtain resource scheduling requests of a plurality of tasks, perform a resource scheduling operation for the resource scheduling request, and feed back a resource scheduling result.
The hardware resource may be a computing resource, a storage resource, or a network resource, and the hardware resource may be one or more of the hardware resources, and the function corresponding to a single hardware resource may be one or more of the hardware resources, which is not limited herein.
For example, a user wants to use a computing resource to execute a corresponding computing task Function, a Physical channel (Physical Function) PF is virtualized in an electronic device by using a Single Root I/O Virtualization (SR-IOV) technology, and a computing resource scheduling request required by a computing task to be completed is acquired according to the Physical channel PF, and the electronic device may acquire the computing resource scheduling request, and then schedule a corresponding computing resource according to the computing resource scheduling request.
The computing resource scheduling request may include a scheduling request for a resource of which the computing resource is to implement different functions, which is not limited herein.
And S110, performing virtualization processing on the resources according to the scheduling request to obtain a plurality of virtualized resources.
In this embodiment of the present disclosure, after receiving the scheduling request, the corresponding resource may be selected according to the function to be implemented corresponding to the multiple tasks included in the scheduling request, and perform virtualization processing on the selected corresponding resource, so as to virtualize the resource into multiple virtualized resources corresponding to the function to be implemented by the multiple tasks.
Alternatively, the virtualization process may be a Virtual Function (VF) channel virtualized by a Single Root I/OVirtualization (SR-IOV) technology.
Optionally, multiple VF (Virtual Function) channels corresponding to multiple tasks may be virtualized by using an SR-IOV (Single Root I/O Virtualization) technology, and resources corresponding to the multiple tasks are virtualized by using the multiple VF (Virtual Function) channels, so as to obtain multiple virtualized resources corresponding to functions to be implemented by the multiple tasks.
And S120, distributing the plurality of virtualized resources to a plurality of tasks.
In the embodiment of the disclosure, the functions corresponding to the multiple virtualized resources obtained according to the functions to be completed by the multiple tasks are determined, and the multiple virtualized resources are allocated to the corresponding tasks according to the functions to be completed by the tasks and the functions corresponding to the virtualized resources.
In the embodiment of the disclosure, after the resource scheduling requests of the multiple tasks are obtained, the resources corresponding to the multiple tasks can be obtained according to the resource scheduling requests, the resources are virtualized to obtain multiple virtualized resources corresponding to the multiple tasks, and the multiple virtualized resources are allocated to the corresponding tasks, so that consideration of a space factor or a time factor in a resource virtualization process is avoided, the corresponding resources can be directly obtained according to the task requirements of a user, the virtualized resources of the resources capable of solving the task requirements are obtained, and the utilization rate of the resources is improved.
In other embodiments, to improve the scheduling efficiency of the virtualized resources, before the step S110 is executed, the SR-IOV-based virtualization method includes: based on the type of the task, a resource matching the type of the task is determined.
In the embodiment of the present disclosure, the type of the task may be a computing task that performs computing using computing resources, a storage task that performs storage using storage resources, or a transmission task that performs data transmission using network resources.
For example, the type of the task is a computing task that uses computing resources to perform computation, and a matching computing resource in the resources is determined according to the computing task, and the determined computing resource is scheduled.
In the embodiment of the disclosure, the resource matched with the task is determined according to the type of the task, and the matched resource is scheduled, so that the efficiency of overall resource scheduling is further improved, and a condition is provided for subsequently performing the allocation between the virtualization processing result and the task.
In some embodiments of the present disclosure, virtualizing resources according to a scheduling request includes: for the determined resources, determining the quantity of resource virtualization according to the quantity of tasks matched with the resources in the plurality of tasks; the resources are virtualized into a number of virtualized resources.
Optionally, according to the resource matched to the task type, the resource function required by the function to be completed by the task is obtained, the quantity to be virtualized is determined according to the required resource function and the task quantity, and the matched resource is virtualized into the virtualized resource with the corresponding quantity.
In the embodiment of the disclosure, the number of the tasks matched with the resources is determined, and the resources are virtualized into the corresponding number of virtualized resources, so that the resources can be fully utilized to complete the tasks, and the utilization rate of the resources is improved.
In other embodiments of the present disclosure, after determining, for the type of the task, a resource that matches the type of the task, the SR-IOV-based virtualization management method further includes: determining whether the resource is valid based on the target flag bit of the resource; and when the resources are effective, determining the quantity of resource virtualization according to the quantity of the tasks matched with the resources in the plurality of tasks.
In the embodiment of the present disclosure, the target flag may be determined based on resource identification information extracted from the resource, where the resource identification information at least includes a function type of the resource and a storage location of the resource, which is not limited herein.
For example, a target flag bit of a resource may be determined according to the function type of the extracted resource, whether the resource can solve the corresponding task is determined according to a comparison between the target flag bit and the function type required by the task, when the resource can solve the corresponding task, the resource is valid, a storage location of the valid resource is determined, and the number of virtualized resources is determined according to the number required by the task for the valid resource.
In another embodiment, when determining that the resource matched with the type of the task is invalid according to the target zone bit of the resource, re-determining the corresponding resource based on the task type, extracting the resource identification information according to the re-determined resource, re-determining whether the resource is valid, and repeating the operation until determining that the resource is valid, and determining the number of the resource virtualization.
In the embodiment of the disclosure, the effectiveness of the resource is determined through the target zone bit of the resource, and the quantity of the resource virtualization is determined according to the quantity of the effective resource and the tasks matched with the resource in the plurality of tasks, so that the resource can be effectively utilized, and the utilization rate of the resource is improved.
The embodiment of the present disclosure further provides a SR-IOV-based virtualization management device, which is described below with reference to fig. 2.
In the embodiment of the present disclosure, the virtualization management device may be an electronic device. The electronic devices may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs, PADs, PMPs, in-vehicle terminals (e.g., car navigation terminals), wearable devices, and the like, and fixed terminals such as digital TVs, desktop computers, smart home devices, and the like, among others.
Fig. 2 shows a schematic structural diagram of a virtualization management apparatus based on SR-IOV according to an embodiment of the present disclosure.
As shown in FIG. 2, the SR-IOV based virtualization management device 200 may include a request acquisition module 201, a resource virtualization module 202, and a resource allocation module 203.
The request obtaining module 201 may be configured to obtain resource scheduling requests of a plurality of tasks.
The resource virtualization module 202 may be configured to virtualize a resource according to the scheduling request, resulting in a plurality of virtualized resources.
The resource allocation module 203 may be configured to allocate a plurality of virtualized resources to a plurality of tasks.
In the embodiment of the disclosure, after the resource scheduling requests of the multiple tasks are obtained, the resources corresponding to the multiple tasks can be obtained according to the resource scheduling requests, the resources are virtualized to obtain multiple virtualized resources corresponding to the multiple tasks, and the multiple virtualized resources are allocated to the corresponding tasks, so that consideration of a space factor or a time factor in a resource virtualization process is avoided, the corresponding resources can be directly obtained according to the task requirements of a user, the virtualized resources of the resources capable of solving the task requirements are obtained, and the utilization rate of the resources is improved.
In some embodiments of the present disclosure, the SR-IOV based virtualization management device 200 may further comprise a resource matching module.
The resource matching module may be configured to determine a resource matching the type of the task based on the type of the task.
In some embodiments of the present disclosure, the resource virtualization module may include a first resource quantity determination submodule and a resource virtualization submodule.
The first resource quantity determination submodule may be configured to determine, for the determined resource, a quantity of resource virtualization according to a quantity of tasks of the plurality of tasks that match the resource.
The resource virtualization submodule may be configured to virtualize the resource into a number of virtualized resources.
In some embodiments of the present disclosure, the SR-IOV based virtualization management device 200 may further include a resource determination module and a second resource quantity determination module.
The resource determination module may be configured to determine whether the resource is valid based on a target flag of the resource;
the first resource quantity determining submodule may be configured to determine, when the resource is valid, a quantity of resource virtualization for the determined resource according to a quantity of tasks of the plurality of tasks that match the resource.
It should be noted that the SR-IOV-based virtualization management device 200 shown in fig. 2 may perform each step in the method embodiment shown in fig. 1, and implement each process and effect in the method embodiment shown in fig. 1, which are not described herein again.
The disclosed embodiment also provides a SR-IOV-based virtualization management system, which can execute each step in the method embodiment shown in fig. 1.
As shown in fig. 3, the system includes: the device comprises a resource allocation unit, a virtualization management unit, a data transmission unit and a hardware resource scheduling mapping unit.
The resource allocation unit may be configured to receive the resource scheduling request, find the corresponding hardware resource according to the resource scheduling request, and allocate the appropriate hardware resource to the corresponding functional unit, so as to complete a subsequent virtualized resource allocation task. The resource allocation may be implemented by using a virtual machine monitor (Hypervisor), and the Hypervisor may acquire information included in all hardware resources.
The virtualization management unit may be configured to perform unified management on the resources acquired according to the scheduling request, and perform virtualization processing on the resources according to the scheduling request.
The data transmission unit may be configured to transmit the resource obtained according to the resource scheduling request in each functional unit.
The hardware resource scheduling and mapping unit may be configured to determine a connection relationship between a hardware resource and a virtualized resource, and allocate the determined virtualized resource to a corresponding task.
As shown in fig. 4, in some embodiments of the present disclosure, the virtualization management unit may include: the device comprises a virtual device controller, a state information storage unit and a configuration information scheduling unit.
The virtual device controller may be configured to release resources according to the resource scheduling request.
The state information storage unit may be configured to store information such as execution status, input state, and output state of the resource.
The configuration information scheduling unit may be configured to extract a configuration instruction of a corresponding resource in the request according to the resource scheduling request, and schedule the resource to a corresponding task according to the configuration instruction and the resource scheduling request.
As shown in fig. 5, in some embodiments of the present disclosure, the hardware resource scheduling mapping unit may include: the device comprises a control switch unit, a memory unit, a hardware resource unit, a hardware mapping unit and a control signal processing unit.
The control unit may be used to control the execution state of the resources, e.g. to control the allocation of virtualized resources to corresponding tasks.
The memory unit may be used to provide storage space and cache locations for resources.
The hardware resource unit may be used to provide a variety of hardware resources corresponding to the task type.
The hardware mapping unit may be configured to establish a mapping relationship with a hardware resource according to a task type, determine whether the resource is an effective resource according to the mapping relationship, and determine that the resource is a resource matched with a task when the resource is an effective resource.
The control signal processing unit may be configured to complete the release of the resource according to the control information of the corresponding resource, or cancel the release.
The SR-IOV based virtualization system is further explained below by taking a task type as an example of a computing task.
In the embodiment of the disclosure, the resource allocation unit obtains a plurality of task types as the calculation tasks, and obtains the resource scheduling request according to the calculation task types, where the resource scheduling request includes two types of information, namely a resource configuration instruction and a data instruction. The configuration instruction may include a computing resource required by the computing task, a connection sequence between the computing resources, a storage location of the computing resource in the memory, and a virtual device identifier corresponding to the virtualization operation, and the data instruction may include a scheduling start address of the computing resource. The resource allocation unit allocates the computing resources to the corresponding virtual devices according to the information contained in the configuration instruction, and simultaneously, the storage addresses of the computing resources are converted into the storage addresses of the virtual devices. The data transmission unit sends a data instruction to a Virtual Function (VF) of a Single Root I/O Virtualization (SR-IOV) Virtual machine, so that a computing resource corresponding to the data instruction is subjected to Virtualization operation, the virtualized resource obtained after the Virtualization operation is sent to a hardware resource scheduling mapping unit through a data transmission unit, whether the computing resource is an effective resource or not is detected in the unit, and the resource is set as the effective resource and the distribution of the virtualized resource and a corresponding task is completed after the computing resource is detected as the effective resource. After the allocation is completed, the virtualization management unit is used for setting the state information of the computing resource, storing the state information, sending the resource releasing information and clearing the original state information of the computing resource.
It should be noted that the SR-IOV-based virtualization system described in the present disclosure is only used for explaining the SR-IOV-based virtualization method, and is not limited to only being able to execute the corresponding method by the system, and there may be other systems for executing the SR-IOV-based virtualization method, and the present disclosure is not limited herein.
The embodiment of the present disclosure further provides a computer device, which includes a processor and a memory, where the memory stores a computer program, and when the computer program is executed by the processor, the method of any one of the above embodiments in fig. 1 may be implemented.
For example, fig. 6 is a schematic structural diagram of a computer device in an embodiment of the present disclosure. Referring now in particular to fig. 6, there is shown a schematic block diagram of a computer device 1000 suitable for use in implementing embodiments of the present disclosure. The computer device 1000 in the embodiments of the present disclosure may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a vehicle terminal (e.g., a car navigation terminal), etc., and a fixed terminal such as a digital TV, a desktop computer, etc., which may transmit data using a mobile network. The mobile computer device illustrated in FIG. 6 is only one example and should not impose any limitations on the scope of use or functionality of embodiments of the disclosure.
As shown in fig. 6, the computer apparatus 1000 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 1001 that may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 1002 or a program loaded from a storage device 1008 into a Random Access Memory (RAM) 1003. In the RAM 1003, various programs and data necessary for the operation of the mobile terminal apparatus 1000 are also stored. The processing device 1001, ROM1002, and RAM 1003 are connected to each other by a bus 1004. An input/output (I/O) interface 1005 is also connected to bus 1004.
Generally, the following devices may be connected to the I/O interface 1005: input devices 1006 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; an output device 1007 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage devices 1008 including, for example, magnetic tape, hard disk, and the like; and a communication device 1009. The communication means 1009 may allow the mobile terminal apparatus 1000 to perform wireless or wired communication with other apparatuses to exchange data. While fig. 6 illustrates a computer device 1000 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication means 1009, or installed from the storage means 1008, or installed from the ROM 1002. The computer program, when executed by the processing device 1001, performs the above-described functions defined in the methods of the embodiments of the present disclosure.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (HyperText Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be contained in the mobile terminal device; or may exist separately without being assembled into the mobile terminal device.
The computer readable medium carries one or more computer programs which, when executed by the mobile terminal device, cause the mobile terminal device to: when a mobile data link of the mobile terminal equipment is in an active state, detecting the connectivity of the mobile data link; and if the mobile data link is detected to be out of flow, resetting the mobile data link.
Computer program code for carrying out operations for the present disclosure may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present disclosure may be implemented by software or hardware. Wherein the name of a module in some cases does not constitute a limitation on the module itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems on a chip (SOCs), complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The embodiments of the present disclosure also provide a computer-readable storage medium, where a computer program is stored in the storage medium, and when the computer program is executed by a processor, the method of any embodiment in fig. 1 may be implemented, and the execution manner and the beneficial effect are similar, and are not described herein again.
The embodiments of the present disclosure also provide a computer program product, which includes a computer program, and when the computer program is executed by a processor, the processor can execute the method of any one of the above-mentioned fig. 1 embodiments.
It is noted that, in this document, relational terms such as "first" and "second," and the like, may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising a … …" does not exclude the presence of another identical element in a process, method, article, or apparatus that comprises the element.
The previous description is only for the purpose of describing particular embodiments of the present disclosure, so as to enable those skilled in the art to understand or implement the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (10)
1. A SR-IOV based virtualization method is characterized by comprising the following steps:
acquiring resource scheduling requests of a plurality of tasks;
performing virtualization processing on the resources according to the scheduling request to obtain a plurality of virtualized resources;
allocating the plurality of virtualized resources to the plurality of tasks.
2. The method of claim 1, wherein before virtualizing the resources according to the scheduling request, the method comprises:
and determining the resources matched with the type of the task based on the type of the task.
3. The method according to claim 2, wherein the virtualizing resources according to the scheduling request comprises:
for the determined resources, determining the quantity of the resource virtualization according to the quantity of the tasks matched with the resources in the plurality of tasks;
virtualizing the resource to the number of virtualized resources.
4. The method of claim 3, wherein after determining the resource that matches the type of the task based on the type of the task, the method further comprises:
determining whether the resource is valid based on a target flag of the resource;
and when the resources are effective, determining the quantity of the resource virtualization according to the quantity of the tasks matched with the resources in the plurality of tasks for the determined resources.
5. An SR-IOV based virtualization management device, comprising:
the request acquisition module is used for acquiring resource scheduling requests of a plurality of tasks;
the resource virtualization module is used for performing virtualization processing on the resources according to the scheduling request to obtain a plurality of virtualized resources;
a resource allocation module to allocate the plurality of virtualized resources to the plurality of tasks.
6. The apparatus of claim 5, further comprising:
and the resource matching module is used for determining the resources matched with the types of the tasks based on the types of the tasks.
7. The apparatus of claim 6, wherein the resource virtualization module comprises:
a first resource quantity determining submodule, configured to determine, for the determined resource, a quantity of the resource virtualization according to the quantity of the tasks that are matched with the resource in the plurality of tasks;
a resource virtualization submodule, configured to virtualize the resource into the number of virtualized resources.
8. The apparatus of claim 7, further comprising:
the resource judging module is used for determining whether the resource is effective or not based on the target zone bit of the resource;
and the first resource quantity determining submodule is used for determining the quantity of the resource virtualization according to the quantity of the tasks matched with the resources in the plurality of tasks for the determined resources when the resources are effective.
9. An electronic device, comprising:
a processor;
a memory for storing executable instructions;
wherein the processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the method of any of claims 1-4.
10. A computer-readable storage medium, characterized in that the storage medium stores a computer program which, when executed by a processor, causes the processor to carry out the method of any of the preceding claims 1-4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210705719.XA CN115237589A (en) | 2022-06-21 | 2022-06-21 | SR-IOV-based virtualization method, device and equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210705719.XA CN115237589A (en) | 2022-06-21 | 2022-06-21 | SR-IOV-based virtualization method, device and equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115237589A true CN115237589A (en) | 2022-10-25 |
Family
ID=83669945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210705719.XA Pending CN115237589A (en) | 2022-06-21 | 2022-06-21 | SR-IOV-based virtualization method, device and equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115237589A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116010130A (en) * | 2023-01-30 | 2023-04-25 | 中科驭数(北京)科技有限公司 | Cross-card link aggregation method, device, equipment and medium for DPU virtual port |
CN116915701A (en) * | 2023-08-16 | 2023-10-20 | 中科驭数(北京)科技有限公司 | Data processor-based route acceleration method, system and device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020470A (en) * | 2021-11-09 | 2022-02-08 | 北京字节跳动网络技术有限公司 | Resource allocation method, device, readable medium and electronic equipment |
CN114371926A (en) * | 2022-03-22 | 2022-04-19 | 清华大学 | Refined resource allocation method and device, electronic equipment and medium |
-
2022
- 2022-06-21 CN CN202210705719.XA patent/CN115237589A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020470A (en) * | 2021-11-09 | 2022-02-08 | 北京字节跳动网络技术有限公司 | Resource allocation method, device, readable medium and electronic equipment |
CN114371926A (en) * | 2022-03-22 | 2022-04-19 | 清华大学 | Refined resource allocation method and device, electronic equipment and medium |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116010130A (en) * | 2023-01-30 | 2023-04-25 | 中科驭数(北京)科技有限公司 | Cross-card link aggregation method, device, equipment and medium for DPU virtual port |
CN116010130B (en) * | 2023-01-30 | 2024-04-19 | 中科驭数(北京)科技有限公司 | Cross-card link aggregation method, device, equipment and medium for DPU virtual port |
CN116915701A (en) * | 2023-08-16 | 2023-10-20 | 中科驭数(北京)科技有限公司 | Data processor-based route acceleration method, system and device |
CN116915701B (en) * | 2023-08-16 | 2024-04-19 | 中科驭数(北京)科技有限公司 | Data processor-based route acceleration method, system and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108182111B (en) | Task scheduling system, method and device | |
CN111475235B (en) | Acceleration method, device, equipment and storage medium for function calculation cold start | |
CN115237589A (en) | SR-IOV-based virtualization method, device and equipment | |
CN111221638B (en) | Concurrent task scheduling processing method, device, equipment and medium | |
CN110391938B (en) | Method and apparatus for deploying services | |
CN114020470A (en) | Resource allocation method, device, readable medium and electronic equipment | |
CN112379982B (en) | Task processing method, device, electronic equipment and computer readable storage medium | |
CN113553178A (en) | Task processing method and device and electronic equipment | |
CN116774933A (en) | Virtualization processing method of storage device, bridging device, system and medium | |
CN112306685B (en) | Task isolation method, device, electronic equipment and computer readable medium | |
CN114625536A (en) | Video memory allocation method, device, medium and electronic equipment | |
CN111813541B (en) | Task scheduling method, device, medium and equipment | |
CN111475230B (en) | Application function configuration method and device and electronic equipment | |
CN107045452B (en) | Virtual machine scheduling method and device | |
CN110209466B (en) | Resource allocation method, resource allocation device and storage medium | |
CN116302271A (en) | Page display method and device and electronic equipment | |
CN111694670B (en) | Resource allocation method, apparatus, device and computer readable medium | |
CN113518183A (en) | Camera calling method and device and electronic equipment | |
CN110633141A (en) | Memory management method and device of application program, terminal equipment and medium | |
CN111538721A (en) | Account processing method and device, electronic equipment and computer readable storage medium | |
CN112148448B (en) | Resource allocation method, apparatus, device and computer readable medium | |
CN115185667B (en) | Visual application acceleration method and device, electronic equipment and storage medium | |
CN115225586B (en) | Data packet transmitting method, device, equipment and computer readable storage medium | |
CN115220910B (en) | Resource scheduling method, device and equipment | |
CN115604261B (en) | Cloud network service resource processing method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |