Method for optimizing remote software performance

Through the remote control software, the graphics card configuration of the computer under control is detected and modified, the problem of lag caused by excessive load of independent graphics cards is solved, and the operation efficiency and smoothness of the remote software are improved.

CN119512757APending Publication Date: 2025-02-25SHENZHEN RENDERBUS TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411665330.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-02-25

AI Technical Summary

Technical Problem

When existing remote software runs a large amount of software at the same time, it may cause excessive performance of independent graphics cards to take up, resulting in remote software lag.

Method used

Remote control software detects the hardware environment of the computer under control. If it has both an integrated graphics card and an independent graphics card, it will modify the graphics card of other encoding software to be configured as an integrated graphics card when the load rate of the independent graphics card reaches more than 75% to reduce the load of the independent graphics card.

Benefits of technology

By modifying the graphics card configuration, the remote software is avoided due to excessive load on the independent graphics card, and the operation efficiency and smoothness of the remote software are improved, and the user experience is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119512757A_ABST
    Figure CN119512757A_ABST
Patent Text Reader

Abstract

The invention discloses a method for optimizing the performance of remote software, during application, the remote control software firstly detects the graphics card configuration of a controlled computer end, and when an independent graphics card and an integrated graphics card exist, the method disclosed by the invention can be adopted to optimize the performance of the remote control software. When the computing power of other coding software occupying the independent graphics card exceeds 75%, judging that the remote control software is easy to be stuck when using the independent graphics card, and modifying the graphics card configuration of part or all of other coding software into an integrated graphics card from the independent graphics card by the remote control software; therefore, the remote control software can occupy the computing power of most independent graphics cards, the encoding performance of the remote control software is fully ensured, the situations of jamming and frame dropping of the remote control software are avoided, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of remote software, and in particular to a method for optimizing remote software performance. Background Art

[0002] Currently, most Windows computers are equipped with independent graphics cards, and when the software detects the presence of an independent graphics card, it uses the GPU for encoding by default. However, when the user runs a large number of software at the same time, all software uses the GPU for encoding, which may cause excessive performance pressure and then cause the remote software to freeze.

[0003] Therefore, the prior art has defects and needs to be improved. Summary of the invention

[0004] The technical problem to be solved by the present invention is to provide a method for optimizing the performance of remote software to avoid freezing when other encoding software of the user occupies a large amount of independent graphics card performance, thereby improving the operating efficiency and fluency of the remote software.

[0005] The technical solution of the present invention is as follows: a method for optimizing remote software performance is provided, and the method for optimizing remote software performance includes the following steps.

[0006] S1: Remote connection establishment phase: When establishing a remote connection, the remote control software automatically detects the hardware environment of the controlled computer.

[0007] S2: Detect the hardware environment of the controlled computer: The remote control software detects whether the controlled computer has an integrated graphics card and an independent graphics card, and obtains relevant hardware information.

[0008] S3: Determine the hardware environment: Based on the acquired hardware information, the remote control software determines the graphics card configuration of the controlled computer; if the controlled computer has both an integrated graphics card and an independent graphics card, proceed to step S4; if the controlled computer has only an integrated graphics card or an independent graphics card, the integrated graphics card or independent graphics card is used for encoding.

[0009] S4: Select encoding graphics card: When the controlled computer has both integrated graphics card and independent graphics card, when performing encoding tasks, if it is detected that the independent graphics card of the controlled computer is already under heavy load, it is judged that the use of independent graphics card by the remote control software will cause the performance of the remote control software to be affected. The remote control software chooses to modify all or part of the encoding graphics card of the encoding software to an integrated graphics card to improve the performance and encoding quality of the remote control software; the independent graphics card is already under heavy load when the GPU utilization rate is ≥75%.

[0010] S5: Modify the encoding graphics card configuration: Through the settings inside the encoding software or calling the system API, the remote control software changes the graphics card configuration of the encoding software to the integrated graphics card, so that the encoding task of the encoding software is processed by the integrated graphics card, and the remote control software occupies most of the computing power of the independent graphics card for encoding. When the independent graphics card encodes the remote control software and other encoding software, the load rate of the independent graphics card is controlled within 85%.

