CN115237589A - SR-IOV-based virtualization method, device and equipment - Google Patents

SR-IOV-based virtualization method, device and equipment Download PDF

Info

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
Application number
CN202210705719.XA
Other languages
Chinese (zh)
Inventor
李明
孟繁毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yusur Technology Co ltd
Original Assignee
Yusur Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yusur Technology Co ltd filed Critical Yusur Technology Co ltd
Priority to CN202210705719.XA priority Critical patent/CN115237589A/en
Publication of CN115237589A publication Critical patent/CN115237589A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

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

SR-IOV-based virtualization method, device and equipment
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.
CN202210705719.XA 2022-06-21 2022-06-21 SR-IOV-based virtualization method, device and equipment Pending CN115237589A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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