Real-time cloud rendering multi-tenant sharing quantitative computing power scheduling method

By introducing the concept of 'consumer queue', the resource allocation efficiency of multi -tenant sharing according to the measurement power scheduling method in the existing technologies is low and the problem of news queue cards in real -time cloud rendering scenes has achieved efficient and fair resource allocation and distribution of resource allocation and resources. Schedule.

CN119376948APending Publication Date: 2025-01-28SHENZHEN RENDERBUS TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411587568.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-08
Publication Date
2025-01-28

AI Technical Summary

Technical Problem

The existing scheduling method of sharing calculating power by volume cannot effectively meet the complex calculating scenarios of multi-tenant, multi-application, and multi-spec in real-time cloud rendering scenarios, resulting in message queue stuck and resource allocation inefficient.

Method used

Put forward the concept of 'consumer queue'. Based on the use of a queue for each tenant and the specifications of each machine, the scheduling system will put the tasks that meet the system conditions in the order of the "team time '" Tag the "consumption time" to achieve efficient allocation and scheduling of resources.

Benefits of technology

The queuing logic in the limited scenario of machine resources has been achieved, the system task processing efficiency is improved, the news queue is stuck, and the fair allocation and efficient use of resources are suitable for the efficient computing power scheduling and management of multi -tenant sharing environment. Essence

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119376948A_ABST
    Figure CN119376948A_ABST
Patent Text Reader

Abstract

The invention discloses a real-time cloud rendering multi-tenant sharing quantitative computing power scheduling method. The method comprises the following steps that platform tenants complete cloud application deployment and service configuration; the cloud application creates a machine resource access request and allocates a message queue; the scheduling system carries out real-time cloud rendering service availability judgment; scheduling a system consumption queue to receive cloud application access requests in all the message queues; in conclusion, on the basis that each tenant and each machine specification use one queue, a'consumption queue 'concept is innovatively put forward, after access tasks of the tenants to the machine specifications enter the corresponding queues, the scheduling system firstly performs a round of system service logic judgment, and the scheduling system monitors the resource pool in real time. According to the method, tasks meeting system conditions are put into a consumption queue according to the sequence of queue entering time, consumption time is re-marked for each task, and a scheduling system only needs to perform scheduling according to the sequence of the consumption time of the tasks for the consumption queue.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of scheduling volume-based computing power, and in particular to a scheduling method for multi-tenant shared volume-based computing power for real-time cloud rendering. Background Art

[0002] The existing demand for on-demand computing power scheduling in the market only involves the demand for a single machine specification, and computing power is allocated on a first-come, first-served basis among different tenants. However, in the on-demand scenario of real-time cloud rendering, multiple services involving multiple tenants require multiple machine specifications. In this scenario, it is impossible to simply meet business needs based on a single dimension of first-come, first-served.

[0003] The shortcomings of the existing scheduling methods for multi-tenant sharing of computing power on the market are: (1) The cloud applications of all tenants on the platform cannot use one queue. When the machine specifications required by the cloud application at the front of the queue are out of resources, the machine specifications required by the application at the back of the queue cannot be allocated even if there are resources, causing the queue to be stuck. (2) All tenants on the platform cannot use the same resource specification queue. Different tenants purchase different quantities of pay-as-you-go services. When the pay-as-you-go services of the tenants at the front of the queue reach the upper limit of the paid quantity, but there are still resources for the required machine specifications, the tenants at the back of the queue cannot be allocated, causing the queue to get stuck. (3) The platform uses one queue for each tenant and each machine specification. If different tenants need to use the same machine specification, the system needs to traverse all message queues, which reduces the efficiency of system queue processing.

[0004] Based on the use of one queue for each tenant and each machine specification, the present invention innovatively proposes the concept of "consumption queue". After the access tasks of each tenant to each machine specification enter the corresponding queue, the scheduling system first performs a round of system service logic judgment, and puts the tasks that meet the system conditions into the consumption queue in the order of "queue entry time", and re-marks the "consumption time" for each task. The scheduling system only needs to schedule the consumption queue in the order of the consumption time of the tasks, which can meet the resource scheduling needs in the above-mentioned complex many-to-many volume-based scenarios. Summary of the invention

[0005] The purpose of the present invention is to provide a scheduling method for real-time cloud rendering multi-tenant shared on-demand computing power, which meets the resource scheduling and allocation in complex public cloud on-demand resource scenarios, while meeting efficiency and fairness, and solving the problem of possible message queue jams.

