CN114546656A - Configuration method and system for graphic display data balanced transmission - Google Patents
Configuration method and system for graphic display data balanced transmission Download PDFInfo
- Publication number
- CN114546656A CN114546656A CN202210181320.6A CN202210181320A CN114546656A CN 114546656 A CN114546656 A CN 114546656A CN 202210181320 A CN202210181320 A CN 202210181320A CN 114546656 A CN114546656 A CN 114546656A
- Authority
- CN
- China
- Prior art keywords
- transmission rate
- unit time
- page turning
- intermediate value
- data transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
The invention provides a configuration method and a system for balanced transmission of graphic display data, wherein the configuration method comprises the following steps: s1, calculating the data transmission quantity of all current image display tasks in unit time by the GPU in real time, and calculating the optimal data transmission quantity of the GPU in unit time by analyzing the data transmission rates of all current image display tasks and the maximum transmission rate of the system in real time on the premise of meeting the image display quality; the system is a graphic display system; and S2, optimally setting the times of submitting the GPU video memory data in unit time in a software mode according to the optimal data transmission quantity of the GPU in unit time calculated in the step S1. The method has the advantages that when a plurality of image display tasks are simultaneously operated, the optimal setting is carried out on the times of submitting the display data in unit time in a self-adaptive mode, the display resources are reasonably distributed on the premise of ensuring the image display quality, and therefore better user experience is obtained.
Description
Technical Field
The invention belongs to the field of computer display, and particularly relates to a configuration method and a configuration system for balanced transmission of graphic display data.
Background
The invention patent CN112148630A "a Graphics Processing Unit (GPU) Graphics display-based video memory adaptive management method" discloses the following technologies: by creating a video memory object management linked list, the video memory space is adaptively managed when the graphic display application is used and quits. The method is a video memory management method and does not relate to a configuration method for the balanced transmission of graphic display data.
The invention patent CN108877706A "low power display device with variable refresh rate" discloses the following technology: the refresh rate is changed at a Liquid Crystal Display (LCD) of the consumer electronics device by means of hardware control. The method changes the refresh rate in a hardware mode, needs additional hardware circuit design, and does not relate to a method for changing the number of times of submitting the video memory data in a software mode when the refresh rate is not changed.
Disclosure of Invention
In view of the above, the present invention provides a configuration method and system for balanced transmission of graphics display data, which aims to solve the problem of abnormal display of image frames caused by insufficient image display resources when a plurality of image display tasks are simultaneously executed. The invention aims to adaptively optimally set the times of submitting the display data to the display memory data in unit time when a plurality of image display tasks are simultaneously operated, and reasonably allocate display resources on the premise of ensuring the image display quality, thereby obtaining the advantage of better user experience.
In order to achieve the above object, in a first aspect, the present invention provides a configuration method for balanced transmission of graphic display data, including the following steps:
s1, calculating the data transmission quantity of all current image display tasks in unit time by the GPU in real time, and calculating the optimal data transmission quantity of the GPU in unit time by analyzing the data transmission rates of all current image display tasks and the maximum transmission rate of the system in real time on the premise of meeting the image display quality; the system is a graphic display system;
and S2, optimally setting the times of submitting the GPU video memory data in unit time in a software mode according to the optimal data transmission quantity of the GPU in unit time calculated in the step S1.
In an optional example, the step S1 includes the following steps:
s11, obtaining a refresh rate range of the display, and determining the slowest times of submitting the video memory data in unit time of the system according to the refresh rate range;
s12, acquiring the data volume transmitted by all current image display tasks in unit time, and calculating to obtain the data transmission rate of all current image display tasks;
and S13, comparing the data transmission rates of all the current image display tasks with the maximum system transmission rate in real time, and calculating the optimal data transmission quantity of the GPU in unit time by a dichotomy.
In an alternative example, the step S13 includes the following sub-steps:
s131, after the refresh rate of the display is switched, the GPU drives the frequency of page _ flip page turning operation in unit time to change along with the change of the refresh rate of the display, and calculates the frequency of page turning operation in unit time under the current refresh rate, wherein the value is the default display sending frequency of page turning in unit time under the current refresh rate;
s132, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of a system, if the data transmission rates of all current image display tasks are greater than the maximum transmission rate of the system, recording the page turning times in the current unit time as preset page turning times, calculating the optimal times of page turning operation in the unit time by a dichotomy based on the preset page turning times and the slowest times of submitting display memory data in the unit time of the system, and reducing the times of page turning operation in the unit time to ensure that the data transmission rates of all current image display tasks are less than or equal to the maximum transmission rate of the system;
s133, comparing the data transmission rate of all the current image display tasks with the maximum transmission rate of the system, wherein if the data transmission rate of all the current image display tasks is equal to the maximum transmission rate of the system, the preset page turning times are the optimal times for performing page turning operation in unit time; if the data transmission rate of all the current image display tasks is less than the system maximum transmission rate, calculating the optimal times of page turning operation in unit time by a dichotomy based on the preset page turning times and the default display sending times, and increasing the times of page turning operation in unit time to ensure that the data transmission rate of all the current image display tasks is less than or equal to the system maximum transmission rate;
s134, calculating the optimal times of page turning operation of the GPU in unit time through the steps, and calculating the optimal data transmission quantity of the GPU in unit time based on the optimal times and the data submitted to the video memory by all the current image display tasks each time, so that the optimal data transmission quantity is just smaller than the maximum transmission quantity of the system.
In an optional example, the step S132 of calculating the optimal number of page turning operations performed in unit time by using a dichotomy specifically includes the following steps:
recording the number of times of page turning operation in current unit time, comparing the number of times of page turning in current unit time with the slowest number of times of submitting display and memory data in unit time of a system, if the number of times of page turning is less than or equal to the slowest number of times, taking the intermediate value between the number of times of page turning and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the current page turning times are larger than the slowest times, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system when the page turning times in unit time are the slowest times, and if the data transmission rates of all current image display tasks are smaller than or equal to the maximum transmission rate of the system, taking the intermediate value of the current page turning times and the slowest times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the slowest times and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; setting the maximum value of the two values for obtaining the first value intermediate value as a first value, and setting the minimum value as a second value;
when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all the current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value of the first numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking the intermediate value between the second numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value;
repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
In an optional example, the step S133 calculates the optimal number of page turning operations performed in unit time by a dichotomy, and specifically includes the following steps:
recording the number of times of page turning operation in current unit time as a preset page turning number, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of a system when the preset page turning number is a default display sending number in unit time, and if the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system, taking the default display sending number as the optimal number of times of page turning in unit time; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value of the preset page turning times and the default display sending times, and rounding the intermediate value downwards to obtain a first rounded intermediate value;
when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value between the default display sending times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the preset page turning times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value;
repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
In a second aspect, the present invention provides a configuration system for equalizing transmission of graphic display data, including:
the optimal data transmission quantity determining unit is used for calculating the data transmission quantity of all current image display tasks in unit time in real time, and calculating the optimal data transmission quantity of the GPU in unit time by analyzing the data transmission rates of all current image display tasks and the maximum transmission rate of the system in real time on the premise of meeting the image display quality; the system is a graphic display system;
and the GPU video memory data transmission configuration unit is used for optimally setting the times of submitting the GPU video memory data in unit time in a software mode according to the optimal data transmission quantity of the GPU in unit time.
In an optional example, the optimal data transmission amount determining unit obtains a refresh rate range of a display, and determines the slowest times of submitting the video memory data in unit time of the system according to the refresh rate range; acquiring the data volume transmitted by all current image display tasks in unit time, and calculating to obtain the data transmission rate of all current image display tasks; and comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system in real time, and calculating the optimal data transmission quantity of the GPU in unit time by a dichotomy.
In an optional example, the optimal data transmission amount determining unit compares the data transmission rates of all current image display tasks with the maximum system transmission rate in real time, and calculates the optimal data transmission amount of the GPU in unit time by a bisection method, specifically: after the refresh rate of the display is switched, the GPU drives the frequency of page _ flip page turning operation in unit time to change along with the change of the refresh rate of the display, and calculates the frequency of page turning operation in unit time at the current refresh rate, wherein the value is the default display sending frequency of page turning in unit time at the current refresh rate; comparing the data transmission rate of all current image display tasks with the maximum transmission rate of the system, if the data transmission rate of all current image display tasks is greater than the maximum transmission rate of the system, recording the page turning times in the current unit time as preset page turning times, calculating the optimal page turning times in the unit time by a binary method based on the preset page turning times and the slowest times of submitting the display memory data in the unit time of the system, and reducing the page turning times in the unit time to ensure that the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system; comparing the data transmission rate of all the current image display tasks with the maximum transmission rate of the system, and if the data transmission rate of all the current image display tasks is equal to the maximum transmission rate of the system, the preset page turning times are the optimal times for performing page turning operation in unit time; if the data transmission rate of all the current image display tasks is less than the system maximum transmission rate, calculating the optimal times of page turning operation in unit time by a dichotomy based on the preset page turning times and the default display sending times, and increasing the times of page turning operation in unit time to ensure that the data transmission rate of all the current image display tasks is less than or equal to the system maximum transmission rate; and calculating the optimal times of page turning operation of the GPU in unit time, and calculating the optimal data transmission quantity of the GPU in unit time based on the optimal times and the data submitted to the video memory by all the current image display tasks each time, so that the optimal data transmission quantity is just smaller than the maximum transmission quantity of the system.
In an optional example, the optimal data transmission amount determining unit calculates, by a binary method, the optimal number of page turning operations performed in unit time based on the preset number of page turning times and the slowest number of times of submitting the video memory data in unit time of the system, specifically: recording the number of times of page turning operation in current unit time, comparing the number of times of page turning in current unit time with the slowest number of times of submitting display and memory data in unit time of a system, if the number of times of page turning is less than or equal to the slowest number of times, taking the intermediate value between the number of times of page turning and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the current page turning times are larger than the slowest times, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system when the page turning times in unit time are the slowest times, and if the data transmission rates of all current image display tasks are smaller than or equal to the maximum transmission rate of the system, taking the intermediate value of the current page turning times and the slowest times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the slowest times and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; setting the maximum value of the two values for obtaining the first value intermediate value as a first value, and setting the minimum value as a second value; when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all the current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value of the first numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking the intermediate value between the second numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
In an optional example, the optimal data transmission amount determining unit calculates the optimal number of page turning operations performed in unit time by a bisection method based on the preset page turning times and the default display sending times, and specifically includes the following steps:
recording the number of times of page turning operation in current unit time as a preset page turning number, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of a system when the preset page turning number is a default display sending number in unit time, and if the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system, taking the default display sending number as the optimal number of times of page turning in unit time; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value of the preset page turning times and the default display sending times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value between the default display sending times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the preset page turning times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
Generally, compared with the prior art, the above technical solution conceived by the present invention has the following beneficial effects:
the invention provides a configuration method and a configuration system for balanced transmission of graphic display data, which are characterized in that the data transmission rate of all current image display tasks and the maximum transmission rate of a system are analyzed in real time on the premise of meeting the graphic display quality by calculating the data transmission amount of all current image display tasks in unit time in real time, and the optimal data transmission amount of a GPU in unit time is calculated; and the optimal setting is carried out on the times of submitting the video memory data in unit time through a software implementation mode. The invention can adaptively carry out optimal setting on the times of submitting the video memory data in unit time when a plurality of image display tasks are simultaneously operated, and reasonably distributes display resources on the premise of ensuring the image display quality, thereby obtaining the advantage of better user experience.
Drawings
Fig. 1 is a flowchart of a configuration method for equalizing transmission of graphic display data according to an embodiment of the present invention;
FIG. 2 is a sub-flowchart of step S1 provided by an embodiment of the present invention;
FIG. 3 is a sub-flowchart of step S132 provided by an embodiment of the present invention;
FIG. 4 is a sub-flowchart of step S133 provided by an embodiment of the present invention;
FIG. 5 is a sub-flowchart of step S2 provided by an embodiment of the present invention;
fig. 6 is a configuration system architecture diagram for equalizing transmission of graphic display data according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
As shown in fig. 1, the present invention provides a configuration method for equalizing transmission of graphic display data, which comprises the following steps:
and S1, calculating the unit time data transmission quantity of all current image display tasks in real time by the GPU. On the premise of meeting the graphic display quality, the optimal data transmission quantity of the GPU in unit time is calculated by analyzing the data transmission rates of all the current image display tasks and the maximum transmission rate of the system in real time.
And S2, optimally setting the times of submitting the data to the video memory in unit time in a software mode according to the GPU optimal data transmission amount in unit time calculated in S1.
As shown in fig. 2, the step S1 includes the following sub-steps:
s11, the GPU obtains the range of the refresh rate of the display, the fastest frequency fast and the slowest frequency slow of the system submitting the video memory data in unit time can be obtained through the range, if the display has only one refresh rate, the frequency that the system submits the video memory data in unit time is only one, namely the highest frequency is equal to the lowest frequency.
And S12, the GPU acquires the data volume transmitted by all the current image display tasks in unit time, and calculates the data transmission rate display _ rate of all the current image display tasks.
And S13, analyzing the data transmission rates of all current image display tasks and the system maximum transmission rate in real time, and calculating the optimal data transmission quantity of the GPU in unit time by a dichotomy.
In an alternative example, the step S13 includes the following sub-steps:
s131, after the refresh rate of the display is switched, the GPU drives the frequency of page _ flip page turning operation in unit time to change along with the change of the refresh rate of the display, and calculates the frequency of page turning operation in unit time under the current refresh rate, wherein the value is the default display sending frequency of page turning in unit time under the current refresh rate;
s132, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of the system, if the data transmission rate of all current image display tasks is greater than the maximum transmission rate of the system, recording the page turning times in the current unit time as preset page turning times, calculating the optimal page turning times in the unit time by a binary method based on the preset page turning times and the slowest times of submitting the video memory data in the unit time of the system, and reducing the page turning times in the unit time to ensure that the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system;
specifically, the sizes of the data transmission rates display _ rate of all current image display tasks and the system maximum transmission rate system _ rate are compared, and if the display _ rate is larger than the system _ rate, the number of times of performing page _ flip in the current unit time is recorded as tmp. And calculating the optimal times of page _ flip (page flip) operation in unit time by a dichotomy. The specific calculation method is shown in fig. 3:
recording the number of times of page turning operation in current unit time, comparing the number of times of page turning in current unit time with the slowest number of times of submitting display and memory data in unit time of a system, if the number of times of page turning is less than or equal to the slowest number of times, taking the intermediate value between the number of times of page turning and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the current page turning times are larger than the slowest times, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system when the page turning times in unit time are the slowest times, and if the data transmission rates of all current image display tasks are smaller than or equal to the maximum transmission rate of the system, taking the intermediate value of the current page turning times and the slowest times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the slowest times and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; setting the maximum value of the two values for obtaining the first value intermediate value as a first value, and setting the minimum value as a second value;
when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all the current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value of the first numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the second numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value;
repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
S133, comparing the data transmission rate of all the current image display tasks with the maximum transmission rate of the system, wherein if the data transmission rate of all the current image display tasks is equal to the maximum transmission rate of the system, the preset page turning times are the optimal times for performing page turning operation in unit time; if the data transmission rate of all the current image display tasks is less than the system maximum transmission rate, calculating the optimal times of page turning operation in unit time by a dichotomy based on the preset page turning times and the default display sending times, and increasing the times of page turning operation in unit time to ensure that the data transmission rate of all the current image display tasks is less than or equal to the system maximum transmission rate;
specifically, the sizes of the current all-image display task data transmission rate display _ rate and the system maximum transmission rate system _ rate are compared. If display _ rate is equal to system _ rate, the number of times the page _ flip is performed per unit time remains tmp. And if the display _ rate is smaller than the system _ rate, calculating the optimal times of page _ flip (page flip) operation in unit time by using a dichotomy. The specific calculation method is shown in fig. 4:
recording the number of times of page turning operation in current unit time as a preset page turning number, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of a system when the preset page turning number is a default display sending number in unit time, and if the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system, taking the default display sending number as the optimal number of times of page turning in unit time; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value of the preset page turning times and the default display sending times, and rounding the intermediate value downwards to obtain a first rounded intermediate value;
when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value between the default display sending times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the preset page turning times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value;
repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
S134, calculating the optimal times of page turning operation of the GPU in unit time, and calculating the optimal data transmission quantity of the GPU in unit time based on the optimal times and the data submitted to the video memory by all the current image display tasks each time, so that the optimal data transmission quantity is just smaller than the maximum transmission quantity of the system.
As shown in fig. 5, the step S2 includes the following sub-steps:
and S21, setting the times of page _ flip operation in unit time according to the optimal data transmission amount of the GPU in unit time calculated in S1.
And S22, the kernel layer starts to perform the page _ flip after receiving the page _ flip submitted by the application layer. The kernel layer sends an event to the application layer after finishing the page _ flip operation.
Fig. 6 is a configuration system for equalizing transmission of graphic display data according to the present invention, as shown in fig. 6, including:
an optimal data transmission amount determining unit 610, configured to calculate, in real time, data transmission amounts of all current image display tasks in unit time, and calculate, on the premise that image display quality is satisfied, an optimal data transmission amount of a GPU of a graphics processor in unit time by analyzing, in real time, data transmission rates of all current image display tasks and a maximum transmission rate of a system; the system is a graphic display system;
and the GPU video memory data transmission configuration unit 620 is configured to optimally set, in a software manner, the number of times of submitting the GPU video memory data in unit time according to the optimal data transmission amount of the GPU in unit time.
It is understood that detailed functional implementation of each unit described above can refer to the description in the foregoing method embodiment, and is not described herein again.
It will be understood by those skilled in the art that the foregoing is only a preferred embodiment of the present invention, and is not intended to limit the invention, and that any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the scope of the present invention.
Claims (10)
1. A configuration method for equalizing transmission of graphic display data is characterized by comprising the following steps:
s1, calculating the data transmission quantity of all current image display tasks in unit time by the GPU in real time, and calculating the optimal data transmission quantity of the GPU in unit time by analyzing the data transmission rates of all current image display tasks and the maximum transmission rate of the system in real time on the premise of meeting the image display quality; the system is a graphic display system;
and S2, optimally setting the times of submitting the GPU video memory data in unit time in a software mode according to the optimal data transmission quantity of the GPU in unit time calculated in the step S1.
2. The configuration method according to claim 1, wherein the step S1 includes the steps of:
s11, obtaining a refresh rate range of the display, and determining the slowest times of submitting the video memory data in unit time of the system according to the refresh rate range;
s12, acquiring the data volume transmitted by all current image display tasks in unit time, and calculating to obtain the data transmission rate of all current image display tasks;
and S13, comparing the data transmission rates of all the current image display tasks with the maximum system transmission rate in real time, and calculating the optimal data transmission quantity of the GPU in unit time by a dichotomy.
3. The configuration method according to claim 2, wherein the step S13 includes the following sub-steps:
s131, after the refresh rate of the display is switched, the GPU drives the frequency of page _ flip page turning operation in unit time to change along with the change of the refresh rate of the display, and calculates the frequency of page turning operation in unit time under the current refresh rate, wherein the value is the default display sending frequency of page turning in unit time under the current refresh rate;
s132, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of the system, if the data transmission rate of all current image display tasks is greater than the maximum transmission rate of the system, recording the page turning times in the current unit time as preset page turning times, calculating the optimal page turning times in the unit time by a binary method based on the preset page turning times and the slowest times of submitting the video memory data in the unit time of the system, and reducing the page turning times in the unit time to ensure that the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system;
s133, comparing the data transmission rate of all the current image display tasks with the maximum transmission rate of the system, wherein if the data transmission rate of all the current image display tasks is equal to the maximum transmission rate of the system, the preset page turning times are the optimal times for performing page turning operation in unit time; if the data transmission rate of all the current image display tasks is less than the system maximum transmission rate, calculating the optimal times of page turning operation in unit time by a dichotomy based on the preset page turning times and the default display sending times, and increasing the times of page turning operation in unit time to ensure that the data transmission rate of all the current image display tasks is less than or equal to the system maximum transmission rate;
s134, calculating the optimal times of page turning operation of the GPU in unit time through the steps, and calculating the optimal data transmission quantity of the GPU in unit time based on the optimal times and the data submitted to the video memory by all the current image display tasks each time, so that the optimal data transmission quantity is just smaller than the maximum transmission quantity of the system.
4. The configuration method according to claim 3, wherein the step S132 of calculating the optimal number of page turning operations per unit time by a binary method specifically includes the following steps:
recording the number of times of page turning operation in current unit time, comparing the number of times of page turning in current unit time with the slowest number of times of submitting display and memory data in unit time of a system, if the number of times of page turning is less than or equal to the slowest number of times, taking the intermediate value between the number of times of page turning and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the current page turning times are larger than the slowest times, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system when the page turning times in unit time are the slowest times, and if the data transmission rates of all current image display tasks are smaller than or equal to the maximum transmission rate of the system, taking the intermediate value of the current page turning times and the slowest times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the slowest times and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; setting the maximum value of the two values for obtaining the first value intermediate value as a first value, and setting the minimum value as a second value;
when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all the current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value of the first numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking the intermediate value between the second numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value;
repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
5. The configuration method according to claim 3, wherein the step S133 of calculating the optimal number of page turning operations per unit time by a binary method specifically includes the following steps:
recording the number of times of page turning operation in current unit time as a preset page turning number, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of a system when the preset page turning number is a default display sending number in unit time, and if the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system, taking the default display sending number as the optimal number of times of page turning in unit time; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value of the preset page turning times and the default display sending times, and rounding the intermediate value downwards to obtain a first rounded intermediate value;
when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value between the default display sending times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the preset page turning times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value;
repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
6. A system for configuring equalized transmission of graphics display data, comprising:
the optimal data transmission quantity determining unit is used for calculating the data transmission quantity of all current image display tasks in unit time in real time, and calculating the optimal data transmission quantity of the GPU in unit time by analyzing the data transmission rates of all current image display tasks and the maximum transmission rate of the system in real time on the premise of meeting the image display quality; the system is a graphic display system;
and the GPU video memory data transmission configuration unit is used for optimally setting the times of submitting the GPU video memory data in unit time in a software mode according to the optimal data transmission quantity of the GPU in unit time.
7. The configuration system according to claim 6, wherein the optimal data transmission amount determining unit obtains a refresh rate range of the display, and determines the slowest times of submitting the video memory data in unit time of the system according to the refresh rate range; acquiring the data volume transmitted by all current image display tasks in unit time, and calculating to obtain the data transmission rate of all current image display tasks; and comparing the data transmission rates of all the current image display tasks with the maximum system transmission rate in real time, and calculating the optimal data transmission quantity of the GPU in unit time by a dichotomy.
8. The configuration system according to claim 7, wherein the optimal data transmission amount determining unit compares the data transmission rates of all current image display tasks with the maximum system transmission rate in real time, and calculates the optimal data transmission amount of the GPU per unit time by a bisection method, specifically: after the refresh rate of the display is switched, the GPU drives the frequency of page _ flip page turning operation in unit time to change along with the change of the refresh rate of the display, and calculates the frequency of page turning operation in unit time at the current refresh rate, wherein the value is the default display sending frequency of page turning in unit time at the current refresh rate; comparing the data transmission rate of all current image display tasks with the maximum transmission rate of the system, if the data transmission rate of all current image display tasks is greater than the maximum transmission rate of the system, recording the page turning times in the current unit time as preset page turning times, calculating the optimal page turning times in the unit time by a binary method based on the preset page turning times and the slowest times of submitting the display memory data in the unit time of the system, and reducing the page turning times in the unit time to ensure that the data transmission rate of all current image display tasks is less than or equal to the maximum transmission rate of the system; comparing the data transmission rate of all the current image display tasks with the maximum transmission rate of the system, and if the data transmission rate of all the current image display tasks is equal to the maximum transmission rate of the system, the preset page turning times are the optimal times for performing page turning operation in unit time; if the data transmission rate of all the current image display tasks is less than the maximum transmission rate of the system, calculating the optimal times of page turning operation in unit time by a dichotomy based on the preset page turning times and the default display sending times, and increasing the times of page turning operation in unit time to ensure that the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system; and calculating the optimal times of page turning operation of the GPU in unit time, and calculating the optimal data transmission quantity of the GPU in unit time based on the optimal times and the data submitted to the video memory by all the current image display tasks each time, so that the optimal data transmission quantity is just smaller than the maximum transmission quantity of the system.
9. The configuration system according to claim 8, wherein the optimal data transmission amount determining unit calculates the optimal number of page-turning operations performed in unit time by a binary method based on the preset number of page-turning times and the slowest number of times of submitting video memory data in unit time of the system, specifically: recording the number of page turning operations performed in current unit time, comparing the number of page turning times in current unit time with the slowest number of times of submitting display and memory data in system unit time, if the current number of page turning times is less than or equal to the slowest number of times, taking an intermediate value between the current number of page turning times and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the current page turning times are larger than the slowest times, comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system when the page turning times in unit time are the slowest times, and if the data transmission rates of all the current image display tasks are smaller than or equal to the maximum transmission rate of the system, taking the intermediate value of the current page turning times and the slowest times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the slowest times and 0, and rounding the intermediate value downwards to obtain a first rounded intermediate value; setting the maximum value of the two values for obtaining the first value intermediate value as a first value, and setting the minimum value as a second value; when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all the current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all the current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value of the first numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking the intermediate value between the second numerical value and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
10. The configuration system according to claim 8, wherein the optimal data transmission amount determining unit calculates the optimal number of page turning operations per unit time by a binary method based on the preset number of page turning times and the default number of display times, and specifically includes the following steps:
recording the number of page turning operations performed in current unit time as a preset page turning number, comparing the data transmission rate of all current image display tasks with the maximum transmission rate of a system when the preset page turning number is the default display sending number in unit time, and if the data transmission rate of all current image display tasks is smaller than or equal to the maximum transmission rate of the system, taking the default display sending number as the optimal number of page turning in unit time; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value of the preset page turning times and the default display sending times, and rounding the intermediate value downwards to obtain a first rounded intermediate value; when the page turning times in unit time is the first rounding intermediate value, comparing the data transmission rates of all current image display tasks with the maximum transmission rate of the system, if the data transmission rates of all current image display tasks are less than or equal to the maximum transmission rate of the system, taking the intermediate value between the default display sending times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; if the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system, taking an intermediate value between the preset page turning times and the first rounding intermediate value, and rounding the intermediate value downwards to obtain a second rounding intermediate value; repeating the steps until the data transmission rate of all the current image display tasks is less than or equal to the maximum transmission rate of the system when the number of times of page turning in unit time is the nth-1 rounding intermediate value, and the data transmission rate of all the current image display tasks is greater than the maximum transmission rate of the system when the number of times of page turning in unit time is the nth rounding intermediate value, and at the moment, setting the nth-1 rounding intermediate value as the optimal number of times of page turning in unit time; n is an integer of 2 or more.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210181320.6A CN114546656A (en) | 2022-02-25 | 2022-02-25 | Configuration method and system for graphic display data balanced transmission |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210181320.6A CN114546656A (en) | 2022-02-25 | 2022-02-25 | Configuration method and system for graphic display data balanced transmission |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114546656A true CN114546656A (en) | 2022-05-27 |
Family
ID=81680266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210181320.6A Pending CN114546656A (en) | 2022-02-25 | 2022-02-25 | Configuration method and system for graphic display data balanced transmission |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114546656A (en) |
-
2022
- 2022-02-25 CN CN202210181320.6A patent/CN114546656A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10475413B2 (en) | Method and apparatus for adjusting backlight brightness of screen, and mobile terminal | |
EP3137965B1 (en) | Cpu/gpu dcvs co-optimization for reducing power consumption in graphics frame processing | |
US8635475B2 (en) | Application-specific power management | |
EP2178080B1 (en) | Performance allocation method and apparatus | |
US7844705B2 (en) | Networked image visualization image quality enhancement method and system | |
EP3254171B1 (en) | Clock rate adjustment for processing unit | |
JP2018533112A (en) | GPU workload characterization and power management using command stream hints | |
WO2014065996A1 (en) | Dynamic adjustment of an interrupt latency threshold and a resource supporting a processor in a portable computing device | |
US20130166832A1 (en) | Methods and electronic devices for adjusting the operating frequency of a memory | |
TW201631439A (en) | Adaptive graphics subsystem power and performance management | |
US20120102407A1 (en) | Displaying battery life resulting from setting changes | |
US9075789B2 (en) | Methods and apparatus for interleaving priorities of a plurality of virtual processors | |
WO2021103596A1 (en) | Data migration method, device, and computer-readable storage medium | |
CN108509016A (en) | Control the method and device and related media production of CPU power consumption | |
CN113032233A (en) | Distributed service cluster runtime parameter adaptive processing method, device and system | |
CN111538678A (en) | Data buffering method, device and computer readable storage medium | |
WO2017131907A2 (en) | Systems and methods for providing power efficiency via memory latency control | |
CN107704213B (en) | Automatic service quality management method and device for storage array | |
CN113127194A (en) | Management chip resource self-adaptive distribution method, device and medium | |
WO2022148180A1 (en) | Image output method and apparatus, computer device and computer readable storage medium | |
CN113132272B (en) | Network switching frequency dynamic adjustment method and system based on flow perception and network switching chip structure | |
CN103942103A (en) | Method and device for generating processor scheduling policy in multi-core system and scheduling system | |
CN113870812A (en) | Method and device for adjusting refresh frame rate of display screen, processor, chip and terminal | |
CN114237896A (en) | Distributed node resource dynamic scheduling method and device | |
CN114546656A (en) | Configuration method and system for graphic display data balanced transmission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |