Resource virtualization processing method and device, computer equipment and storage medium
By building a unified resource model and performing virtualization processing through the DPU identification system, the problem of unified management and efficient scheduling of heterogeneous resources in a cloud computing environment is solved, accurate allocation and dynamic adjustment of resources are achieved, and the resource management efficiency and system performance of the data center are improved.
Patent Information
- Application Number
- CN202510744851.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-05
- Publication Date
- 2025-10-14
AI Technical Summary
In the cloud computing and big data environment, traditional virtualization technology is difficult to ensure real-time performance while taking into account the accuracy of resource allocation. Especially in large-scale data centers, unified management and efficient scheduling of heterogeneous resources are difficult.
The DPU identification system extracts the characteristic attributes of heterogeneous physical resources, builds a unified resource model, performs virtualization processing, generates a unified virtualization layer, and combines resource allocation rules to perform precise resource allocation.
It achieves unified abstraction and management of heterogeneous resources, improves resource utilization, ensures resource support for high-priority applications, dynamically adjusts resource allocation to adapt to real-time needs, and improves resource management efficiency and system performance of data centers.
Smart Images

Figure CN120780402A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of cloud computing technology, and in particular to a resource virtualization processing method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Art
[0002] In cloud computing and big data environments, data centers contain a variety of heterogeneous resources, including computing resources like CPUs, GPUs, and FPGAs; network resources like network cards and switches with varying speeds and protocols; and storage resources like mechanical hard drives and solid-state drives. These resources have varying performance characteristics, operating methods, and management requirements, making unified management and efficient scheduling extremely difficult. While traditional virtualization technologies can virtualize physical resources into resource pools, they lack a unified abstraction for heterogeneous resources, leading to challenges in upper-layer applications and management systems, such as differing interfaces, resource description methods, and operational semantics.
[0003] Currently, traditional technologies have difficulty comprehensively considering multiple dimensions when building a unified virtualization layer and performing resource scheduling, such as the priority of different applications, the real-time usage of resources, the performance characteristics of heterogeneous resources, etc. In addition, in large-scale data center environments, it is difficult to ensure both real-time performance and the accuracy of resource allocation.
[0004] Therefore, there is an urgent need for a resource virtualization processing method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can ensure real-time performance while also balancing the accuracy of resource allocation in a large-scale data center environment. Summary of the Invention
[0005] Based on this, it is necessary to provide a resource virtualization processing method, device, computer equipment, computer-readable storage medium and computer program product that can ensure real-time performance while taking into account the accuracy of resource allocation in a large-scale data center environment to address the above technical problems.
[0006] In a first aspect, the present application provides a resource virtualization processing method, comprising:
[0007] Acquire resource characteristic attributes of heterogeneous physical resources in the DPU identification system, where the types of the heterogeneous physical resources include computing resources, network resources, and storage resources, and construct a unified resource model based on the resource characteristic attributes;
[0008] Virtualizing the heterogeneous physical resources of different computing instances in the unified resource model and executing preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer;
[0009] Obtain resource allocation rules for various heterogeneous physical resources of different computing instances in a unified virtualization layer;
[0010] According to the resource allocation rule, resource allocation processing is performed on the virtual hardware resources.
[0011] In one embodiment, the resource characteristic attributes of the computing resources include: the number of cores, number of threads, main frequency, cache size and supported instruction sets of the central processing unit; the number of stream processors, video memory bandwidth, computing core frequency and supported graphics computing program interface of the graphics processing unit; the number of programmable logic blocks, number of available I / O pins and internal wiring resources of the field programmable gate array;
[0012] The resource characteristic attributes of the network resources include: the transmission rate, number of ports and supported network protocols of the network card; the port forwarding capability, route search speed and support for virtual local area network functions of the switch and router;
[0013] The resource characteristic attributes of the storage resource include hard disk capacity, read / write I / O speed, cache size, and average seek time.
[0014] In one embodiment, the step of constructing a unified resource model based on resource characteristic attributes includes:
[0015] Based on resource feature attributes and unified preset input rules, a unified resource model is constructed, and semantic information is introduced into the unified resource model; wherein the structure of the unified resource model includes a resource type layer, a resource instance layer, and a resource attribute layer.
[0016] In one embodiment, the virtualization processing of heterogeneous physical resources of different computing instances in the unified resource model and the execution of preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer includes:
[0017] The heterogeneous physical resources of different computing instances of virtual machines, containers and bare metal servers in the unified resource model are virtualized, and preset resource mapping rules are executed to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer. The unified virtualization layer includes a computing resource management module, a network resource management module and a storage resource management module, and generates a unified resource operation interface for upper-level applications and management systems.
[0018] In one embodiment, obtaining resource allocation rules for various types of heterogeneous physical resources of different computing instances in the unified virtualization layer includes:
[0019] Continuously collect current resource usage data and application operation status information to extract real-time feature vectors;
[0020] Based on the real-time feature vector, predict the demand of various applications for heterogeneous physical resources in a future preset time period to obtain a resource demand prediction result;
[0021] According to the resource demand prediction result, resource allocation rules for various types of heterogeneous physical resources of different computing instances in the unified virtualization layer are determined.
[0022] In one embodiment, the resource allocation rules include: abstracting the computing resources of different computing instances into computing capacity units, abstracting the network resources of different computing instances into network bandwidth units, and abstracting the storage resources of different computing instances into storage capacity units.
[0023] In a second aspect, the present application further provides a resource virtualization processing device, comprising:
[0024] A data acquisition module is used to acquire resource characteristic attributes of heterogeneous physical resources in the DPU identification system, where the types of heterogeneous physical resources include computing resources, network resources, and storage resources, and to build a unified resource model based on the resource characteristic attributes;
[0025] A data processing module is used to virtualize the heterogeneous physical resources of different computing instances in the unified resource model and execute preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer;
[0026] The data acquisition module is also used to obtain resource allocation rules for various heterogeneous physical resources of different computing instances in the unified virtualization layer;
[0027] The data processing module is further configured to perform resource allocation processing on the virtual hardware resources according to the resource allocation rule.
[0028] In a third aspect, the present application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0029] Acquire resource characteristic attributes of heterogeneous physical resources in the DPU identification system, where the types of the heterogeneous physical resources include computing resources, network resources, and storage resources, and construct a unified resource model based on the resource characteristic attributes;
[0030] Virtualizing the heterogeneous physical resources of different computing instances in the unified resource model and executing preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer;
[0031] obtaining resource allocation rules of various types of heterogeneous physical resources of different computing instances in the unified virtualization layer;
[0032] performing resource allocation processing on the virtual hardware resources according to the resource allocation rules.
[0033] In a fourth aspect, the present application further provides a computer readable storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the following steps:
[0034] obtaining resource characteristic attributes of heterogeneous physical resources in a DPU identification system, types of the heterogeneous physical resources including computing resources, network resources and storage resources, and constructing a unified resource model based on the resource characteristic attributes;
[0035] performing virtualization processing on the heterogeneous physical resources of different computing instances in the unified resource model, and performing a preset resource mapping rule to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer;
[0036] obtaining resource allocation rules of various types of heterogeneous physical resources of different computing instances in the unified virtualization layer;
[0037] performing resource allocation processing on the virtual hardware resources according to the resource allocation rules.
[0038] In a fifth aspect, the present application further provides a computer program product comprising a computer program, the computer program being executed by a processor to implement the following steps:
[0039] obtaining resource characteristic attributes of heterogeneous physical resources in a DPU identification system, types of the heterogeneous physical resources including computing resources, network resources and storage resources, and constructing a unified resource model based on the resource characteristic attributes;
[0040] performing virtualization processing on the heterogeneous physical resources of different computing instances in the unified resource model, and performing a preset resource mapping rule to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer;
[0041] obtaining resource allocation rules of various types of heterogeneous physical resources of different computing instances in the unified virtualization layer;
[0042] performing resource allocation processing on the virtual hardware resources according to the resource allocation rules.
[0043] The resource virtualization processing method, device, computer equipment, computer readable storage medium and computer program product can identify heterogeneous physical resources (including computing resources, network resources and storage resources) in a system and extract their characteristic attributes through a DPU, construct a unified resource model, and realize unified abstraction and management of heterogeneous resources. On this basis, the resources of different computing instances (such as virtual machines, containers and bare metals) in the unified resource model are subjected to virtualization processing, and are converted into a unified virtual resource form according to a preset resource mapping rule to generate a unified virtualization layer. This process not only breaks down the barriers between different resource types, but also simplifies the complexity of resource management and improves resource utilization. Further, by obtaining the resource allocation rule in the unified virtualization layer and allocating virtual hardware resources according to the rule, accurate resource scheduling can be realized to ensure that high-priority applications obtain sufficient resource support, and the resource allocation is dynamically adjusted to adapt to real-time needs. In summary, this technical solution significantly improves the resource management efficiency, system performance and flexibility of the data center, and enhances the overall adaptability and stability of the system. BRIEF DESCRIPTION OF DRAWINGS
[0044] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related art, the drawings needed to be used in the description of the embodiments of the present application or the related art will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other related drawings can also be obtained without creative labor.
[0045] Figure 1 An application environment diagram of the resource virtualization processing method in an embodiment;
[0046] Figure 2 A flowchart of the resource virtualization processing method in an embodiment;
[0047] Figure 3 A flowchart of the resource virtualization processing method in another embodiment;
[0048] Figure 4 A first module interaction diagram of the DPU constructing a virtual resource architecture in the most detailed embodiment;
[0049] Figure 5 A second module interaction diagram of the DPU constructing a virtual resource architecture in the most detailed embodiment;
[0050] Figure 6 A structural block diagram of the resource virtualization processing device in an embodiment;
[0051] Figure 7 An internal structure diagram of the computer equipment in an embodiment. DETAILED DESCRIPTION
[0052] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0053] It should be noted that the terms "first", "second", etc. used in this application may be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "including" and "having" used in this application and any variations thereof are intended to cover non-exclusive inclusions. The term "plurality" used in this application refers to two or more. The term "and / or" used in this application refers to one of the solutions or any combination of multiple solutions.
[0054] The resource virtualization processing method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown, server 102 communicates with server 104 via a network. The data storage system can store data that server 104 needs to process. The data storage system can be integrated on server 104 or placed on the cloud or other network servers.
[0055] Server 104 obtains resource characteristic attributes of heterogeneous physical resources in the DPU identification system through server 102. The types of heterogeneous physical resources include computing resources, network resources and storage resources, and a unified resource model is constructed based on the resource characteristic attributes; server 104 virtualizes the heterogeneous physical resources of different computing instances in the unified resource model, and executes preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer; server 104 obtains resource allocation rules for various types of heterogeneous physical resources of different computing instances in the unified virtualization layer through server 102; server 104 performs resource allocation processing on virtual hardware resources according to the resource allocation rules.
[0056] Among them, server 102 / server 104 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services.
[0057] In an exemplary embodiment, Figure 2 As shown, a resource virtualization processing method is provided, which is applied to Figure 1 The server 104 in the example is used as an example to illustrate the method, which includes the following steps S202 to S208.
[0058] Step S202: Obtain resource characteristic attributes of heterogeneous physical resources in the DPU identification system. The types of heterogeneous physical resources include computing resources, network resources, and storage resources. A unified resource model is constructed based on the resource characteristic attributes.
[0059] Specifically, the DPU (Data Processing Unit), as a dedicated hardware device, possesses powerful data processing and resource management capabilities. The DPU extracts key characteristic parameters for each type of heterogeneous physical resource, which are used to describe the resource's performance, capabilities, and characteristics. It can identify various heterogeneous physical resources in the system, including:
[0060] Computing resources: such as general-purpose CPU cores, graphics processing units (GPUs), field-programmable gate arrays (FPGAs), etc.
[0061] Network resources: such as network cards, switches, routers with different speeds and protocols, and the network links formed between them.
[0062] Storage resources: such as mechanical hard drives, solid-state drives, memory, and various storage arrays.
[0063] Based on the extracted resource characteristics, the DPU constructs a unified resource model. The model structure consists of multiple layers and modules, as follows:
[0064] Resource type layer: Clarify the location and relationship of different types of resources in the model, and clearly describe and organize each type of resource.
[0065] Resource instance layer: Creates a corresponding record item for each specific heterogeneous resource, carrying its detailed information, including different computing instances such as virtual machines, containers, and bare metal.
[0066] Resource attribute layer: specifies unified attribute names, data types, and value ranges to ensure that the attribute descriptions of all resources follow consistent specifications. For example:
[0067] Compute resource attributes such as the number of cores and main frequency are uniformly represented using integer types, with a specified range of values. Network resource bandwidth attributes are measured using bandwidth units. Storage resource capacity attributes are uniformly converted to bytes.
[0068] Step S204 , virtualizing the heterogeneous physical resources of different computing instances in the unified resource model, and executing preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form, thereby obtaining a unified virtualization layer.
[0069] Specifically, in cloud computing and big data environments, computing resources typically exist in different forms, including:
[0070] Virtual Machine (VM): An independent operating system instance running on a virtualization platform with independent virtual CPU, memory, network interface, and storage devices.
[0071] Container: Based on operating system-level virtualization technology, it shares the host machine's operating system kernel but has an independent file system, network namespace, etc.
[0072] Bare Metal Server: An operating system instance that runs directly on physical hardware without going through a virtualization layer.
[0073] The physical resources in these computing instances (such as CPU, memory, network, and storage) have different characteristics, performance, and management methods, and are therefore called heterogeneous physical resources.
[0074] Virtualization is the process of abstracting physical resources into virtual resources. Specifically, the DPU (Data Processing Unit) virtualizes heterogeneous physical resources through the following steps:
[0075] In one embodiment, physical resources in different computing instances are abstracted into standardized virtual resource forms. For example:
[0076] Computing resources: CPU cores, GPU computing capabilities, etc. are abstracted as "computing power units".
[0077] Network resources: Network card bandwidth, network interface, etc. are abstracted into "network bandwidth units".
[0078] Storage resources: Hard disk capacity, storage performance, etc. are abstracted into "storage capacity units".
[0079] Resource mapping: Mapping the heterogeneous physical resources of different computing instances into a unified virtual resource system based on preset resource mapping rules. For example:
[0080] Map the number of CPU cores, memory size, etc. of the virtual machine into a unified "computing capability unit".
[0081] Maps the network bandwidth requirements of a container into "network bandwidth units".
[0082] Map the storage resources of the bare metal server to storage capacity units.
[0083] Through the above virtualization processing and resource mapping, the DPU builds a unified virtualization layer. The main functions of the unified virtualization layer include:
[0084] Unified resource management: Unify the management of heterogeneous physical resources of different computing instances and provide a unified resource operation interface.
[0085] Resource allocation and scheduling: Dynamically allocate and schedule virtual resources based on application requirements and resource allocation rules.
[0086] Performance optimization: Improve the overall performance and resource utilization of the system by optimizing resource allocation and scheduling strategies.
[0087] Step S206: Obtain resource allocation rules for various types of heterogeneous physical resources of different computing instances in the unified virtualization layer.
[0088] Specifically, resource allocation rules refer to how resources are allocated appropriately based on different computing instances and resource types within the unified virtualization layer. These rules typically include the following:
[0089] Priority rules: Determine the priority of resource allocation based on the importance and urgency of the application. For example, high-priority applications may be given priority to obtain more computing resources or network bandwidth.
[0090] Resource requirement rules: Allocate appropriate resources based on the actual needs of the application. For example, an application that requires high computing power may be allocated more CPU cores, while an application that requires high bandwidth may be allocated more network resources.
[0091] Load balancing rules: Dynamically adjust resource allocation based on the overall system load to avoid overloading some nodes while others are idle.
[0092] Performance optimization rules: Optimize resource allocation based on the performance requirements of the application to improve the overall performance of the system.
[0093] Security isolation rules: Ensure resource isolation between different computing instances to prevent data leakage and malicious attacks.
[0094] Step S208: performing resource allocation processing on the virtual hardware resources according to the resource allocation rule.
[0095] Specifically, virtual hardware resources refer to resources abstracted by virtualization technology. They are virtual representations of physical hardware resources. These resources include:
[0096] Virtual CPU: Virtualized CPU cores and computing power.
[0097] Virtual memory: virtualized memory resources.
[0098] Virtual Network Interface: Virtualized network interface and bandwidth.
[0099] Virtual storage device: virtualized storage resources, such as virtual hard disks and virtual storage volumes.
[0100] The resource allocation process refers to allocating virtual hardware resources to different computing instances according to resource allocation rules. This process typically includes the following steps:
[0101] Resource request: A computing instance (such as a virtual machine, container) sends a resource request to the unified virtualization layer, including the type and quantity of resources required.
[0102] Resource evaluation: The unified virtualization layer evaluates the rationality of the request according to the resource allocation rules and checks whether there are enough resources available for allocation in the system.
[0103] Resource allocation: According to the resource allocation rules, virtual hardware resources are allocated to the requesting computing instance. For example: according to the priority rule, the resource request of high-priority application is satisfied first. According to the demand matching rule, the required CPU core number, memory size, network bandwidth and storage capacity are allocated to each application. According to the load balancing rule, resources are allocated to nodes with lower load to optimize overall resource utilization.
[0104] Resource update: After resource allocation is completed, the resource allocation table is updated to record the allocation of resources for subsequent management and scheduling.
[0105] Resource monitoring: Continuously monitor the usage of resources and dynamically adjust resource allocation based on real-time data to ensure rational use of resources.
[0106] In the above resource virtualization processing method, the DPU identifies the heterogeneous physical resources (including computing resources, network resources and storage resources) in the system and extracts their characteristic attributes, builds a unified resource model, and realizes the unified abstraction and management of heterogeneous resources. On this basis, the resources of different computing instances (such as virtual machines, containers, bare metal) in the unified resource model are virtualized and converted into a unified virtual resource form according to the preset resource mapping rules, generating a unified virtualization layer. This process not only breaks down the barriers between different resource types, but also simplifies the complexity of resource management and improves resource utilization. Further, by obtaining the resource allocation rules in the unified virtualization layer and allocating virtual hardware resources accordingly, precise resource scheduling can be achieved to ensure that high-priority applications have sufficient resource support, while dynamically adjusting resource allocation to adapt to real-time needs. In summary, this technical solution significantly improves the resource management efficiency, system performance and flexibility of the data center, enhancing the overall adaptability and stability of the system.
[0107] In an exemplary embodiment, the resource characteristic attributes of the computing resources include: the number of cores, the number of threads, the main frequency, the cache size, and the supported instruction set of the central processing unit; the number of stream processors, the memory bandwidth, the computing core frequency, and the supported graphics computing program interface of the graphics processing unit; the number of programmable logic blocks, the number of available I / O pins, and the internal wiring resources of the field programmable gate array;
[0108] The resource characteristic attributes of the network resources include: the transmission rate, the number of ports, and the supported network protocols of the network card; the port forwarding capability, the route lookup speed, and the support for virtual local area network functions of both switches and routers;
[0109] The resource characteristic attributes of the storage resources include the capacity size, the read / write I / O speed, the cache size, and the average seek time of the hard disk.
[0110] Specifically, 1. The computing resources mainly include central processing units (CPUs), graphics processing units (GPUs), and field programmable gate arrays (FPGAs). Their characteristic attributes are as follows:
[0111] (1) Central processing unit (CPU):
[0112] Core number: The number of independent processing units in the CPU. The more cores, the stronger the ability to handle multiple tasks.
[0113] Thread number: The number of concurrent threads supported by the CPU. The thread number is usually equal to or greater than the core number, and the CPU supporting the hyper-threading technology can handle more tasks at the same time.
[0114] Main frequency: The clock frequency of the CPU, usually measured in GHz. The higher the main frequency, the more instructions the CPU can process in a unit of time.
[0115] Cache size: The size of the CPU cache, usually divided into L1, L2, and L3 caches. The larger the cache, the faster the CPU accesses data, thereby improving performance.
[0116] Supported instruction set: The type of instruction set supported by the CPU, such as x86, ARM, etc. Different instruction sets determine the type and efficiency of instructions that the CPU can execute.
[0117] (2) Graphics processing unit (GPU):
[0118] Stream processor number: The number of units in the GPU for parallel processing. The more stream processors, the stronger the parallel computing capability of the GPU, suitable for tasks such as graphics rendering and deep learning.
[0119] Memory bandwidth: The transfer rate of GPU memory, usually measured in GB / s. The higher the memory bandwidth, the faster the GPU can read and write data, thereby improving graphics processing performance.
[0120] Compute core frequency: The clock frequency of the GPU's compute core, usually measured in MHz or GHz. The higher the compute core frequency, the greater the GPU's computing power.
[0121] Supported graphics computing programming interfaces: Programming interfaces supported by the GPU, such as CUDA and OpenCL. These interfaces determine the programming models and application types that the GPU can support.
[0122] (3) Field Programmable Gate Array (FPGA):
[0123] Number of programmable logic blocks: The number of programmable logic units in the FPGA. The more logic blocks there are, the more complex the logic functions the FPGA can implement.
[0124] Available I / O pins: The number of input and output pins on the FPGA that can be used to connect to external devices. The more I / O pins there are, the more powerful the FPGA's ability to interact with external devices.
[0125] Internal routing resources: These are the routing resources within the FPGA used to connect different logic blocks. The more routing resources there are, the more flexible the FPGA's internal connections.
[0126] 2. Network resources mainly include network cards, switches, and routers. Their characteristics and attributes are as follows:
[0127] (1) Network card:
[0128] Transfer rate: The maximum data transfer rate supported by the network card, usually measured in Mbps or Gbps. The higher the transfer rate, the greater the data transfer capability of the network card.
[0129] Number of ports: The number of network interfaces available on the network card. The more ports the network card has, the more devices it can connect to.
[0130] Supported network protocols: Network communication protocols supported by the network card, such as TCP / IP, UDP, etc. Different protocols determine the type of network communication that the network card can support.
[0131] (2) Switches and routers:
[0132] Port forwarding capability: The port data forwarding rate that a switch or router can handle, usually measured in pps (packets per second) or bps (bits per second). The higher the port forwarding capability, the higher the performance of the network device.
[0133] Route lookup speed: This refers to the speed at which a router searches its routing table and determines the path for a packet. The faster the route lookup speed, the more efficient the router's processing.
[0134] Virtual Local Area Network (VLAN) support: This indicates the device's support for VLANs. VLAN-enabled devices can better achieve logical network segmentation and isolation.
[0135] 3. Storage resources mainly include hard disks. Their characteristics and attributes are as follows:
[0136] Capacity: The amount of data a hard drive can store, usually measured in GB or TB. The larger the capacity, the more data the hard drive can store.
[0137] I / O speed: The speed at which a hard drive reads and writes data, typically measured in MB / s. The faster the I / O speed, the more efficient the hard drive's data access.
[0138] Cache Size: The hard drive's cache capacity, usually measured in MB. A larger cache size allows the hard drive to temporarily store more data, improving read and write performance.
[0139] Average seek time: The average time it takes for the hard drive head to move to the target data location, usually measured in milliseconds. The shorter the seek time, the faster the hard drive access speed.
[0140] In this embodiment, the characteristic attributes of different types of resources are standardized to facilitate management and scheduling within a unified framework. These attributes enable quantitative evaluation of resource performance, leading to a better understanding of resource capabilities and limitations. Appropriate resources can be allocated based on application requirements, improving resource utilization and system performance. By monitoring real-time data on these attributes, resource allocation can be dynamically adjusted to accommodate different workloads and application scenarios. Based on these attributes, more efficient resource scheduling algorithms can be designed to improve overall system performance and resource utilization.
[0141] In an exemplary embodiment, building a unified resource model based on resource feature attributes includes:
[0142] Based on resource feature attributes and unified preset input rules, a unified resource model is constructed, and semantic information is introduced into the unified resource model; wherein, the structure of the unified resource model includes a resource type layer, a resource instance layer, and a resource attribute layer.
[0143] Specifically, unified pre-defined input rules refer to the standards and methods for integrating different types of resource attributes into a unified model. Pre-defined input rules define how these attributes are converted into a unified format and unit of measurement for management and scheduling within the unified resource model. For example, the performance of all computing resources can be uniformly expressed as "computing capacity units," and the performance of all network resources can be uniformly expressed as "network bandwidth units."
[0144] Semantic information refers to the relationships between resources and the meaning of their attributes. For example, it defines the relationship between a computing resource attribute and the performance of a specific application, explaining how changes in the attribute value affect the application's running speed; it also describes the connection relationships between different network ports and the network topology. Introducing semantic information allows the model to go beyond a simple list of attributes and better reflect the inherent logic and interactions of resources.
[0145] The structure of the Unified Resource Model consists of three main layers:
[0146] The resource type layer clarifies the location and relationships of different resource types within the model. It categorizes and organizes resources, providing a clear and coherent description. For example, resources are divided into three categories: computing resources, network resources, and storage resources, and further subdivided into categories such as CPU, GPU, and FPGA.
[0147] The resource instance layer creates a corresponding record for each specific heterogeneous resource. It carries detailed information about each resource instance, including the specific configuration and status of different computing instances such as virtual machines, containers, and bare metal.
[0148] The resource attribute layer specifies unified attribute names, data types, and value ranges. This ensures that all resource attribute descriptions adhere to consistent specifications. For example, attributes such as the number of cores and main frequency of computing resources are uniformly represented as integers with a specified range of values. Network resource bandwidth attributes are measured using bandwidth units.
[0149] By building a unified resource model based on resource attributes and unified preset input rules, and introducing semantic information, different types of resources can be managed and scheduled uniformly within the same model, reducing the management complexity associated with varying resource types. Through unified attribute descriptions and measurement units, resource performance and capabilities are standardized, facilitating quantitative evaluation and comparison across the system. The introduction of semantic information enables the system to better understand the relationships and interactions between resources, enabling the design of more efficient resource scheduling algorithms and improving overall system performance and resource utilization. The unified resource model supports dynamic adjustment of resource allocation, enabling flexible resource scheduling based on real-time resource usage and application requirements.
[0150] In an exemplary embodiment, heterogeneous physical resources of different computing instances in a unified resource model are virtualized, and preset resource mapping rules are executed to map the heterogeneous physical resources of different computing instances into a unified virtual resource form, thereby obtaining a unified virtualization layer, including:
[0151] The heterogeneous physical resources of different computing instances of virtual machines, containers and bare metal servers in the unified resource model are virtualized, and the preset resource mapping rules are executed to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer. The unified virtualization layer includes a computing resource management module, a network resource management module and a storage resource management module, and generates a unified resource operation interface for upper-level applications and management systems.
[0152] Specifically, the unified virtualization layer is an abstraction layer that unifies the management of heterogeneous physical resources across different computing instances and provides a unified resource operation interface. Unified virtual resource form refers to the conversion of heterogeneous physical resources into a unified virtual resource form through virtualization processing and resource mapping rules. These virtual resources include:
[0153] Computing resources: such as virtual CPU cores and virtual memory. Network resources: such as virtual network interfaces and virtual bandwidth. Storage resources: such as virtual hard disks and virtual storage volumes.
[0154] The composition of the unified virtualization layer: Computing resource management module: responsible for allocating, scheduling and recycling "computing capacity units" to ensure the reasonable allocation and efficient utilization of computing resources among different computing instances.
[0155] Network resource management module: realizes flow control, routing management and network topology optimization of "network bandwidth unit" to ensure smooth and stable network communication.
[0156] Storage resource management module: responsible for the allocation of "storage capacity units", data storage layout management and storage performance optimization to meet the diverse storage resource requirements of different applications.
[0157] This provides a unified resource operation interface for upper-layer applications and management systems, including: A resource request interface allows upper-layer applications to request corresponding virtual resources by passing parameters in a unified format. A resource release interface allows applications to conveniently return previously requested resources after completing their tasks. A resource query interface allows upper-layer applications to query information such as the current availability of resources and the usage status of allocated resources.
[0158] This embodiment simplifies the complexity of resource management by converting heterogeneous physical resources into a unified virtual resource format. The unified virtualization layer provides an efficient resource scheduling platform that quickly responds to resource requests and allocates resources according to pre-set rules. It supports multiple computing instances and heterogeneous resources, enabling rapid adaptation to diverse business needs and application scenarios. By optimizing resource allocation and scheduling strategies, the overall system performance and resource utilization are improved. Through a unified resource operation interface, upper-layer applications and management systems can conveniently manage and operate resources without having to worry about the specific implementation details of the underlying resources.
[0159] In an exemplary embodiment, Figure 3 As shown, resource allocation rules for various heterogeneous physical resources of different computing instances in the unified virtualization layer are obtained, including:
[0160] Step S302: continuously collect current resource usage data and application running status information, and extract real-time feature vectors;
[0161] Step S304: predicting the demand of various applications for heterogeneous physical resources within a preset time period in the future based on the real-time feature vectors to obtain a resource demand prediction result;
[0162] Step S306 : determining resource allocation rules for various types of heterogeneous physical resources of different computing instances in the unified virtualization layer according to the resource demand prediction result.
[0163] Specifically, resource usage data includes metrics such as CPU utilization, memory usage, network bandwidth usage, and storage I / O. This data reflects current resource usage. Application status information includes information such as application starts, stops, and load changes. This information reflects application performance and changes in resource demand. The system continuously collects this data and information through the DPU's built-in monitoring tools and interactive interfaces with various computing instances and resource management modules.
[0164] Extract feature vectors from the massive amount of collected raw data that reflect resource usage characteristics and application requirements. Feature vectors include resource usage and application requirement characteristics. For example, computing resource characteristics include average CPU utilization, peak utilization, and load change rate; network resource characteristics include network traffic self-similarity and traffic burstiness; and storage resource characteristics include storage capacity growth trends and the distribution of read / write hotspots. These feature vectors are extracted from the raw data through methods such as data cleaning and feature engineering.
[0165] Leveraging machine learning algorithms, we predict the future demand for heterogeneous physical resources by various applications based on real-time feature vectors. Specifically, we select appropriate machine learning algorithms, such as time series models and LSTM, to predict resource usage trends. We use classification models such as decision trees, random forests, and multi-layer perceptrons to categorize and recommend resource requirements. Finally, we employ reinforcement learning algorithms to optimize resource allocation. Based on patterns and regularities learned from historical data, we predict the future demand for computing, network, and storage resources by various applications, generating detailed resource demand forecasts.
[0166] Based on resource demand forecasts, resource allocation rules for various heterogeneous physical resources across different computing instances within the unified virtualization layer are determined. These resource allocation rules include resource allocation priorities, strategies, and methods. For example, resource requirements for high-priority applications are prioritized. Based on forecasts, sufficient computing, network, and storage resources are reserved for these applications in advance. Resource allocation tasks are evenly distributed across the system based on the load of each computing node, network link, and storage device. Flexible resource allocation is performed based on changing resource demand trends, dynamically adjusting resource allocation to keep the load on each node within a reasonable range.
[0167] In this embodiment, resource demand prediction using a machine learning algorithm makes resource allocation more scientific and rational. Dynamic resource allocation is adjusted based on the prediction results, improving the system's flexibility and adaptability. By optimizing resource allocation, the overall system performance and resource utilization are improved. Unified resource allocation rules simplify the complexity of resource management.
[0168] The most detailed embodiment of this application is:
[0169] Step 1: The DPU identifies various computing resources, network resources, and storage resources in the system, extracts the features of these heterogeneous resources, and builds a unified resource model based on the extracted feature attributes;
[0170] like Figure 4As shown, computing resources include general-purpose CPU cores, graphics processing units (GPUs), field-programmable gate arrays (FPGAs), and other components. For each computing unit, key feature parameters are extracted. For CPUs, features such as the number of cores, number of threads, main frequency, cache size, and supported instruction sets are extracted; for GPUs, features such as the number of stream processors, memory bandwidth, compute core frequency, and supported graphics computing APIs are extracted; and for FPGAs, features such as the number of programmable logic blocks, available I / O pins, and internal wiring resources are extracted. Network resources include various types of network cards, switches, routers, and the network links formed by their connections. Different network cards have different characteristics such as transmission rates, supported network protocols, and operating modes; switches and routers have different key attributes such as number of ports, switching capacity, and routing table capacity. For network card resources, metrics such as transmission rate, number of ports, and supported network protocols are extracted; for switches and routers, features such as port forwarding capability, route lookup speed, and support for network features such as virtual local area networks are extracted. Storage resources include different types of hard drives, memory, and various storage arrays. Features such as hard drive capacity, read and write I / O speeds, cache size, and average seek time are extracted.
[0171] The constructed resource model structure comprises multiple layers and modules, divided into the resource type layer, the resource instance layer, and the resource attribute layer. At the resource type layer, the location and relationships of different resource types within the model are clearly defined, providing a clear and organized description and organization of each resource. At the resource instance layer, corresponding records are created for each specific heterogeneous resource, containing detailed information about it, including different compute instances such as virtual machines, containers, and bare metal. At the resource attribute layer, unified attribute names, data types, and value ranges are specified to ensure consistent attribute descriptions for all resources. Feature attributes extracted from different heterogeneous resources are integrated into the resource model according to unified rules. For example, attributes such as the number of cores and main frequency of computing resources are uniformly represented as integers with a specified value range. Bandwidth attributes of network resources are measured in bandwidth units, and capacity attributes of storage resources are uniformly converted to bytes. Attributes with similar functions but different names are standardized. For example, different computational power metrics for computing resources are converted, converted, or equivalently converted into a common computational power metric and incorporated into the resource model, facilitating horizontal comparison and comprehensive evaluation within the unified model. Introducing semantic information into the resource model clearly expresses the relationships between different resources and the meaning of resource attributes. For example, defining the relationship between a computing resource attribute and specific application performance, explaining how changes in the attribute value affect the application's running speed; for network resources, describing semantic information such as the connection relationship between different ports and the network topology, makes the model more than a simple list of attributes, but more representative of the inherent logic and interactions of resources.
[0172] Specifically, such as Figure 4 As shown, the DPU has several functions in the process of building a virtual resource pool. For example, the DPU features powerful hardware acceleration capabilities, enabling it to offload virtualization-related tasks previously handled by the CPU. Through hardware acceleration, the DPU significantly speeds up these tasks, reducing the CPU's burden and allowing the CPU to focus on more critical business logic. The DPU abstracts underlying physical resources, converting various types of physical resources into virtual resources that the virtualization layer can understand and manage. It monitors physical resource usage in real time, including metrics such as CPU utilization, memory usage, and network bandwidth usage. Based on this monitoring data, the DPU interacts with the virtualization layer to dynamically schedule resources. The DPU provides secure isolation between the virtualization layer and physical resources, ensuring resource isolation between different virtual instances and preventing data leaks and malicious attacks.
[0173] Step 2: Use DPU virtualization technology to abstract and transform the resources of different computing instances, such as virtual machines, containers, and bare metal, in the unified resource model. Formulate and implement resource mapping rules to map the resources of different computing instances into a unified virtual resource form, generating a unified virtualization layer.
[0174] like Figure 5 The specific operations include:
[0175] 1. Determine the configuration parameters of virtual hardware resources based on analysis of virtual machine configuration files and operational status; analyze container resource requests and limits within the container orchestration platform; and assess the physical hardware resource status of bare metal resources. Based on the analysis of virtual machines, containers, and bare metal resources, perform resource abstraction. Specifically, abstract the computing resources of different compute instances into comparable "computing capacity units," abstract the network resources of various compute instances into "network bandwidth units," and abstract the storage resources of different compute instances into "storage capacity units," thereby forming abstraction rules.
[0176] 2. Based on the abstract rules formed, the virtual machine's resources are mapped into a unified virtual resource form. Based on the container's resource requests and restrictions, its CPU, network, and storage resources are mapped into a unified virtual resource system. The physical resources of the bare metal server are mapped after precise performance evaluation and abstract conversion.
[0177] 3. Based on the above resource abstraction and mapping operations, a unified virtualization layer is constructed in the DPU. The unified virtualization layer includes a computing resource management module, which is responsible for allocating, scheduling, and recycling "computing capacity units" to ensure the rational allocation and efficient utilization of computing resources among different computing instances; a network resource management module, which implements flow control, routing management, and network topology optimization for "network bandwidth units" to ensure smooth and stable network communications; and a storage resource management module, which is responsible for allocating "storage capacity units", data storage layout management, and storage performance optimization to meet the diverse storage resource requirements of different applications.
[0178] 4. Generate unified resource operation interfaces for upper-layer applications and management systems, including resource request interfaces, resource release interfaces, and resource query interfaces. The resource request interface allows upper-layer applications to request corresponding virtual resources by passing parameters in a unified format. The DPU's unified virtualization layer allocates appropriate resources to the application based on the interface request, the system's resource status, and allocation policy, and returns the allocation results. The resource release interface is used to conveniently return previously requested resources after the application completes its task. The unified virtualization layer promptly reclaims these resources for reallocation to other applications in need. The resource query interface provides upper-layer applications with the ability to query information such as the current available resources and the usage status of allocated resources, enabling applications to understand dynamic resource changes in real time and make reasonable resource planning and optimization decisions. At the same time, the interface adaptation module ensures that these unified interfaces can seamlessly integrate with the resource management mechanisms of different computing instances. This allows upper-layer applications to interact with different computing instances without having to worry about the specific implementation details and differences of the underlying resources. They can simply use the unified interface to conveniently manage and operate various resources, effectively improving the system's usability and resource management efficiency.
[0179] Step 3: Use machine learning algorithms to intelligently schedule various resources of different computing instances in the generated unified virtualization layer;
[0180] 1. Data acquisition and preprocessing: Within a unified virtualization layer, the DPU's built-in monitoring tools and interactive interfaces with various computing instances and resource management modules are used to obtain usage data for various resources. Computing resources include CPU utilization, instruction execution frequency, number of threads, and GPU utilization for each virtual machine, container, and bare metal instance. Network resources include inbound and outbound traffic rates, packet transmission latency, number of connections, and network protocol distribution for each virtual network interface. Storage resources include disk read and write bandwidth, IOPS, storage capacity usage, and file system metadata operation frequency. The large amount of raw data collected is cleaned to remove outliers, duplicate data, and missing data.
[0181] 2. Extract target features based on preprocessed data: Target features include resource usage and application demand characteristics. Computing resource characteristics include average CPU utilization, peak utilization, load change rate, CPU idle time ratio, and the proportion of different computing task types. Network resource characteristics include network traffic self-similarity, traffic burstiness, trends in the proportion of traffic from different protocols, and the frequency and location of network congestion points. Storage resource characteristics include storage capacity growth trends, read / write hotspot distribution characteristics, temporal and spatial locality of data access, and storage media busyness. These characteristics can reflect resource usage characteristics and potential demand from different perspectives, providing valuable input information for machine learning models.
[0182] 3. The machine learning algorithm selected here is determined based on the different prediction targets of resources. For the prediction of resource usage trends, time series models, LSTM, etc. are used; for the classification and recommendation of resource requirements, classification models such as decision trees, random forests, and multi-layer perceptrons are used; for the optimization problem of resource allocation, reinforcement learning algorithms are used to learn the optimal resource allocation strategy through the interaction between the agent and the environment. This embodiment can construct different corresponding models according to different prediction targets. The data set is divided into a training set, a validation set, and a test set. Similar to the existing technology, the training set is used to train the selected machine learning model, and the trained model is finally obtained through optimization evaluation.
[0183] 4. During system operation, current resource usage data and application status information are continuously collected. Using the same feature engineering methods as in the training phase, real-time feature vectors are extracted as input to the machine learning model. These real-time feature vectors are fed into the trained machine learning model. Based on the patterns and patterns learned from historical data, the model predicts the future demand for heterogeneous resources by various applications, including specific metrics such as the number of CPU cores required for computing resources, the required network bandwidth, and storage capacity growth trends, generating detailed resource demand forecasts.
[0184] 5. Based on the resource demand prediction and analysis results, an optimized resource allocation strategy is formulated. In the unified virtualization layer based on DPU, resource allocation adjustment is carried out by the resource scheduling module of DPU and the unified virtualization support layer according to the following principles: for high-priority applications, their resource demands are prioritized; according to the prediction results, sufficient computing, network and storage resources are reserved in advance for these applications, and if necessary, resources are recovered from low-priority applications through preemptive scheduling; through the load conditions of each computing node, network link and storage device, resource allocation tasks are evenly distributed to the entire system to avoid the coexistence of local overheating and resource idling. Using the resource abstraction and mapping capabilities of DPU, dynamic adjustment of resource allocation is made to keep the load of each node within a reasonable range; resource elasticity is deployed according to the trend of resource demand changes.
[0185] 6. Finally, the formulated resource allocation strategy is issued to the corresponding resource management components through the resource scheduling module of DPU, and the resource deployment operation is executed. During the resource scheduling execution process, the actual allocation of resources and the performance of applications are continuously monitored, and through the feedback mechanism between DPU and each resource management component, the execution results of resource allocation and the running state information of applications are obtained in a timely manner.
[0186] Through this step, the resource scheduling of the unified virtualization layer is optimized using machine learning, which can dynamically allocate resources according to the needs of applications, effectively improve the overall utilization of resources, and enhance the security of network data.
[0187] Step four, as shown in Figure 4 Based on the resource abstraction rules, resource representation forms and optimized scheduling strategies determined in the unified virtualization layer described above, virtual hardware resources and multiple technology stacks are integrated and adapted.
[0188] 1. Determine the underlying physical hardware resources connected to DPU, and develop or adapt corresponding drivers and interfaces for different types of physical hardware resources to ensure efficient communication and control between DPU and these hardware. Based on physical computing resources, multiple virtual CPU instances are simulated on DPU using a combination of hardware virtualization technology and software algorithms. For network resources, DPU simulates virtual network interfaces to provide independent network connection capabilities for each computing instance. Based on storage resources, DPU simulates virtual storage devices to create virtual storage device instances with specific capacity, read-write performance and data storage format according to the storage requirements of applications.
[0189] 2. A virtual hardware resource abstraction and management layer is built on the DPU to uniformly manage and abstractly represent the resources such as the simulated generated virtual CPU, virtual network interface and virtual storage device. Different types of computing resources are abstracted into "computing capacity units" to measure their computing capacity in a quantitative manner; and the storage resources are abstracted into "storage capacity units" to measure the capacity size of the virtual storage device in bytes. At the same time, resource management strategies are formulated, including resource allocation strategy, resource recycling strategy and resource optimization strategy, etc., to reasonably allocate and schedule the virtual hardware resources according to the priority of the application, resource demand and overall resource status of the system.
[0190] 3. The technical stack that needs to be integrated with the DPU is analyzed in demand, and according to the demand analysis result of the technical stack, the corresponding interface and protocol are developed or adapted to realize the communication and interaction between the DPU and different technical stacks. Specifically, the DPU is integrated with the Hypervisor to achieve adaptation, connected with OpenStack to achieve adaptation, and adapted with Kubernetes, etc.
[0191] After integrating the virtual hardware resources and multiple technical stacks, the steps of system testing and verification, tuning and optimization, security and reliability enhancement, and deployment and operation support, etc. are sequentially performed to perfect the system to meet the resource management requirements in complex business scenarios. Here, no further description is given.
[0192] It should be understood that although each step in the flowchart involved in each embodiment as described above is displayed in sequence according to the direction of the arrow, these steps are not necessarily executed in sequence according to the direction of the arrow. Unless explicitly stated herein, the execution of these steps is not strictly limited in sequence, and these steps can be executed in other sequences. Moreover, at least part of the steps in the flowchart involved in each embodiment as described above can include multiple steps or stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution sequence of these steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least part of other steps or other steps, or stages.
[0193] Based on the same inventive concept, the embodiments of the present application also provide a resource virtualization processing apparatus for implementing the above-mentioned resource virtualization processing method. The implementation scheme for solving the problem provided by the apparatus is similar to the implementation scheme described in the above method, and therefore the specific limitations in one or more resource virtualization processing apparatus embodiments provided below can refer to the limitations of the resource virtualization processing method in the above text, which will not be described here.
[0194] In one exemplary embodiment, as Figure 6As shown, a resource virtualization processing device is provided, comprising:
[0195] The data acquisition module 602 is used to acquire resource characteristic attributes of heterogeneous physical resources in the DPU identification system. The types of heterogeneous physical resources include computing resources, network resources, and storage resources. A unified resource model is constructed based on the resource characteristic attributes.
[0196] The data processing module 604 is used to virtualize the heterogeneous physical resources of different computing instances in the unified resource model and execute preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer;
[0197] The data acquisition module 602 is further used to obtain resource allocation rules for various heterogeneous physical resources of different computing instances in the unified virtualization layer;
[0198] The data processing module 604 is further configured to perform resource allocation processing on the virtual hardware resources according to the resource allocation rules.
[0199] In an exemplary embodiment, the resource characteristic attributes of the computing resources include: the number of cores, number of threads, main frequency, cache size, and supported instruction sets of a central processing unit; the number of stream processors, video memory bandwidth, computing core frequency, and supported graphics computing program interfaces of a graphics processing unit; the number of programmable logic blocks, number of available I / O pins, and internal wiring resources of a field programmable gate array;
[0200] The resource characteristics of network resources include: the transmission rate, number of ports and supported network protocols of the network card; the port forwarding capability, route search speed and support for virtual local area network functions of switches and routers;
[0201] The resource characteristic attributes of storage resources include hard disk capacity, read and write I / O speed, cache size, and average seek time.
[0202] In an exemplary embodiment, the data processing module 604 is also used to construct a unified resource model based on resource feature attributes and unified preset input rules, and introduce semantic information into the unified resource model; wherein the structure of the unified resource model includes a resource type layer, a resource instance layer, and a resource attribute layer.
[0203] In an exemplary embodiment, the data processing module 604 is also used to virtualize the heterogeneous physical resources of different computing instances of virtual machines, containers, and bare metal servers in the unified resource model, and execute preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer. The unified virtualization layer includes a computing resource management module, a network resource management module, and a storage resource management module, and generates a unified resource operation interface for upper-level applications and management systems.
[0204] In an exemplary embodiment, the data acquisition module 602 is further configured to continuously collect current resource usage data and application running status information and extract real-time feature vectors;
[0205] The data processing module 604 is also used to predict the demand of various applications for heterogeneous physical resources in a preset time period in the future based on the real-time feature vector, and obtain the resource demand prediction result; based on the resource demand prediction result, determine the resource allocation rules of various heterogeneous physical resources of different computing instances in the unified virtualization layer.
[0206] In an exemplary embodiment, the resource allocation rules include: abstracting the computing resources of different computing instances into computing capacity units, abstracting the network resources of different computing instances into network bandwidth units, and abstracting the storage resources of different computing instances into storage capacity units.
[0207] Each module in the resource virtualization processing device described above can be implemented in whole or in part through software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in hardware form, or can be stored in a memory in the computer device in software form, so that the processor can call and execute the corresponding operations of each module.
[0208] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 7As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O) and a communication interface. The processor, memory and input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The database of the computer device is used to store resource feature attribute data of heterogeneous physical resources in the DPU identification system. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a resource virtualization processing method is implemented.
[0209] Those skilled in the art will understand that Figure 7 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0210] In an exemplary embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.
[0211] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above method are implemented.
[0212] In one embodiment, a computer program product is provided, comprising a computer program, which implements the steps of the above method when executed by a processor.
[0213] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0214] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. In particular, any reference to memory, database, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), quantum computing-based data processing logic devices, artificial intelligence (AI) processors, and the like.
[0215] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0216] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A resource virtualization processing method, characterized in that: The method comprises: Acquire resource characteristic attributes of heterogeneous physical resources in the DPU identification system, where the types of the heterogeneous physical resources include computing resources, network resources, and storage resources, and construct a unified resource model based on the resource characteristic attributes; Virtualizing the heterogeneous physical resources of different computing instances in the unified resource model and executing preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer; Obtain resource allocation rules for various heterogeneous physical resources of different computing instances in a unified virtualization layer; According to the resource allocation rule, resource allocation processing is performed on the virtual hardware resources.
2. The method according to claim 1, characterized in that The resource characteristic attributes of the computing resources include: the number of cores, number of threads, main frequency, cache size and supported instruction sets of the central processing unit; the number of stream processors, video memory bandwidth, computing core frequency and supported graphics computing program interface of the graphics processing unit; the number of programmable logic blocks, number of available I / O pins and internal wiring resources of the field programmable gate array; The resource characteristic attributes of the network resources include: the transmission rate, number of ports and supported network protocols of the network card; the port forwarding capability, route search speed and support for virtual local area network functions of the switch and router; The resource characteristic attributes of the storage resource include hard disk capacity, read / write I / O speed, cache size, and average seek time.
3. The method according to claim 2, characterized in that The method of constructing a unified resource model based on resource characteristic attributes includes: Based on resource feature attributes and unified preset input rules, a unified resource model is constructed, and semantic information is introduced into the unified resource model; wherein the structure of the unified resource model includes a resource type layer, a resource instance layer, and a resource attribute layer.
4. The method according to claim 1, wherein The virtualization processing of heterogeneous physical resources of different computing instances in the unified resource model and the execution of preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer includes: The heterogeneous physical resources of different computing instances of virtual machines, containers and bare metal servers in the unified resource model are virtualized, and preset resource mapping rules are executed to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer. The unified virtualization layer includes a computing resource management module, a network resource management module and a storage resource management module, and generates a unified resource operation interface for upper-level applications and management systems.
5. The method according to claim 1, wherein The resource allocation rules for various heterogeneous physical resources of different computing instances in the unified virtualization layer are obtained, including: Continuously collect current resource usage data and application operation status information to extract real-time feature vectors; Based on the real-time feature vector, predict the demand of various applications for heterogeneous physical resources in a future preset time period to obtain a resource demand prediction result; According to the resource demand prediction result, resource allocation rules for various types of heterogeneous physical resources of different computing instances in the unified virtualization layer are determined.
6. The method according to claim 1, characterized in that The resource allocation rules include: abstracting computing resources of different computing instances into computing capacity units, abstracting network resources of different computing instances into network bandwidth units, and abstracting storage resources of different computing instances into storage capacity units.
7. A resource virtualization processing device, characterized in that: The device comprises: A data acquisition module is used to acquire resource characteristic attributes of heterogeneous physical resources in the DPU identification system, where the types of heterogeneous physical resources include computing resources, network resources, and storage resources, and to build a unified resource model based on the resource characteristic attributes; A data processing module is used to virtualize the heterogeneous physical resources of different computing instances in the unified resource model and execute preset resource mapping rules to map the heterogeneous physical resources of different computing instances into a unified virtual resource form to obtain a unified virtualization layer; The data acquisition module is also used to obtain resource allocation rules for various heterogeneous physical resources of different computing instances in the unified virtualization layer; The data processing module is further configured to perform resource allocation processing on the virtual hardware resources according to the resource allocation rule.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the method according to any one of claims 1 to 6 is implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.