[0006] To achieve the above object, the present invention provides the following technical solutions: A scheduling method for real-time cloud rendering multi-tenant shared computing power, comprising the following steps: S1: Platform tenants complete the deployment and service configuration of cloud applications; S2: The cloud application creates a machine resource access request and allocates a message queue; S3: The scheduling system determines the availability of the real-time cloud rendering service and whether the cloud application in the current message queue has reached the upper limit of machine resource usage; S4: The scheduling system consumption queue receives the cloud application access requests in all message queues; S5: The scheduling system monitors the resource pool in real time. When resources are idle, it allocates the required resources to the specified message queue according to the consumption queue information.

[0007] Preferably, the deployment and service configuration of the cloud application in S1 includes completing the deployment of the cloud application in the cloud, configuring the real-time cloud rendering machine resource specifications for use when running on a volume basis according to the computing power required for the cloud application to run, and configuring the upper limit of machine resource usage for the cloud application according to actual business needs. Each machine resource can support access by one terminal user.

[0008] Preferably, the cloud application in S2 creates a machine resource access request and allocates a message queue, mainly including determining the tenant to which the cloud application access request belongs, determining the machine resource specifications required for the cloud application access request, and according to the tenant and machine resource specifications, request tasks with the same tenant and the same machine resource specifications enter the same message queue.

[0009] Preferably, in S3, if the cloud application in the current message queue has reached the upper limit of machine resource usage, the request will remain in the message queue, and the queue position information will be displayed on the client according to the position of the message queue where the current cloud application access request is located, and then re-polling every two seconds.

[0010] Preferably, in S3, if the cloud application in the current message queue has not reached the upper limit of machine resource usage, it is determined whether the machine resources required for the current access request are idle: if they are idle, the cloud application access request is directly started and run; if they are not idle, the current cloud application access request is synchronized to the consumption queue, and the queue position information is displayed on the client according to the position of the message queue where the current cloud application access request is located, and then re-polling every two seconds.

[0011] Preferably, S4 mainly includes the following steps: the scheduling system initializes a consumption queue for each machine resource specification in the resource pool, allocates requests to the designated consumption queue according to the machine resource specification information carried in the cloud application access request synchronized by the message queue, and the consumption queue records the synchronization time for each newly synchronized cloud application access request, marking it as "consumption time".

[0012] Preferably, S5 mainly includes the following steps: the scheduling system monitors in real time whether there are idle resources in the platform's quantitative resource pool; when idle resources appear, the request for the corresponding consumption queue is allocated according to the resource specifications and the "consumption time" on a first-come-first-served basis.

[0013] Preferably, S5 also includes dequeuing the cloud application access request for which resource allocation is obtained from the message queue and starting the cloud application according to request information such as tenant and resource specification.

[0014] In summary, due to the adoption of the above technology, the beneficial effects of the present invention are: 1. In the public cloud platform environment, this solution implements the queuing logic in the scenario of limited machine resources for complex pay-as-you-go scenarios with multiple tenants, multiple applications, and multiple specifications.

[0015] 2. This solution innovatively proposes a "consumption queue". Based on the technically implemented message queue, it improves the system task processing efficiency through logical decoupling, and reduces the complexity of polling processing (tenant N*application N*specification N) to a single-dimensional polling scheduling of only (specification N). After the access tasks of each tenant to each machine specification enter the corresponding queue, the scheduling system first performs a round of system service logic judgment, and puts the tasks that meet the system conditions into the consumption queue in the order of "queue entry time", and re-marks the "consumption time" for each task. The scheduling system only needs to schedule the consumption queue in the order of the consumption time of the tasks, which can meet the resource scheduling needs in the above complex many-to-many volume-based scenarios.

[0016] 3. This solution meets the resource scheduling and allocation requirements of complex public cloud resource-based scenarios, while meeting the requirements of efficiency and fairness, and solves the problem of possible message queue jams. It can achieve efficient computing power scheduling and management in a multi-tenant shared environment, ensuring that each tenant can fairly obtain the required computing power resources, while improving the performance and resource utilization of the overall system.