[0011] In this solution, the remote control software first detects the graphics card configuration of the controlled computer. When there is an independent graphics card and an integrated graphics card, the method of the present invention can be used to optimize the performance of the remote control software. When other encoding software occupies more than 75% of the computing power of the independent graphics card, it is judged that the remote control software is prone to jamming when using the independent graphics card, and the remote control software modifies the graphics card configuration of some or all other encoding software from the independent graphics card to the integrated graphics card, so that the remote control software can occupy most of the computing power of the independent graphics card, fully guaranteeing the encoding performance of the remote control software, avoiding jamming and frame drops of the remote control software, and improving the user experience.

[0012] In one scenario, the remote control software modifies the settings inside the encoding software so that the remote control software changes the graphics card configuration of the encoding software to the integrated graphics card. The encoding software allows you to customize which graphics card to use for encoding in the software's settings or preferences menu. Therefore, you can select the integrated graphics card and configure it as needed. Common setting options include hardware encoder selection, graphics card selection, or preference settings. The remote control software can find the corresponding function in these options and choose to use the integrated graphics card for encoding.

[0013] In another solution, the remote control software changes the graphics card configuration of the encoding software to an integrated graphics card by calling the system API; on the Windows platform, the D3D12CreateDevice function of DirectX or the glGetString function of OpenGL is used to obtain the graphics card information, and the relevant functions are called to specify the integrated graphics card for encoding. The encoding software can also control the use of the graphics card by calling the system's graphics API. In the Windows operating system, graphics APIs such as DirectX or OpenGL can be used to control the graphics card. By calling the relevant API functions in the encoding software, the integrated graphics card can be specified for encoding.

[0014] Furthermore, the method for optimizing remote software performance also includes: S6: restoring the encoding graphics card configuration: after the remote connection ends or the user manually closes the remote control software, the remote control software restores the graphics card configuration of the encoding software to use its independent graphics card to ensure that the encoding software of the controlled computer can use its independent graphics card normally.

[0015] Furthermore, the following function is used on the Windows operating system to restore the encoded graphics card configuration.

[0016] EnumDisplayDevices function: This function is used to retrieve information related to the system's graphics display device, including the graphics card's hardware ID and related settings; by calling the EnumDisplayDevices function, the remote control software can obtain the current graphics card's configuration information.

[0017] ChangeDisplaySettingsEx function: This function is used to change the settings of the display device, including the resolution and refresh rate of the graphics card. By calling the ChangeDisplaySettingsEx function, the remote control software restores the graphics card configuration to the default settings or the previous configuration to ensure that the controlled computer can use its independent graphics card for graphics processing normally.

[0018] UpdateLayeredWindowIndirect function: This function is used to update the window layer; if a transparent window is being used for remote control on the controlled computer, this function is involved; to ensure that the transparent effect is displayed correctly when the graphics card configuration is changed.

[0019] Most Windows computers are equipped with independent graphics cards. When the remote control software is pushing the stream, if it is found that the performance consumption of the independent graphics card is large (heavy load), the remote control software will use the integrated graphics card for encoding for all or part of the encoding software on the controlled computer, reducing or not occupying the encoding performance of the independent graphics card. The remote control software will occupy most of the computing power of the independent graphics card, thereby reducing the lag and frame drops of the remote software.

[0020] By adopting the above scheme, the present invention provides a method for optimizing the performance of remote software, which detects the current computer performance through remote control software and modifies the method of encoding the graphics card to optimize the performance of the remote software. In addition to the remote control software, other encoding software uses the integrated graphics card for encoding to avoid freezing when other user software occupies a large amount of independent graphics card performance, thereby improving the operating efficiency and fluency of the remote software and enhancing the user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 The figure is a flow chart of the method of the present invention. DETAILED DESCRIPTION

[0022] The present invention is described in detail below in conjunction with the accompanying drawings and specific embodiments.

[0023] See also Figure 1 This embodiment provides a method for optimizing remote software performance, and the method for optimizing remote software performance includes the following steps.

