CN113064728B - High-load application image display method, terminal and readable storage medium - Google Patents

High-load application image display method, terminal and readable storage medium Download PDF

Info

Publication number
CN113064728B
CN113064728B CN202110412888.XA CN202110412888A CN113064728B CN 113064728 B CN113064728 B CN 113064728B CN 202110412888 A CN202110412888 A CN 202110412888A CN 113064728 B CN113064728 B CN 113064728B
Authority
CN
China
Prior art keywords
display
card
built
memory
video data
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.)
Active
Application number
CN202110412888.XA
Other languages
Chinese (zh)
Other versions
CN113064728A (en
Inventor
杨东虎
郑自浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Grey Shark Technology Co ltd
Original Assignee
Shanghai Zhongchain Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Zhongchain Technology Co ltd filed Critical Shanghai Zhongchain Technology Co ltd
Priority to CN202110412888.XA priority Critical patent/CN113064728B/en
Publication of CN113064728A publication Critical patent/CN113064728A/en
Application granted granted Critical
Publication of CN113064728B publication Critical patent/CN113064728B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

The invention provides a high-load application image display method, a terminal and a readable storage medium, relates to the technical field of image display, is applied to an Android system terminal with an independent display card, and comprises the following steps: receiving a high-load application starting signal, and acquiring target application data according to the starting signal; distributing a graphic memory based on target application data by adopting an independent display card, and synchronously drawing and rendering to obtain a processing result; dividing target application data and a processing result under a built-in display module; allocating memory to each application layer according to a first rule; converting the video memory corresponding to each image layer into a linear memory under an independent video card; the linear memory corresponding to each layer is synthesized and sent to the display under the display module with the built-in display card, and the method is used for solving the problem that the display smoothness of the high-load application image is influenced due to the fact that the pressure of the display module is large due to the large calculated amount generated by rendering of the mobile terminal with the independent display card.

Description

High-load application image display method, terminal and readable storage medium
Technical Field
The invention relates to the technical field of image display, in particular to a high-load application image display method, a terminal and a readable storage medium.
Background
Since 2020, it is found that the trend of hand tour is not only toward high refresh rate, but also the trend of high image quality is more and more obvious, such as new spirit, and peace elite HDR high definition. In addition, the resolution of the current spirit, peace and elite and collapse 3 is only 720P, the resolution is likely to be developed to 2K in the future, the requirement of the AR/VR game on the GPU is still very high, and the requirement of the mobile device on the GPU is expected to be higher and higher.
The independent display card is configured with an independent display memory, the memory bandwidth is not occupied with the system, and the display memory bandwidth is generally ten times of the system memory bandwidth, so that the GPU is favorable for parallel processing tasks, and the performance advantage of the independent display card is very obvious on a PC. Therefore, the form of the independent display card is introduced into the mobile terminal, which is also a direction considered in the industry, the independent display card is introduced into the mobile terminal, the GPU of the independent display card can be used for processing images and returning the images to the built-in display module for display sending, when the high-load application is operated, the data returned by the independent display card is large, the built-in display module sends the returned data for display processing, the consumption of the processing process on the system performance is large, and the calling fluency of the high-load application is influenced.
Disclosure of Invention
In order to overcome the technical defects, an object of the present invention is to provide a method, a terminal and a readable storage medium for displaying a high-load application image, which are used for solving the problem that when a mobile terminal with an independent display card returns processing data to a built-in display module, a large amount of computation generated by rendering has a large pressure on the display module, which causes system performance consumption, and affects the smoothness of displaying the high-load application image.
The invention discloses a high-load application image display method, which is applied to an Android system terminal with an independent display card and comprises the following steps:
receiving a high-load application starting signal, and acquiring target application data according to the starting signal;
distributing a graphic memory based on the target application data by adopting a graphic processor of an independent display card, and synchronously drawing and rendering to obtain a processing result;
displaying the processing result back to a display module of a built-in display card, and segmenting the target application data and the processing result under the built-in display module to obtain a plurality of application layers and processing results corresponding to the application layers;
allocating memory to each application layer according to a first rule to obtain a display memory or a linear memory corresponding to each application layer;
converting the video memory corresponding to each layer into a linear memory under the independent video card, and transmitting the linear memory back to the display module of the built-in video card;
and synthesizing the linear memories corresponding to the layers under a display module with a built-in display card, and displaying the images on a display.
Preferably, the allocating a memory to each application layer according to the first rule includes the following steps:
acquiring the layer number of target application data;
when the number of the layers does not exceed a first threshold value, allocating a display memory to each application layer;
and when the number of the layers exceeds a first threshold value, performing memory allocation on each application layer by adopting a second rule.
Preferably, the performing memory allocation on each application layer by using the second rule includes the following steps:
judging whether the processing results corresponding to the application layers are icon type data one by one;
if yes, distributing a linear memory to the application layer, and if not, distributing a display memory to the application layer.
Preferably, the performing memory allocation on each application layer by using the second rule includes the following steps:
distributing a display memory to each application layer to obtain the display memory of each application layer;
synthesizing the video memories of the application layers under the independent video card to obtain set data, and transmitting the set data back to the built-in display module;
and allocating a video memory or a linear memory to the set data in a built-in display module.
Preferably, before the synchronous drawing and rendering, the method further comprises:
acquiring video data based on the target application data;
judging whether the video data is under an independently set application layer;
if so, decoding the video data by adopting a built-in display card;
and if not, decoding the video data under the independent display card.
Preferably, before decoding the video data under the independent graphics card, the method further includes:
and decoding the video data by adopting a built-in display card to obtain the video data in the YUV format, and transmitting the video data in the YUV format to an independent display card.
Preferably, before decoding the video data under the independent graphics card, the method further includes:
decoding the video data by adopting a built-in display card to obtain video data in a YUV format;
carrying out format conversion on the video data in the YUV format to obtain video data in an RGB format;
and transmitting the video data in the RGB format to an independent display card.
Preferably, the displaying module for displaying the processing result back to the built-in display card comprises:
and copying the video memory of the independent video card under the video memory of the built-in video card so that the display module reads a processing result from the data obtained by copying.
The invention also provides a mobile terminal, which comprises a memory, a processor and a computer program which is stored on the memory and can run on the processor, and is characterized in that the processor realizes the steps when executing the computer program.
The invention also provides a computer-readable storage medium, on which a computer program is stored, characterized in that the computer program realizes the above-mentioned steps when being executed by a processor.
After the technical scheme is adopted, compared with the prior art, the method has the following beneficial effects:
when high-load application is called, the GPU in the independent display card is called to perform memory allocation and rendering, then the rendering result is displayed back to the display module of the built-in display card for synthesis and display, the memory (tile buffer or linear buffer) is allocated to each application layer of the high-load application under the built-in display module, and the tile buffer is converted into the linear buffer under the independent display memory, so that the DPU of the built-in display card can access and push the data to the display for picture display, the pressure of the display module is dispersed through data interaction between the built-in display module and the independent display card, the performance consumption is reduced, and the problem that when the independent display card returns processed data to the built-in display module, the rendering generates larger calculated amount, the pressure of the display module is larger, the system performance consumption is caused, and the smoothness of the high-load application image display is influenced is solved.
Drawings
Fig. 1 is a flowchart of a first embodiment of a method, a terminal and a readable storage medium for displaying images for high-load applications according to the present invention;
fig. 2 is a flowchart for representing a process before synchronous rendering and rendering under an independent graphics card in a first embodiment of the method, the terminal and the readable storage medium for displaying high-load application images according to the present invention;
fig. 3 is a flowchart for embodying memory allocation to each application layer according to a first rule in a first embodiment of the high-load application image display method, the terminal, and the readable storage medium according to the present invention;
fig. 4 is a schematic structural diagram of a module of a first embodiment of a high-load application image display method, a terminal and a readable storage medium according to the present invention;
fig. 5 is a schematic diagram of a hardware structure of a second embodiment of the high-load application image display method, the terminal and the readable storage medium according to the present invention.
Reference numerals: 9. mobile terminal 91, memory 92, processor
Detailed Description
The advantages of the invention are further illustrated by the following detailed description of the preferred embodiments in conjunction with the drawings.
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
The terminology used in the present disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used in this disclosure and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
It is to be understood that although the terms first, second, third, etc. may be used herein to describe various information, such information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, first information may also be referred to as second information, and similarly, second information may also be referred to as first information, without departing from the scope of the present disclosure. The word "if," as used herein, may be interpreted as "at … …" or "at … …" or "in response to a determination," depending on the context.
In the description of the present invention, it is to be understood that the terms "longitudinal", "lateral", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", and the like, indicate orientations or positional relationships based on those shown in the drawings, and are used merely for convenience of description and for simplicity of description, and do not indicate or imply that the referenced devices or elements must have a particular orientation, be constructed in a particular orientation, and be operated, and thus, are not to be construed as limiting the present invention.
In the description of the present invention, unless otherwise specified and limited, it is to be noted that the terms "mounted," "connected," and "connected" are to be interpreted broadly, and may be, for example, a mechanical connection or an electrical connection, a communication between two elements, a direct connection, or an indirect connection via an intermediate medium, and specific meanings of the terms may be understood by those skilled in the art according to specific situations.
In the following description, suffixes such as "module", "component", or "unit" used to denote elements are used only for facilitating the explanation of the present invention, and have no specific meaning in themselves. Thus, "module" and "component" may be used in a mixture.
The first embodiment is as follows: the embodiment discloses a high-load application image display method, which is applied to an Android system terminal with an independent graphics card, and with reference to fig. 4, the independent graphics card also includes an external graphics card, and the terminal internal graphics card includes a first Graphics Processing Unit (GPU) and a first display engine (DPU); the independent display card includes a second graphics processor, and is connected to the mobile terminal in a playback mode, that is, when processing a high-load application, the independent display card invokes a second GPU to perform processing, and returns processed data to the display module in the built-in display card to perform image display using the first DPU, and the display card includes a rendering module (OpenGLES/Vulkan) (for rendering and rendering), a gradloc module (for graphical Buffer allocation (IAllocate), graphical Buffer usage (IMapper)), and a hwcomposer module (for composite rendering, processing related items of the DPU), and in this embodiment, referring to fig. 1, the following are included:
s100: receiving a high-load application starting signal, and acquiring target application data according to the starting signal;
in this embodiment, the high-load applications include, but are not limited to, game applications, high-refresh life applications, and the like, and it should be noted that, in an existing system with an independent display card (Linux system), both the internal display card and the external display card are used in a mesa library, so that the GPU is switched and controlled in the mesa library, and the Android system is based on a GPU library (i.e., a graphics database), so that the independent display card can be called on the Android system, before the high-load applications are called, a high-load application list and a graphics database corresponding to each high-load application may be preconfigured under the Android system, and specifically, a new APK needs to be added to implement the above steps for configuring the high-load application list and the graphics database (GPU library), such as libGLES _ mesa. The method includes the steps that an application name of a high-resolution display picture is added to a high-load application list, a driver of the high-load application needs to be added after the high-load application list is configured, and a second rendering module (in an independent display card) connected with a graphic database of the high-load application is configured when the driver is loaded, specifically, a loading driver is used for configuring a GPU library into a mesa library, so that the independent display card can be called through mesa, wherein EGL is an intermediate interface layer between an OpenGLES rendering API (in the embodiment, libGLES _ mesa, namely a drawing and rendering interface in the independent display card) and a local window system (native display window system), namely when any high-load application in the configured high-load application list is triggered, libGLES _ mesa is called through EGL, and calling of the independent display card is achieved.
S200: distributing a graphic memory based on the target application data by adopting a graphic processor of an independent display card, and synchronously drawing and rendering to obtain a processing result;
specifically, based on the above steps, the libGLES _ mesa may be called, the built-in graphics card does not work completely in the playback mode, the second GPU under the independent graphics card is used to process graphics memory allocation and rendering, the display module (hwcomposition module) in the built-in graphics card is used to send display for image display, the allocation mode of the independent graphics card is selected according to the Gralloc _ ex module (module of the second hardware abstraction layer under the independent graphics card) to allocate graphics memory, the libGLES _ mesa module (rendering module under the independent graphics card) is called during rendering, the display memory is sent back to the hwcomposition module to be combined, and the display is sent according to the default hwcomposition module and the first DPU.
In order to further improve the processing efficiency of the rendering process, before synchronously rendering and rendering under an independent graphics card, referring to fig. 2, the method further includes:
s210: acquiring video data based on the target application data;
in the high-load application (taking a game application as an example), the large amount of calculation is rendering, and especially, the game application also comprises a scene of video playing, so that video data is processed independently to improve the rendering speed of the application data, so as to ensure smooth use of the high-load application, and further improve user experience.
S220: judging whether the video data is under an independently set application layer;
specifically, the video data includes multiple storage states in the target application data, one of the storage states uses the video data as a layer, for example, a game scene slice header, and for such video data, the video decoding function of the independent graphics card is not needed, but the video decoding function of the built-in SOC chip is directly used (i.e., the following step S230), which is less consumption of system performance.
S230: if so, decoding the video data by adopting a built-in display card;
s240: and if not, decoding the video data under the independent display card.
In addition to the above-mentioned storing the video data in a separate layer, part of the video data may also be generated as Texture, that is, a Texture object using a video as a map is created, so as to enable the map to be updated during video playing, at this time, the video data needs to be rendered by a rendering module of an independent display card, and before the video data is decoded under the independent display card, the method further includes:
s241: and decoding the video data by adopting a built-in display card to obtain the video data in the YUV format, and transmitting the video data in the YUV format to an independent display card. In the above steps, the built-in display card is decoded into YUV format and directly transmitted to the independent display card for rendering.
In an optional embodiment, before decoding the video data under a separate graphics card, the following steps may be further performed:
s242-1: decoding the video data by adopting a built-in display card to obtain video data in a YUV format;
s242-2: carrying out format conversion on the video data in the YUV format to obtain video data in an RGB format;
specifically, YUV refers to a pixel format in which a Luminance parameter and a chrominance parameter are separately expressed, where "Y" represents brightness (Luma) that is a gray value; "U" and "V" denote Chrominance (or Chroma) which is used to describe the color and saturation of an image, and to specify the color of a pixel, RGB signals are processed to increase the luminance and decrease the color according to the signal that a person is more sensitive to luminance. The YUV to RGB color space conversion relationship is: r = Y +1.042 (V-128); g = Y-0.34414 (U-128) -0.71414 (V-128); b = Y +1.772 (U-128), video data in RGB format to facilitate the rendering process performed by the independent graphics card.
S242-3: and transmitting the video data in the RGB format to an independent display card.
Specifically, by adopting the steps S242-1 to S242-2, the video decoding is performed in the built-in graphics card to reduce the transmission pressure for transmitting the video from the built-in graphics card to the independent graphics card, and the video is converted into the RGB format to be processed by the independent graphics card more quickly, so that the format conversion is not required in the independent graphics card, and the video data rendering efficiency is further improved.
S300: displaying the processing result back to a display module of a built-in display card, and segmenting the target application data and the processing result under the built-in display module to obtain a plurality of application layers and processing results corresponding to the application layers;
in the foregoing steps, processing results obtained by drawing and rendering under the independent graphics card in the playback mode are transmitted back to the built-in display module for synthesis and display, but the first DPU may access a linear memory, whereas in the prior art, for high-load applications, when a memory is allocated for target application data under the independent graphics card, most of the media draws, a VRAM (video memory), that is, a tile buffer (video memory), is allocated, and then the tile buffer is converted into a linear memory in the display module, so that transmission pressure in this process is large, and system performance is reduced.
It should be noted that, since the video memory (VideoRAM) of the independent video card cannot be accessed by the SOC in the system, a memory copy process is required, and the process of displaying the processing result back to the display module of the built-in video card includes: and copying the video memory of the independent video card under the video memory of the built-in video card so that the display module reads a processing result from the copied data, and copying the video memory data of the independent video card into a built-in system memory through PCIe (high-speed serial point-to-point dual-channel high-bandwidth transmission) in the copying process.
S400: allocating memory to each application layer according to a first rule to obtain a display memory or a linear memory corresponding to each application layer;
in the above step, the ripple _ ex module is called under the hwcomposer module to implement, because a high-load application may have a single layer or a plurality of layers, when the number of application layers is small, tile buffers are allocated to each application layer to ensure a better subsequent image display effect, and when the number of application layers is large, the application layers are classified as needed and memory is allocated to reduce consumption of system performance.
Specifically, the allocating a memory to each application layer according to the first rule, referring to fig. 3, includes the following steps:
s410: acquiring the layer number of target application data, and judging whether the layer number exceeds a first threshold value;
specifically, as described above, when the number of layers of the target application is small, the display memory may be allocated to each application layer, and the first threshold may be set according to an actual usage scenario.
S420: when the number of the layers does not exceed a first threshold value, distributing a display memory for each application layer;
in the above step, if the target application is assigned tile buffer (Layer 2, layerN is the target application Layer, and Layer1 is the system Layer), layer2loading =1920x1080x4 (rgba) x60 (fps) =497MB/s, …, and layerN loading =1920x1080x4 (rgba) x60 (fps) =497MB/s, and then the PCIe copy data amount = Layer2loading + … + layerN loading.
S430: and when the number of the layers exceeds a first threshold value, performing memory allocation on each application layer by adopting a second rule.
According to the above description, when the number of layers is small, the step S420 may be adopted, but when the number of layers is large, the occupied bandwidth of the PCI-e is large, and therefore, it is necessary to reduce the bandwidth of the PCI-e while ensuring the performance, so that the step S430 performs the memory allocation on each application layer by using the second rule, which includes the following steps:
s431-1: judging whether the processing results corresponding to the application layers are icon type data one by one;
in the above steps, the icon type data does not need complex calculation, and the linear buffer is allocated.
S431-2: if yes, distributing a linear memory to the application layer; s431-3: and if not, distributing the display memory to the application layer.
According to the steps S431-1 to S431-3, the calculated amount of the Icon type data is less, and the target application is allocated with the tile buffer (Layer 2, layerN is the target application Layer, and Layer1 is the system Layer), so that the tile buffer is used for the complicated Layer2 which needs a large amount of GPU calculation in the rendering process, the linear buffer is used for the simple Layer LayerN which is usually only used for displaying the Icon, the copying is not needed in the subsequent transmission process, and the bandwidth in the transmission process is not occupied.
Optionally, in addition to the allocation manners of the steps S431-1 to S431-3, the allocating the memory to each application layer by using the second rule in the step S430 may further include the following steps:
s432-1: distributing a display memory to each application layer to obtain the display memory of each application layer;
s432-2: synthesizing the video memories of the application layers under the independent video card to obtain set data, and transmitting the set data back to the built-in display module;
s432-3: and allocating a video memory or a linear memory to the set data in a built-in display module.
As a further explanation of the foregoing steps S432-1 to S431-3, when allocating memory to each application layer, all tile buffers are used, and are synthesized into a target such as a frame buffer under an independent graphics card, where the target may be a linear buffer or a tile buffer, and the tile buffers are converted into the linear buffers when sending display.
S500: converting the video memory corresponding to each layer into a linear memory under the independent video card, and transmitting the linear memory back to the display module with the built-in video card;
in the above steps, the memory data conversion is realized on the independent display card, and data interaction between the independent display card and the built-in display card is formed, so that each application Layer of the target application data in the built-in display card can be synchronously processed without waiting for the drawing completion of each application Layer, and meanwhile, through the steps S432-1 to S431-3, the bandwidth pressure of multiple layers for simultaneous transmission to PCIe can be reduced, and the consumption of system performance is further reduced by converting a tile buffer into a linear buffer under the independent display card, so as to solve the problems that when the independent display card returns the processing data to the built-in display module, the pressure in the transmission process is high, and the display module needs to be processed again, which results in the consumption of the system performance, further ensure the smooth display of high-load application, and improve the user experience.
S600: and synthesizing the linear memories corresponding to the layers under a display module with a built-in display card, and displaying the images on a display.
The tile buffer is converted into a linear buffer through the foregoing step S500 so that the first DPU can access the linear memory to be sent to a display for displaying, the display including but not limited to DSI or LCD.
In this embodiment, when a high-load application is called, the GPU in the independent graphics card is called to perform memory allocation and rendering, then the rendering result is displayed back to the display module of the built-in graphics card to be synthesized and sent to the display, the application layer segmentation is performed on the target application data under the built-in display module, a memory (tile buffer or linear buffer) is allocated to each application layer, and the tile buffer is converted into a linear buffer under the independent graphics memory, so that the DPU of the built-in graphics card is accessed and pushed to the display to perform the picture display, and the problem that when the independent graphics card returns the processed data to the built-in display module, the current layer needs to be waited to be completed, and meanwhile, a large amount of computation is generated for each rendering application, which may cause performance degradation of the calling system is solved. Meanwhile, through the application graph layer classification in the steps S431-1 to S432-3 and the simple graph layer LayerN which is only used for displaying Icon generally uses linear buffers or all uses tile buffers, the graph layer LayerN is synthesized into a target such as a frame Buffer under an independent display card, the problem that the bandwidth pressure of a plurality of buffers is large for PCIe equipment when the buffers are transmitted simultaneously in the calling processing process is solved, the transmission of the buffers between PCIe equipment is reduced, the system performance is optimized, and the smoothness and the stability of the high-load application image display are ensured.
Example two: the present embodiments provide a mobile terminal, and an intelligent terminal may be implemented in various forms. For example, the terminal described in the present invention may include a smart terminal such as a mobile phone, a smart phone, a notebook computer, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a navigation device, and the like. The mobile terminal of this embodiment at least includes but is not limited to: a memory 91, a processor 92 and a computer program stored on the memory and executable on the processor, which are communicatively connected to each other via a system bus, the processor implementing the steps of the first embodiment as described above when executing the computer program, as shown in fig. 5. It should be noted that fig. 5 only shows a computer device with components, but it should be understood that not all of the shown components are required to be implemented, and more or fewer components may be implemented instead.
In this embodiment, the memory may include a program storage area and a data storage area, wherein the program storage area may store an application program required for at least one function of the system; the storage data area can store skin data information of a user on the computer device. Further, the memory may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, the memory 91 optionally includes memory 91 located remotely from the processor, and these remote memories may be connected to the PET system via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
Processor 92 may be a Central Processing Unit (CPU), controller, microcontroller, microprocessor, or other data Processing chip in some embodiments. The processor 92 is generally used to control the overall operation of the computer device (including all the above-mentioned libGLES _ xx1 module (rendering module of built-in graphics card), ralloc module (allocation module of built-in graphics card), hwcomposer module (display module of built-in graphics card), libGLES _ mesa module (rendering module of independent graphics card), and ralloc _ ex module (allocation module of independent graphics card). In this embodiment, the processor 92 is configured to execute the program codes stored in the memory 91 or process data, for example, to implement the image display scheduling method according to the first embodiment.
It is noted that fig. 5 only shows a mobile terminal having components 91-92, but it is understood that not all of the shown components are required to be implemented, and that more or less components may be implemented instead.
In this embodiment, the program stored in the memory 91 may be further divided into one or more program modules, and the one or more program modules are stored in the memory 91 and executed by one or more processors (in this embodiment, the processor 92) to complete the present invention.
Example three:
to achieve the above objects, the present invention also provides a computer-readable storage medium including a plurality of storage media such as a flash memory, a hard disk, a multimedia card, a card type memory (e.g., SD or DX memory, etc.), a Random Access Memory (RAM), a Static Random Access Memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, a server, an App application store, etc., on which a computer program is stored, which when executed by a processor 92, implements corresponding functions. The computer-readable storage medium of this embodiment is used for storing data of each module, and when being executed by the processor 92, the image display scheduling method of the first embodiment is implemented.
It should be noted that the embodiments of the present invention have been described in terms of preferred embodiments, and not by way of limitation, and that those skilled in the art can make modifications and variations of the embodiments described above without departing from the spirit of the invention.

Claims (10)

1. A high-load application image display method is applied to an Android system terminal with an independent display card, and is characterized by comprising the following steps:
receiving a high-load application starting signal, and acquiring target application data according to the starting signal;
distributing a graphic memory based on the target application data by adopting a graphic processor of an independent display card, and synchronously drawing and rendering to obtain a processing result;
displaying the processing result back to a display module of a built-in display card, and segmenting the target application data and the processing result under the built-in display module to obtain a plurality of application layers and processing results corresponding to the application layers;
allocating memory to each application layer according to a first rule to obtain tile buffers or linear buffers corresponding to each application layer;
converting tile buffers corresponding to all the image layers into linear buffers under the independent display card, and transmitting the linear buffers back to the display module with the built-in display card;
and synthesizing and displaying the linear buffers corresponding to the image layers under a display module with a built-in display card, and displaying images on a display.
2. The image display method according to claim 1, wherein the allocating memory to each application layer according to the first rule includes:
acquiring the layer number of target application data;
when the number of the layers does not exceed a first threshold value, allocating tile buffers to each application layer;
and when the number of the layers exceeds a first threshold value, performing memory allocation on each application layer by adopting a second rule.
3. The image display method according to claim 2, wherein the performing memory allocation on each application layer by using the second rule includes:
judging whether the processing results corresponding to the application layers are icon type data one by one;
if so, allocating a linear buffer to the application layer, and if not, allocating a tile buffer to the application layer.
4. The image display method according to claim 3, wherein the performing memory allocation on each application layer by using the second rule includes:
allocating tile buffers to each application layer to obtain the tile buffers of each application layer;
synthesizing tile buffers of each application layer under an independent display card to obtain set data, and transmitting the set data back to a built-in display module;
and allocating tile buffer or linear buffer to the set data in a built-in display module.
5. The image display method according to claim 1, further comprising, before the synchronously rendering and rendering:
acquiring video data based on the target application data;
judging whether the video data is under an independently set application layer;
if so, decoding the video data by adopting a built-in display card;
and if not, decoding the video data under the independent display card.
6. The image display method according to claim 5, further comprising, before decoding the video data under a separate graphics card:
and decoding the video data by adopting a built-in display card to obtain the video data in the YUV format, and transmitting the video data in the YUV format to an independent display card.
7. The image display method according to claim 5, further comprising, before decoding the video data under a separate graphics card:
decoding the video data by adopting a built-in display card to obtain video data in a YUV format;
carrying out format conversion on the video data in the YUV format to obtain video data in an RGB format;
and transmitting the video data in the RGB format to an independent display card.
8. The image display method according to claim 1, wherein the displaying the processing result back to a display module of a built-in graphics card comprises:
and copying tile buffers of the independent display cards under the built-in display cards so that the display module reads processing results from the data obtained by copying.
9. A mobile terminal comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor when executing the computer program performs the steps of claim 1~8.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of claim 1~8.
CN202110412888.XA 2021-04-16 2021-04-16 High-load application image display method, terminal and readable storage medium Active CN113064728B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110412888.XA CN113064728B (en) 2021-04-16 2021-04-16 High-load application image display method, terminal and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110412888.XA CN113064728B (en) 2021-04-16 2021-04-16 High-load application image display method, terminal and readable storage medium

Publications (2)

Publication Number Publication Date
CN113064728A CN113064728A (en) 2021-07-02
CN113064728B true CN113064728B (en) 2022-11-04

Family

ID=76567372

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110412888.XA Active CN113064728B (en) 2021-04-16 2021-04-16 High-load application image display method, terminal and readable storage medium

Country Status (1)

Country Link
CN (1) CN113064728B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113873206A (en) * 2021-10-30 2021-12-31 珠海研果科技有限公司 Multi-channel video recording method and system
CN115348469B (en) * 2022-07-05 2024-03-15 西安诺瓦星云科技股份有限公司 Picture display method, device, video processing equipment and storage medium

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102507114B1 (en) * 2016-06-08 2023-03-07 삼성전자주식회사 method and apparatus for providing composition screen by composing the execution window of a plurality of the operating system
CN107729095B (en) * 2017-09-13 2020-12-04 深信服科技股份有限公司 Image processing method, virtualization platform and computer-readable storage medium
CN110286985B (en) * 2019-06-27 2022-10-28 深圳市易检车服科技有限公司 User interface display method, system and related components
CN110503708A (en) * 2019-07-03 2019-11-26 华为技术有限公司 A kind of image processing method and electronic equipment based on vertical synchronizing signal
CN110618746B (en) * 2019-08-12 2021-05-25 瑞芯微电子股份有限公司 Soc power consumption and performance optimization device and method based on display processing logic
CN111158625A (en) * 2019-12-31 2020-05-15 中国电子科技集团公司第十五研究所 Double-independent display card dynamic switching device and method based on Feiteng platform
CN111338988B (en) * 2020-02-20 2022-06-14 西安芯瞳半导体技术有限公司 Memory access method and device, computer equipment and storage medium
CN112269603B (en) * 2020-10-16 2021-05-28 北京技德系统技术有限公司 Graphic display method and device for compatibly running Android application on Linux
CN112269443A (en) * 2020-11-12 2021-01-26 天津市英贝特航天科技有限公司 Integrated independent display and high-speed interface computing mainboard based on loongson 2K processor

Also Published As

Publication number Publication date
CN113064728A (en) 2021-07-02

Similar Documents

Publication Publication Date Title
CN110377257B (en) Layer composition method and device, electronic equipment and storage medium
CN113064727B (en) Image display scheduling method, terminal and storage medium applied to Android system
US9922393B2 (en) Exploiting frame to frame coherency in a sort-middle architecture
US8803896B2 (en) Providing a coherent user interface across multiple output devices
CN110427094B (en) Display method, display device, electronic equipment and computer readable medium
CN110377264B (en) Layer synthesis method, device, electronic equipment and storage medium
CN110377263B (en) Image synthesis method, image synthesis device, electronic equipment and storage medium
CN113064728B (en) High-load application image display method, terminal and readable storage medium
EP2756481B1 (en) System and method for layering using tile-based renderers
CN113457160B (en) Data processing method, device, electronic equipment and computer readable storage medium
CN110363831B (en) Layer composition method and device, electronic equipment and storage medium
CN111737019B (en) Method and device for scheduling video memory resources and computer storage medium
CN109992347B (en) Interface display method, device, terminal and storage medium
CN112057852B (en) Game picture rendering method and system based on multiple display cards
CN112057851A (en) Multi-display-card-based real-time rendering method for single-frame picture
WO2021008427A1 (en) Image synthesis method and apparatus, electronic device, and storage medium
US7612781B2 (en) Memory control method of graphic processor unit
CN116821040B (en) Display acceleration method, device and medium based on GPU direct memory access
CN114998087B (en) Rendering method and device
US10446071B2 (en) Device and method of using slice update map
US8203567B2 (en) Graphics processing method and apparatus implementing window system
CN115934383A (en) Multi-display-card rendering method under Wayland synthesizer
WO2022242487A1 (en) Display method and related device
US7382376B2 (en) System and method for effectively utilizing a memory device in a compressed domain
CN110377258B (en) Image rendering method and device, electronic equipment and storage medium

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230310

Address after: 518055 1501, Building 1, Chongwen Park, Nanshan Zhiyuan, No. 3370, Liuxian Avenue, Fuguang Community, Taoyuan Street, Nanshan District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Grey Shark Technology Co.,Ltd.

Address before: 201419 room 30469, building 14, No. 251, Liantang Road, Xinghuo Development Zone, Fengxian District, Shanghai

Patentee before: Shanghai zhongchain Technology Co.,Ltd.