[0017] 4. The scheduling method of multi-tenant sharing of computing power in this solution has significant advantages in improving resource utilization, reducing costs, improving service quality and execution satisfaction, and is suitable for scenarios that require efficient management and utilization of computing resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The accompanying drawings constituting a part of the present invention are used to provide a further understanding of the present invention, so that other features, purposes and advantages of the present invention become more obvious. The accompanying drawings of the exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the accompanying drawings: Figure 1 It is a flow chart of the present invention. DETAILED DESCRIPTION

[0019] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work belong to the scope of protection of the present invention. Therefore, the following detailed description of the embodiments of the present invention provided in the drawings is not intended to limit the scope of the invention claimed for protection, but merely represents the selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work belong to the scope of protection of the present invention.

[0020] In the description of the present invention, it is necessary to understand that the terms indicating orientation or positional relationship are based on the orientation or positional relationship shown in the drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present invention.

[0021] In the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", "connected", "fixed" and the like should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to the specific circumstances of the specification.

[0022] The present invention provides Figure 1 A scheduling method for real-time cloud rendering multi-tenant sharing of volume computing power is shown, comprising the following steps: Step 1: Platform tenants complete the deployment and service configuration of cloud applications: 1. Complete the deployment of cloud applications in the cloud: Specifically include: (1) Connect to the cloud server: Use SSH (for Linux) or RDP (for Windows) to connect to the cloud server instance. (2) Environment configuration: Install necessary dependent software and libraries according to application requirements, such as databases, web servers, programming language runtimes, etc., and configure environment variables and set configuration files required by the application; (3) Upload code: Upload the application code to the cloud server, usually using SCP, FTP, or version control tools (such as Git); (4) Install the application: Install according to the application's installation documentation, which may include compiling, decompressing, and configuring; (5) Start service: Start the application service and configure it to start automatically at boot (such as using systemd or init script); (6) Database configuration: If the application requires a database, create and configure the database instance and import the initial data required by the application; (7) Testing and Optimization: Perform functional testing and load testing to verify the application's performance under high load, and perform performance optimization and system tuning.

[0023] 2. According to the computing power required for the cloud application, configure the real-time cloud rendering machine resource specifications used when running on a volume basis, such as: graphics card: NVIDIA GeForce GTX 1060 or higher; memory: 8GB or higher; processor: IntelCore i5 or higher or AMD Ryzen5 or higher; storage: SSD solid state drive. At the same time, a suitable operating system and related real-time rendering software support are also required to obtain good real-time rendering effects; 3. According to actual business needs, configure the upper limit of machine resource usage for cloud applications. Each machine resource can support access by one end user. Each machine resource can support access by one end user, which refers to the resource exclusive mode. In this mode, the resources of each machine (such as CPU, memory, etc.) are independently allocated to a single end user, and other users cannot share these resources. This mode ensures that each user can obtain stable computing resources and exclusive usage rights, avoiding resource conflicts and performance degradation. Advantages of resource exclusive mode: (1) Stability: Each user has an independent resource environment and will not be affected by the operations of other users, ensuring the stability and reliability of the system; (2) Security: Resource exclusivity can reduce security risks because each user's operations are performed in an independent resource environment and will not affect each other; (3) Performance: In resource exclusive mode, each user can obtain sufficient computing resources and bandwidth, thereby improving the overall performance of the system.

[0024] Step 2: The cloud application creates a machine resource access request and allocates a message queue: 1. There are several ways to determine the tenant to which a cloud application access request belongs: (1) URL path: In the Flask framework, tenants can be identified through routing design; (2) ‌Through domain name and CNAME; (3) Through session information: (4) Through the request header; 2. Determine the machine resource specifications required for cloud application access requests, mainly including the following key factors: CPU, memory, storage, network bandwidth, bandwidth peak, operating system, virtualization technology, availability zone and security group, and elastic scaling; 3. According to the tenant and machine resource specifications, request tasks with the same tenant and the same machine resource specifications enter the same message queue.

[0025] Step 3: The scheduling system determines the availability of the real-time cloud rendering service: Determine whether the cloud application in the current message queue has reached the upper limit of machine resource usage: (1) If the upper limit has been reached, the request will remain in the message queue, and the queue position information will be displayed on the client according to the position of the message queue where the current cloud application access request is located, and then it will be polled again every 2 seconds; (2) If the upper limit is not reached, determine whether the machine resources required for the current access request are idle: 1. If there is idle time, the cloud application access request is directly started and run; 2. If there is no idle time, synchronize the current cloud application access request to the consumption queue, and display the queue position information on the client according to the position of the message queue where the current cloud application access request is located, and then re-pollating every 2 seconds.

