A high-performance platform VNC desktop resource optimization utilization method based on SLURM scheduling
Patent Information
- Application Number
- CN202211237946.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-11
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2042-10-11
AI Technical Summary
In existing high-performance platforms, the overall utilization rate of VNC resources is low, resulting in low utilization efficiency of GPU display nodes.
In the SLURM scheduling system, administrator users first apply for N GPUs to calculate display nodes, and set the number of parallel loadable VNC application resources for each node to form a VNC resource pool. Ordinary users apply for resources on demand from the pool, and release them after use. Administrators dynamically adjust the resource pool capacity for optimized utilization.
It improves the utilization rate of GPU display nodes, realizes efficient utilization of VNC resources, dynamically adjusts resource allocation to meet user needs, and improves the overall resource utilization efficiency of the high-performance platform.
Smart Images

Figure CN115599543B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for optimizing and utilizing VNC desktop resources on a high-performance platform, which can be applied to the field of industrial simulation. Background Art
[0002] In addition to supporting basic scheduling for parallel computing applications, high-performance industrial simulation computing platforms often require visual observation and processing before and after calculations. Some input and output files require user configuration within a visual interface to achieve the desired result. The high-performance platform can globally control all computing resources across the entire cluster through a scheduling system.
[0003] In the prior art, for visual GPU nodes used for interface access, computing resources are typically acquired through SLURM scheduling, then VNC remote services are enabled on the computing resources. The desired visualization application is then executed in a remote window, often scheduling a separate GPU node queue for resource allocation. Subsequently, the user connects to this GPU node resource through a VNC visualization client to perform subsequent application operations. After use, the user exits the VNC remote session and closes the remote desktop, freeing up the remote window resources. Summary of the Invention
[0004] The technical problem to be solved by the present invention is that the existing high-performance method for applying for VNC resources is based on SLURM scheduling to apply for VNC computing resources and then subdivide and utilize the resources, so the overall utilization rate of GPU display nodes is low.
[0005] In order to solve the above technical problems, the technical solution of the present invention is to provide a high-performance platform VNC desktop resource optimization utilization method based on SLURM scheduling, characterized in that GPU display node resources are further allocated downward, including the following steps:
[0006] Step 1: On a high-performance computing platform based on SLURM scheduling, the administrator user applies to occupy N GPU computing display nodes in the SLURM scheduling pool, where N ≥ 1.
[0007] Step 2: Record the GPU computing display nodes that have been applied for and set the number of VNC application resources that can be supported in parallel for each occupied GPU computing display node. Let the number of VNC application resources that can be supported in parallel for the nth GPU computing display node be Vn, where n=1,2,…,N. Then the number of N GPU computing display nodes is Vn. The VNC application resources that can be loaded in parallel form a VNC resource pool, and all VNC application resources in the VNC resource pool are marked as available;
[0008] Step 3: A non-administrator user applies for a VNC application resource from the VNC resource pool obtained in step 2, sequentially obtains a VNC application resource marked as available, and marks the obtained VNC application resource as occupied.
[0009] Step 4: A common user calls and executes a shell script to start the VNC application resource in the background. The script includes the pre- and post-processing applications required for starting the VNC application resource and running the application.
[0010] Step 5: The ordinary user uses the VNC client to connect to the backend according to the VNC account information agreed upon in step 4, and accesses the started pre- and post-processing applications;
[0011] Step 6: After the current post-processing application is actively closed, the VNC application resources are marked as available, thereby releasing the VNC application resources to the VNC resource pool.
[0012] Preferably, in step 1, the administrator user applies to occupy the N GPU computing and display nodes through the provided administrator interface or directly calls a SLURM resource occupation instruction.
[0013] Preferably, in step 2, the GPU computing display nodes that have been applied for are recorded in a database or text.
[0014] Preferably, in step 2, the number of the VNC application resources is set for each GPU computing and display node based on the number of connections of ordinary users that each GPU computing and display node can simultaneously support.
[0015] Preferably, during the execution of steps 1 to 6 above, the administrator user applies for more GPU computing and display nodes from the SLURM scheduling pool based on the number of ordinary users connected and the idle and occupied status of VNC application resources in each time period, thereby expanding the capacity of the VNC resource pool; or releases the GPU computing and display nodes that have been applied for and occupied back to the SLURM scheduling pool, thereby reducing the capacity of the VNC resource pool.
[0016] Based on a high-performance cluster with SLURM as the scheduling system, and having deployed a VNC-based approach to support pre- and post-processing scheduling for application interface startup and operation visualization, the method provided by the present invention can first be used by an administrator to dynamically adjust the number of VNC application services that each GPU display node can support, first obtain and occupy several VNC display computing nodes and then form a VNC resource pool again, then apply for VNC application resources from the VNC resource pool and directly call pre- and post-processing applications, thereby achieving the purpose of optimizing the utilization of VNC resources. The present invention can effectively utilize resources and dynamically open VNC application resources based on the specific usage frequency of users' VNC application resources, and can facilitate subsequent statistical observation of user usage frequency, providing a strong basis for dynamically adjusting limited VNC computing resources, saving and more effectively increasing the utilization rate of high-performance platforms.
[0017] In the method provided by the present invention, an administrator uses the scheduling system to first occupy GPU display nodes and set a threshold for the number of VNC application resources that can be loaded on each GPU display node, forming a current pool of available VNC display resources. This pool of available VNC display resources can be flexibly configured based on the specific needs of the user. Other GPU display nodes can be used as idle resources for computing node scheduling or other purposes. Therefore, the method provided by the present invention effectively improves the utilization rate of GPU display nodes and more effectively utilizes high-performance display resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 It illustrates the role-based operation of the VNC resource pool;
[0019] Figure 2 It illustrates the VNC resource pool implementation and service steps. DETAILED DESCRIPTION
[0020] The sizes and proportions shown in the drawings in this specification are for illustrative purposes only and are provided to facilitate the description. They are not intended to limit the conditions for implementation of the present invention and do not affect the efficacy of the present invention. The positional relationships of "upper," "lower," "inner," and "outer" in this specification are provided for convenience only and are not intended to limit the scope of implementation of the present invention. Any changes in these relative relationships without substantial changes in the technical content are considered to be within the scope of implementation of the present invention.
[0021] The present invention provides a high-performance platform VNC desktop resource optimization method based on SLURM scheduling. The method first uses a program to call a SLURM command to lock VNC service resources. The method then sets the number of concurrent open pre- and post-processing applications that can be hosted on the acquired resource node. When a user requests a pre- and post-processing application, an idle pre- and post-processing application is selected from the available concurrent number and set as an occupied application. After the pre- and post-processing application is used, the occupied application is released and the idle application is set as an idle application.
[0022] Specifically, combined Figure 1 as well as Figure 2 The present invention provides a method for optimizing the utilization of high-performance platform VNC desktop resources based on SLURM scheduling, comprising the following steps:
[0023] Step 1: On a high-performance computing platform based on SLURM scheduling, an administrator user applies to occupy N GPU computing display nodes in the SLURM scheduling pool through the provided administrator interface or directly calls the SLURM resource occupation instruction, where N ≥ 1.
[0024] Step 2: Record the GPU computing display nodes that have been applied for in a database or text, and set the number of parallel VNC application resources that can be supported for each occupied GPU computing display node. Let the number of parallel VNC application resources set for the nth GPU computing display node be Vn, n=1,2,…,N, and the number of N GPU computing display nodes is Vn. The VNC application resources that can be loaded in parallel form a VNC resource pool, and all VNC application resources in the VNC resource pool are marked as available.
[0025] In this embodiment, for each GPU computing display node that has been applied for occupation, the number of supported parallel VNC application resources is set based on the number of ordinary user connections that can be supported at the same time, and the set number of supported parallel VNC application resources is stored in the database for easy access and identification.
[0026] Step 3: A common user who is not an administrator user applies for a VNC application resource from the VNC resource pool obtained in step 2, and sequentially obtains a VNC application resource marked as available, and marks the obtained VNC application resource as occupied.
[0027] Step 4: A common user calls and executes a background VNC application resource startup shell script, which includes VNC application resource startup and pre- and post-processing applications required for running the script.
[0028] Step 5: The ordinary user uses the VNC client to connect to the backend according to the VNC account information started in step 4 and access the started pre- and post-processing applications.
[0029] Step 6: After the current post-processing application is actively closed, the VNC application resources are marked as available, thereby releasing the VNC application resources to the VNC resource pool.
[0030] During the execution of steps 1 to 6 above, the administrator user can apply for more GPU computing and display nodes from the SLURM scheduling pool based on the number of ordinary users connected and the idle and occupied VNC application resources in each time period, thereby expanding the capacity of the VNC resource pool. The administrator user can also release the requested GPU computing and display nodes back to the SLURM scheduling pool based on the number of ordinary users connected and the idle and occupied VNC application resources in each time period, thereby reducing the capacity of the VNC resource pool.
Claims
1. A method for optimizing and utilizing high-performance platform VNC desktop resources based on SLURM scheduling, characterized in that: The GPU display node resources are further allocated in detail, including the following steps: Step 1: On a high-performance computing platform based on SLURM scheduling, the administrator user applies to occupy N GPU computing display nodes in the SLURM scheduling pool, where N ≥ 1. Step 2: Record the GPU computing display nodes that have been applied for and set the number of VNC application resources that can be supported in parallel for each occupied GPU computing display node. Let the number of VNC application resources that can be supported in parallel for the nth GPU computing display node be Vn, where n=1,2,…,N. Then the number of N GPU computing display nodes is Vn. The VNC application resources that can be loaded in parallel form a VNC resource pool, and all VNC application resources in the VNC resource pool are marked as available; Step 3: A non-administrator user applies for a VNC application resource from the VNC resource pool obtained in step 2, sequentially obtains a VNC application resource marked as available, and marks the obtained VNC application resource as occupied. Step 4: A common user calls and executes a shell script to start the VNC application resource in the background. The script includes the pre- and post-processing applications required for starting the VNC application resource and running the application. Step 5: The ordinary user uses the VNC client to connect to the backend according to the VNC account information agreed upon in step 4, and accesses the started pre- and post-processing applications; Step 6: After the current post-processing application is actively closed, the VNC application resources are marked as available, thereby releasing the VNC application resources to the VNC resource pool.
2. A method for optimizing and utilizing high-performance platform VNC desktop resources based on SLURM scheduling as claimed in claim 1, characterized in that: In step 1, the administrator user applies to occupy the N GPU computing and display nodes through the provided administrator interface or directly calls the SLURM resource occupation instruction.
3. A method for optimizing and utilizing high-performance platform VNC desktop resources based on SLURM scheduling as claimed in claim 1, characterized in that: In step 2, the GPU computing display nodes that have been applied for are recorded in a database or text.
4. A method for optimizing and utilizing high-performance platform VNC desktop resources based on SLURM scheduling as claimed in claim 1, characterized in that: In step 2, the number of the VNC application resources is set for each GPU computing and display node based on the number of common user connections that each GPU computing and display node can simultaneously support.
5. A method for optimizing and utilizing high-performance platform VNC desktop resources based on SLURM scheduling as claimed in claim 1, characterized in that: During the execution of steps 1 to 6 above, the administrator user applies for more GPU computing and display nodes from the SLURM scheduling pool based on the number of ordinary users connected and the idle and occupied status of VNC application resources in each time period, thereby expanding the capacity of the VNC resource pool; or releases the occupied GPU computing and display nodes back to the SLURM scheduling pool, thereby reducing the capacity of the VNC resource pool.
Citation Information
Patent Citations
Hardware accelerated graphics for network enabled applications
CN103270492A
Remote visualized application method based on virtualization of graphic processor
CN104660711A