[0024] S1: Remote connection establishment phase: When establishing a remote connection, the remote control software automatically detects the hardware environment of the controlled computer.

[0025] S2: Detect the hardware environment of the controlled computer: The remote control software detects whether the controlled computer has an integrated graphics card and an independent graphics card, and obtains relevant hardware information.

[0026] S3: Determine the hardware environment: Based on the acquired hardware information, the remote control software determines the graphics card configuration of the controlled computer; if the controlled computer has both an integrated graphics card and an independent graphics card, proceed to step S4; if the controlled computer has only an integrated graphics card or an independent graphics card, the integrated graphics card or independent graphics card is used for encoding.

[0027] S4: Select encoding graphics card: When the controlled computer has both integrated graphics card and independent graphics card, when performing encoding tasks, if it is detected that the independent graphics card of the controlled computer is already under heavy load, it is judged that the use of independent graphics card by the remote control software will cause the performance of the remote control software to be affected. The remote control software chooses to modify all or part of the encoding graphics card of the encoding software to an integrated graphics card to improve the performance and encoding quality of the remote control software; the independent graphics card is already under heavy load when the GPU utilization rate is ≥75%.

[0028] S5: Modify the encoding graphics card configuration: Through the settings inside the encoding software or calling the system API, the remote control software changes the graphics card configuration of the encoding software to the integrated graphics card, so that the encoding task of the encoding software is processed by the integrated graphics card, and the remote control software occupies most of the computing power of the independent graphics card for encoding. When the independent graphics card encodes the remote control software and other encoding software, the load rate of the independent graphics card is controlled within 85%.

[0029] In the present invention, the remote control software first detects the graphics card configuration of the controlled computer. When there is an independent graphics card and an integrated graphics card, the method of the present invention can be used to optimize the performance of the remote control software. When other encoding software occupies more than 75% of the computing power of the independent graphics card, it is judged that the remote control software is prone to jamming when using the independent graphics card, and the remote control software modifies the graphics card configuration of part or all of the other encoding software from the independent graphics card to the integrated graphics card, so that the remote control software can occupy most of the computing power of the independent graphics card, fully guaranteeing the encoding performance of the remote control software, avoiding jamming and frame drops of the remote control software, and improving the user experience.

[0030] In a specific embodiment, the remote control software modifies the settings inside the encoding software so that the remote control software changes the graphics card configuration of the encoding software to an integrated graphics card. The encoding software allows you to customize which graphics card to use for encoding in the settings or preferences menu of the software. Therefore, you can select an integrated graphics card and configure it as needed. Common setting options include hardware encoder selection, graphics card selection, or preference settings. The remote control software can find the corresponding function in these options and choose to use the integrated graphics card for encoding.

[0031] In another specific embodiment, the remote control software changes the graphics card configuration of the encoding software to an integrated graphics card by calling the system API; on the Windows platform, the D3D12CreateDevice function of DirectX or the glGetString function of OpenGL is used to obtain the graphics card information, and the relevant functions are called to specify the integrated graphics card for encoding. The encoding software can also control the use of the graphics card by calling the system's graphics API. In the Windows operating system, graphics APIs such as DirectX or OpenGL can be used to control the graphics card. By calling the relevant API functions in the encoding software, it is possible to specify the use of the integrated graphics card for encoding.

[0032] In this embodiment, the method for optimizing the performance of the remote software also includes: S6: Restoring the encoding graphics card configuration: After the remote connection ends or the user manually closes the remote control software, the remote control software restores the graphics card configuration of the encoding software to use its independent graphics card to ensure that the encoding software of the controlled computer can use its independent graphics card normally.

[0033] In this embodiment, the following function is used on the Windows operating system to restore the encoding graphics card configuration.

[0034] EnumDisplayDevices function: This function is used to retrieve information related to the system's graphics display device, including the graphics card's hardware ID and related settings; by calling the EnumDisplayDevices function, the remote control software can obtain the current graphics card's configuration information.