[0026] Step 4: The scheduling system consumption queue receives cloud application access requests in all message queues: 1. The scheduling system initializes a consumption queue for each machine resource specification in the resource pool; 2. Allocate the request to the designated consumption queue based on the machine resource specification information carried in the cloud application access request synchronized by the message queue; 3. The consumption queue records the synchronization time for each newly synchronized cloud application access request and marks it as “consumption time”.

[0027] Step 5: The scheduling system monitors the resource pool in real time. When resources are idle, it allocates the required resources to the specified message queue according to the consumption queue information: 1. The scheduling system monitors in real time whether there are idle resources in the platform's resource pool; 2. When idle resources appear, according to the resource specifications, the requests of the principle fee queue are allocated according to the "consumption time" on a first-come, first-served basis; 3. For cloud application access requests that have been allocated resources, dequeue them from the message queue and start the cloud application based on request information such as the tenant and resource specifications.

[0028] In a multi-tenant environment, resource sharing and permission management are important components of cloud computing technology. A multi-tenant environment refers to a situation where multiple users share a cloud computing infrastructure. How to effectively implement resource sharing and permission management has become the key to improving system efficiency and ensuring user data security. Cloud computing technology provides a series of solutions that can help implement resource sharing and permission management in a multi-tenant environment; To achieve resource sharing, this technology can abstract physical resources (such as servers, storage and networks) into virtual resources, and uniformly manage and allocate them through virtualization software. In a multi-tenant environment, each tenant can share the virtual resources of the same physical server to achieve efficient resource utilization. Through virtualization technology, virtual machines of multiple tenants can be deployed on the same physical server, improving resource utilization, and resource allocation can be dynamically adjusted according to the needs of different tenants.

[0029] The scheduling method for multi-tenant shared computing power mainly includes the following aspects: 1. Monitoring at the application level and component level: Implement application-level and component-level monitoring of tenants, collect tenant runtime status information and resource usage information, adjust the capacity of applications and components, and isolate tenants through concurrency control of tenant requests. This method can perceive and manage tenants as a whole and in local units, avoid refactoring of interaction protocols, and adjust the maximum concurrency scale of tenants to adapt to performance fluctuations caused by dynamic changes in tenant loads, solve the problems of tenant isolation and resource occupation, and improve the performance of microservices for multiple tenants.

[0030] 2. Service quality comprehensive index function and resource allocation strategy based on analytic hierarchy process: In a multi-tenant shared environment, a service quality comprehensive index function and a resource allocation strategy based on analytic hierarchy process are designed. A multi-tenant resource allocation evaluation model is established, and a stochastic Petri net is used for modeling and performance analysis. The analytic hierarchy process is used to prioritize service modules according to user needs, determine the required shares, and prepare for task scheduling. This method improves resource utilization, achieves performance isolation between tenants, improves tenants' service quality and execution satisfaction, reduces costs, and makes more reasonable use of computing resources.

[0031] 3. GPU shared scheduling: In a GPU shared cluster, resource interoperability and free job scheduling are achieved by merging exclusive resource pools, significantly improving the resource allocation rate and the overall average utilization of the cluster. This method provides the prerequisites for scheduling optimization methods such as hybrid deployment and time-sharing multiplexing, and also supports serverless architecture. Users no longer need to pay attention to how many servers they have, and the corresponding physical resources are all converted into the corresponding number of quotas.

[0032] 4. Improve computing power utilization: Improve computing power utilization through resource scalability, resource pooling, open architecture and other methods. The computing power network is a comprehensive solution to improve computing power utilization, which is achieved by increasing the scale of chip landing and improving single-chip performance.