[0035] ChangeDisplaySettingsEx function: This function is used to change the settings of the display device, including the resolution and refresh rate of the graphics card. By calling the ChangeDisplaySettingsEx function, the remote control software restores the graphics card configuration to the default settings or the previous configuration to ensure that the controlled computer can use its independent graphics card for graphics processing normally.

[0036] UpdateLayeredWindowIndirect function: This function is used to update the window layer; if a transparent window is being used for remote control on the controlled computer, this function is involved; to ensure that the transparent effect is displayed correctly when the graphics card configuration is changed.

[0037] In summary, the present invention provides a method for optimizing the performance of remote software, which detects the current computer performance through remote control software and modifies the encoding graphics card of other encoding software to optimize the performance of remote software. In addition to the remote control software, other encoding software uses integrated graphics cards for encoding to avoid freezing when other user software occupies a large amount of independent graphics card performance, thereby improving the operating efficiency and fluency of the remote software and enhancing the user experience.

[0038] The above are only preferred embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for optimizing remote software performance, characterized in that: The following steps are involved: S1: When establishing a remote connection, the remote control software automatically detects the hardware environment of the controlled computer; S2: The remote control software detects whether the controlled computer has an integrated graphics card and a discrete graphics card, and obtains relevant hardware information; S3: Based on the acquired hardware information, the remote control software determines the graphics card configuration of the controlled computer; if the controlled computer has both an integrated graphics card and an independent graphics card, the process proceeds to step S4; if the controlled computer has only an integrated graphics card or an independent graphics card, the integrated graphics card or independent graphics card is used for encoding; S4: When the controlled computer has both an integrated graphics card and an independent graphics card, when performing an encoding task, if it is detected that the independent graphics card of the controlled computer is already under heavy load, it is determined that the use of the independent graphics card by the remote control software will affect the performance of the remote control software, and the remote control software chooses to change the encoding graphics card of all or part of the encoding software to an integrated graphics card; the independent graphics card is already under heavy load when the GPU utilization rate is ≥ 75%; S5: The remote control software modifies the graphics card configuration of the encoding software to an integrated graphics card, so that the encoding task of the encoding software is processed using the integrated graphics card.

2. A method for optimizing remote software performance according to claim 1, characterized in that: The remote control software modifies the internal settings of the encoding software so that the remote control software changes the graphics card configuration of the encoding software to an integrated graphics card.

3. A method for optimizing remote software performance according to claim 1, characterized in that: The remote control software changes the graphics card configuration of the encoding software to the integrated graphics card by calling the system API; on the Windows platform, use the D3D12CreateDevice function of DirectX or the glGetString function of OpenGL to obtain the graphics card information, and call related functions to specify the integrated graphics card for encoding.

4. A method for optimizing remote software performance according to claim 1, characterized in that: Also includes: S6: After the remote connection ends or the user manually closes the remote control software, the remote control software restores the graphics card configuration of the encoding software to use its independent graphics card to ensure that the encoding software of the controlled computer can use its independent graphics card normally.

5. A method for optimizing remote software performance according to claim 4, characterized in that: Use the following function to restore the encoding graphics card configuration on Windows operating systems: EnumDisplayDevices function: This function is used to retrieve information related to the system's graphics display device, including the graphics card's hardware ID and related settings; by calling the EnumDisplayDevices function, the remote control software can obtain the current graphics card configuration information; ChangeDisplaySettingsEx function: This function is used to change the settings of the display device, including the resolution and refresh rate of the graphics card. By calling the ChangeDisplaySettingsEx function, the remote control software restores the graphics card configuration to the default settings or the previous configuration to ensure that the controlled computer can use its independent graphics card for graphics processing normally.

6. A method for optimizing remote software performance according to claim 5, characterized in that: Also includes: UpdateLayeredWindowIndirect function: This function is used to update the window layer; If the controlled computer is using a transparent window for remote control, this function is involved; This ensures that transparency effects are displayed correctly when changing graphics card configurations.

7. A method for optimizing remote software performance according to claim 1, characterized in that: When the independent graphics card encodes the remote control software and other encoding software, the load rate of the independent graphics card is controlled within 85%.