[0033] Improved resource utilization, reduced costs, and improved service quality and execution satisfaction The benefits of the multi-tenant shared computing power scheduling method mainly include the following aspects: 1. Improved resource utilization: The scheduling method of multi-tenant sharing of computing power can significantly improve resource utilization. For example, the HiveD scheduler eliminates the sharing anomaly phenomenon through excellent modeling and abstraction, allowing resources to be allocated and utilized more efficiently; 2. Cost reduction: The model of multi-tenant sharing of computing power can reduce the hardware purchase and maintenance costs of a single tenant. Each tenant only needs to use computing power on demand without having to bear the full hardware cost, thereby reducing the overall operating cost; 3. Improved service quality and execution satisfaction: Through reasonable resource allocation and task scheduling strategies, the service quality and execution satisfaction in a multi-tenant environment can be improved. For example, through the analytic hierarchy process and fair scheduling algorithm, it can ensure fair allocation of resources among tenants and ensure that each tenant can obtain satisfactory execution results; 4. Flexibility and scalability: The multi-tenant sharing of computing power provides higher flexibility and scalability. Users can dynamically adjust computing resources according to demand without purchasing a large amount of hardware in advance to adapt to rapidly changing needs; 5. Improve computing power utilization: By improving computing power utilization, such as resource scalability, resource pooling, and open architecture, the overall performance of computing power can be further improved. For example, improving computing power utilization through computing power networks can better meet large-scale computing needs.

[0034] In summary, the scheduling method of multi-tenant shared computing power has significant advantages in improving resource utilization, reducing costs, improving service quality and execution satisfaction, and is suitable for scenarios that require efficient management and utilization of computing resources.

Claims

1. A scheduling method for real-time cloud rendering multi-tenant shared computing power, characterized by: The following steps are involved: S1: Platform tenants complete the deployment and service configuration of cloud applications; S2: The cloud application creates a machine resource access request and allocates a message queue; S3: The scheduling system determines the availability of the real-time cloud rendering service and whether the cloud application in the current message queue has reached the upper limit of machine resource usage; S4: The scheduling system consumption queue receives the cloud application access requests in all message queues; S5: The scheduling system monitors the resource pool in real time. When resources are idle, it allocates the required resources to the specified message queue according to the consumption queue information.

2. According to claim 1, a scheduling method for real-time cloud rendering multi-tenant sharing of volume computing power is characterized by: The deployment and service configuration of the cloud application in S1 includes completing the deployment of the cloud application in the cloud, configuring the real-time cloud rendering machine resource specifications for use when the cloud application is running on a volume basis according to the computing power required for the operation of the cloud application, and configuring the upper limit of machine resource usage for the cloud application according to actual business needs. Each machine resource can support access by one terminal user.

3. According to claim 1, a scheduling method for real-time cloud rendering multi-tenant sharing of volume computing power is characterized by: In S2, the cloud application creates a machine resource access request and allocates a message queue, which mainly includes determining the tenant to which the cloud application access request belongs, determining the machine resource specifications required for the cloud application access request, and according to the tenant and machine resource specifications, request tasks with the same tenant and the same machine resource specifications enter the same message queue.

4. According to claim 1, a scheduling method for real-time cloud rendering multi-tenant sharing of volume computing power is characterized by: In S3, if the cloud application in the current message queue has reached the upper limit of machine resource usage, the request will remain in the message queue, and the queue position information will be displayed on the client according to the position of the message queue where the current cloud application access request is located, and then re-polling every two seconds.

5. According to claim 1, a scheduling method for real-time cloud rendering multi-tenant sharing of volume computing power is characterized by: In S3, if the cloud application in the current message queue has not reached the upper limit of machine resource usage, it is determined whether the machine resources required for the current access request are idle: if they are idle, the cloud application access request is directly started and run; if they are not idle, the current cloud application access request is synchronized to the consumer queue, and the queue position information is displayed on the client according to the position of the message queue where the current cloud application access request is located, and then re-polling every two seconds.

6. The method for scheduling real-time cloud rendering multi-tenant shared computing power according to claim 1, characterized in that: The S4 mainly includes the following steps: the scheduling system initializes a consumption queue for each machine resource specification in the resource pool, allocates the request to the designated consumption queue according to the machine resource specification information carried in the cloud application access request synchronized by the message queue, and the consumption queue records the synchronization time for each newly synchronized cloud application access request, marking it as "consumption time".

7. The method for scheduling real-time cloud rendering multi-tenant shared computing power according to claim 1, characterized in that: The S5 mainly includes the following steps: the scheduling system monitors in real time whether there are idle resources in the platform's quantitative resource pool. When idle resources appear, the request of the corresponding consumption queue is allocated according to the resource specifications and the "consumption time" on a first-come-first-served basis.

8. The method for scheduling real-time cloud rendering multi-tenant shared computing power according to claim 1, characterized in that: The S5 also includes dequeuing the cloud application access request for the obtained resource allocation from the message queue and starting the cloud application according to the request information such as the tenant and resource specifications.