Data processing method and device, computer equipment, medium and product
By configuring the data acquisition component in the game engine to automatically acquire associated data from the graphics processor, the game lag caused by GPU bottlenecks is solved, data acquisition efficiency and game rendering efficiency are improved, and optimization process is simplified.
Patent Information
- Application Number
- CN202410093771.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-22
- Publication Date
- 2025-07-22
AI Technical Summary
In the prior art, the bottleneck problem of graphics processor (GPU) causes game lag, and the optimization direction is low efficiency and low accuracy is not high.
By configuring the data acquisition component in the game engine, the associated data of the graphics processor during image rendering is automatically collected, including vertex shaders, cell shaders, pixel shaders, etc., and is directly displayed on the interface for analysis.
It realizes data acquisition automation during image rendering, improves data acquisition efficiency, helps developers quickly determine game running effects and adjustment instructions for image rendering resources, improves game rendering efficiency, and avoids empirical speculation and lengthy processes of manual analysis.
Smart Images

Figure CN120346518A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technologies, and in particular, to a data processing method, a data processing device, a computer device, a computer-readable storage medium, and a computer program product. Background Art
[0002] During the operation of a game, calling a Graphics Processing Unit (GPU) to accelerate the rendering and filling of graphics can improve the graphics loading speed, reduce the burden on the GPU, and make the system run more smoothly. With the increasing variety of games, GPU bottlenecks often occur during image rendering. A GPU bottleneck refers to a situation where the processing power of the GPU cannot meet the requirements of the game during its operation, resulting in phenomena such as stuttering and frame drops in the game.
[0003] Currently, to address the GPU bottleneck problem, an artificial analysis method is generally used to determine the optimization direction. The specific process includes: first, capturing frames of the bottleneck scenario. The captured frame files record the overall GPU rendering process and various rendering state settings. Then, obtaining performance data related to the GPU from the captured frame files, and then analyzing the possible problem points that may cause the GPU bottleneck through sorting out the overall process. Obtaining data and analyzing the problem points causing the GPU bottleneck through manual frame capture analysis is time-consuming. At the same time, the problem points determined based on this method may not be accurate, and generally, the efficiency is relatively low.
[0004] Therefore, how to achieve the automatic acquisition of associated data during the image rendering process and improve the data acquisition efficiency has become a technical problem to be urgently solved. Summary of the Invention
[0005] Embodiments of this application provide a data processing method, device, computer device, medium, and product. Through a data acquisition component, the automatic acquisition of associated data during the image rendering process can be achieved, improving the data acquisition efficiency. The obtained associated data can also improve the efficiency of determining the operation effect data of a game application and / or determining adjustment indication information for image rendering resources involved in the game application.
[0006] Embodiments of this application disclose a data processing method on the one hand. The method includes:
[0007] Call a game engine to run a game application, where the game interface involved in the operation of the game application is obtained by the game engine using a graphics processor for image rendering;
[0008] During the process of image rendering by the graphics processor, a data acquisition component is called to acquire associated data related to the image rendering by the graphics processor; wherein, the data acquisition component is configured in the game engine;
[0009] The associated data is displayed, and the associated data is used to determine one or more of the following: the operation effect data of the game application, and the adjustment instruction information for the image rendering resources involved in the game application.
[0010] One aspect of the embodiments of the present application discloses a data processing device, which includes:
[0011] A processing unit, configured to call a game engine to run a game application, and the game interface involved in the running of the game application is obtained by the game engine through image rendering using a graphics processor;
[0012] The processing unit is further configured to, during the process of image rendering by the graphics processor, call a data acquisition component to acquire associated data related to the image rendering by the graphics processor; wherein, the data acquisition component is configured in the game engine;
[0013] A display unit, configured to display the associated data, and the associated data is used to determine one or more of the following: the operation effect data of the game application, and the adjustment instruction information for the image rendering resources involved in the game application.
[0014] One aspect of the embodiments of the present application discloses a computer device, which includes a processor adapted to implement one or more computer programs; and a computer-readable storage medium storing one or more computer programs, and the one or more computer programs are adapted to be loaded and executed by the processor to perform the above-mentioned data processing method.
[0015] One aspect of the embodiments of the present application discloses a computer-readable storage medium storing one or more computer programs, and the one or more computer programs are adapted to be loaded and executed by a processor to perform the above-mentioned data processing method.
[0016] One aspect of the embodiments of the present application discloses a computer program product, which includes a computer program stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device performs the above-mentioned data processing method.
[0017] In the embodiments of the present application, the game engine is called at the test end to run the game application, and the game engine is called to use the graphics processing unit to perform image rendering on the running game interface; during the process of the graphics processing unit performing image rendering, the data acquisition component configured in the game engine is called to acquire the associated data associated with the image rendering performed by the graphics processing unit; after the acquisition is completed, the associated data is displayed. The associated data is used to determine one or more of the following: the running effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application. Through the data acquisition component, the relevant data of image rendering can be automatically acquired, improving the data acquisition efficiency. Through the acquired associated data, the game running effect or the adjustment instruction information for the image rendering resources involved in the game application can also be quickly determined, facilitating the analysis by developers, avoiding various empirical speculations and lengthy R & D optimization processes in the manual analysis solution, and thus optimizing with high efficiency and improving the game rendering efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0019] Figure 1 It is a schematic diagram of the network architecture of a data processing system disclosed in the embodiments of the present application;
[0020] Figure 2 It is a schematic diagram of the process flow of a data processing method disclosed in the embodiments of the present application;
[0021] Figure 3 It is a schematic diagram of the creation process of an exemplary chart data disclosed in the embodiments of the present application;
[0022] Figure 4 It is a schematic diagram of the update of a chart data disclosed in the embodiments of the present application;
[0023] Figure 5 It is a schematic diagram of the display of the associated data of a test end disclosed in the embodiments of the present application;
[0024] Figure 6 It is a schematic diagram of the process flow of another data processing method disclosed in the embodiments of the present application;
[0025] Figure 7a It is a schematic diagram of the clock running number related to the GPU disclosed in the embodiments of the present application;
[0026] Figure 7bIt is a schematic diagram of load data disclosed in an embodiment of the present application;
[0027] Figure 8a It is a schematic diagram of pixel information of a GPU disclosed in an embodiment of the present application;
[0028] Figure 8b It is a schematic diagram of the number of pixels and triangle list data disclosed in an embodiment of the present application;
[0029] Figure 9 It is a schematic diagram of bandwidth data of a GPU disclosed in an embodiment of the present application;
[0030] Figure 10a It is a schematic diagram of shader instructions disclosed in an embodiment of the present application;
[0031] Figure 10b It is a schematic diagram of the number of GPU clocks consumed by a shader disclosed in an embodiment of the present application;
[0032] Figure 11 It is a schematic diagram of clipping data disclosed in an embodiment of the present application;
[0033] Figure 12 It is a schematic flowchart of another data processing method provided in an embodiment of the present application;
[0034] Figure 13 It is a schematic structural diagram of a data processing device disclosed in an embodiment of the present application;
[0035] Figure 14 It is a schematic structural diagram of a computer device disclosed in an embodiment of the present application. Detailed implementation manners
[0036] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0037] To more clearly understand the technical solutions provided in the embodiments of the present application, some key terms related to the embodiments of the present application will be introduced here:
[0038] Rendering: It refers to the process of generating images from models using software, which is used to describe the effects in computational video editing software and the output of the final video. The application fields of rendering include computer and video games, movie special effects, and visualization design. Each application is a comprehensive consideration of features and technologies. In this embodiment, rendering is mainly used for image rendering during game operation, and image rendering is mainly executed by a graphics processing unit (GPU).
[0039] Therefore, in the embodiments of this application, it is mainly to collect data that affects the GPU during image rendering. These data include but are not limited to the load data of vertex shaders, the load data of fragment shaders, the load data of pixel shaders, the number of processed pixels, the number of processed triangle lists, the number of redraws, the number of shading instructions, the number of clocks consumed for processing each pixel, the number of clocks consumed for executing each shading instruction, the read bandwidth of the graphics processing unit, the write bandwidth of the graphics processing unit, and so on. Optimize through the collected data to improve the effect of image rendering during game operation. The method generally includes the following steps: ① Call the game engine to run the game application. The game interface involved in the operation of the game application is obtained by the game engine using the graphics processing unit for image rendering. ② During the process of the graphics processing unit performing image rendering, call the data acquisition component to collect the associated data related to the graphics processing unit performing image rendering, where the data acquisition component is configured in the game engine. ③ Display the associated data, and the associated data is used to determine one or more of the following: the operation effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application. In this solution, the data acquisition component can automatically obtain the associated data related to the GPU. By visually displaying the associated data on the interface, it is more convenient for developers to analyze, avoiding various empirical speculations and long R & D optimization processes in the manual analysis solution, greatly improving the overall R & D efficiency and enhancing the game rendering efficiency.
[0040] In a possible implementation manner, the data processing method provided in the embodiments of this application can be implemented based on artificial intelligence (AI) technology. Specifically, the game application involved in the data processing method provided in the embodiments of this application is developed through an artificial intelligence model; at the same time, an image processing model related to image rendering can be introduced during the image rendering process to accelerate image rendering.
[0041] Among them, artificial intelligence uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, and is a theory, method, technology, and application system that can perceive the environment, acquire knowledge, and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a way similar to human intelligence. Artificial intelligence also studies the design principles and implementation methods of various intelligent machines, enabling the machines to have the functions of perception, reasoning, and decision-making. Artificial intelligence technology is an interdisciplinary subject that involves a wide range of fields, including both hardware-level technologies and software-level technologies. The basic technologies of artificial intelligence generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, pre-trained model technologies, operation / interaction systems, mechatronics, etc. Among them, pre-trained models, also known as large models or foundation models, can be widely applied to downstream tasks in various directions of artificial intelligence after fine-tuning. The software technologies of artificial intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.
[0042] In a possible implementation manner, the data processing method provided in the embodiments of the present application can be implemented based on cloud technology. In the embodiments of the present application, it may specifically involve one or more of cloud storage, cloud databases, and big data in cloud technology. For example, the data collected when executing the data processing method (such as the associated data related to image rendering by a graphics processor) is stored in a cloud database.
[0043] Please refer to Figure 1 , which is a schematic diagram of the network architecture of a data processing system disclosed in the embodiments of the present application. The data processing system may at least include a development end 101 and a test end 102. In the embodiments of the present application, the development end 101 is mainly used to receive the associated data related to image rendering by the graphics processor returned by the test end and display the associated data on the display interface of the development end 101. The test end 102 is mainly used to call a game engine to run a game application and, during the process of image rendering by the graphics processor, call a data acquisition component to acquire the associated data related to image rendering by the graphics processor; it is also used to display the associated data on the display interface of the test end 102. The associated data displayed by the test end 102 is such as Figure 1 103 in
[0044] In one embodiment, the development end 101 and the test end 102 include, but are not limited to: smartphones, tablets, smart wearable devices, smart voice interaction devices, smart home appliances, personal computers, vehicle-mounted terminals, smart cameras, virtual reality devices (such as AR (Augmented Reality) devices), etc. The present application does not limit this. The development end 101 and the test end 102 can establish a direct communication connection through wired communication, or can establish an indirect communication connection through wireless communication. The embodiments of the present application do not limit this. For example, in the scenario of mobile game testing, the development end 101 refers to a development device with development functions such as a computer, and the test end 102 refers to user devices such as mobile phones, tablets or wearable devices.
[0045] In the embodiments of the present application, in combination with this data processing system, the data processing method may include: the test end 102 calls the game engine to run the game application, and at the same time, calls the game engine to use the graphics processor to perform image rendering on the running game interface; during the process of the graphics processor performing image rendering, the test end 102 calls the data acquisition component configured in the game engine to acquire the associated data associated with the graphics processor performing image rendering; after the acquisition is completed, the associated data is displayed through the display interface of the test end 102. Optionally, the test end 102 may also send the acquired associated data to the development end 101, and the development end 101 displays the associated data on the display interface. Among them, the associated data is used to determine one or more of the following: the operation effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application. In this solution, the associated data related to the GPU can be directly obtained through the data acquisition component and intuitively displayed on the interface. The acquired data is fast and accurate. At the same time, it is also convenient for developers / testers to analyze, avoiding various empirical speculations and long R & D optimization processes in the manual analysis solution, greatly improving the overall R & D efficiency and enhancing the game rendering efficiency.
[0046] It should be specifically noted that when the relevant data collection and processing in this application book are applied in practice, the informed consent or separate consent of the personal information subject should be strictly obtained in accordance with the requirements of relevant laws and regulations, and subsequent data use and processing behaviors should be carried out within the scope of authorization of laws and regulations and the personal information subject.
[0047] Next, the data processing method proposed in the embodiments of the present application will be introduced in detail.
[0048] Please refer to Figure 2 , which is a schematic flowchart of a test method disclosed in the embodiments of the present application. This data processing method can be executed by a computer device, and the computer device can be Figure 1The test end 102 shown, the data processing method may specifically include but is not limited to the following steps:
[0049] S201: calling a game engine to run a game application, wherein a game interface involved in the running of the game application is obtained by image rendering by the game engine using a graphics processor.
[0050] In order to test the performance of the developed game, the game to be tested can be tested through the test terminal. In the specific implementation process, the tester first downloads the game application of the game to be tested to the test terminal, and then calls the game engine to run the game application. While the game application is running, the game interface involved in the game application can also be obtained by the game engine using the graphics processor.
[0051] The game interface includes dynamic interface and static interface. The images on the game interface are all determined by the graphics processing unit (GPU). GPU is also called display core, visual processor, display chip. It is a microprocessor that specializes in image and graphics related operations on personal computers, workstations, game consoles and some mobile devices (such as tablets, smart phones, etc.). GPU is a processor specially used for graphics calculation, with efficient parallel computing and rendering capabilities. In game rendering, the role of GPU is mainly reflected in the following aspects:
[0052] 1. Geometry processing: GPU can efficiently process geometric data in games, including vertex coordinates, normals, texture coordinates, etc. By optimizing algorithms and utilizing parallel computing capabilities, GPU can quickly complete the processing and conversion of geometric data and provide basic data for subsequent rendering processes.
[0053] 2. Light and shadow calculation: Light and shadow effects are one of the indispensable elements in the game screen. GPU can achieve realistic light and shadow effects, including real-time shadows, reflections, refractions, etc. through efficient light and shadow algorithms and parallel computing capabilities. These effects can not only enhance the realism of the picture, but also bring players a more immersive gaming experience.
[0054] 3. Pixel processing: Pixel processing refers to the process of coloring and blending each pixel in the game screen. GPU can achieve high-quality pixel processing effects, including texture mapping, anti-aliasing, depth testing, etc. through efficient shading algorithms and parallel computing capabilities. These effects can make the picture more delicate and realistic, and can also improve the visual experience of the game.
[0055] Therefore, it is very important to determine the data involved in the image rendering process of the GPU. Real-time discovery of data outliers and optimization of them can improve the effect and efficiency of image rendering. For specific steps on how to obtain related data associated with the graphics processor for image rendering, see step S202.
[0056] S202: During the process of image rendering by the graphics processing unit, call the data acquisition component to acquire the associated data related to the image rendering by the graphics processing unit, where the data acquisition component is configured in the game engine.
[0057] In order to more quickly determine the associated data related to image rendering during the image rendering process, an embodiment of the present application proposes a hardware counter, that is, a data acquisition component. By obtaining specific hardware counter values, various types of associated data on the GPU are directly analyzed, avoiding various empirical speculations and long R & D optimization processes in the manual analysis solution, greatly improving the overall R & D efficiency, and also reducing the performance analysis threshold.
[0058] Among them, the associated data is the associated data related to the image rendering by the graphics processing unit, and specifically may include one or more of the following: the load data of the shader, the number of processed pixels, the number of processed triangle lists, the number of redraws, the number of shading instructions, the clock data, and the bandwidth data of the graphics processing unit. Among them, the load data of the shader includes one or more of the load data of the vertex shader, the load data of the fragment shader, and the load data of the pixel shader. The clock data includes one or more of the number of clocks consumed for processing each pixel, the number of clocks consumed for executing each shading instruction, and the clock data of the shader. The bandwidth data of the graphics processing unit includes the read bandwidth of the graphics processing, the write bandwidth of the graphics processing unit, and the total bandwidth of the graphics processing unit.
[0059] In a feasible embodiment, the shader may include one or more of a vertex shader, a fragment shader, and a pixel shader. A vertex shader (Vertex Shader, VS) is an image processing unit that adds 3D special effects. The vertex shader engine has programmable characteristics, allowing developers to use new instructions to adjust special effects. Each vertex is defined by a data structure, basically having x, y, z coordinates, and each vertex may also have color, initial path, material, light characteristics, etc. A fragment shader (Fragment Shader, FS) / pixel shader (Pixel Shader, PS): After the model vertices are transformed, colors need to be filled. The FS / PS filling algorithm is for each pixel on the screen.
[0060] The above-mentioned associated data can intuitively reflect the performance of the graphics processing unit, thereby affecting the effect of image rendering. For example, the vertex shader can improve the speed of rendering a scene. If the load of the vertex shader is too high, it may be that the triangle list included in the scene is relatively fragmented; the fragment shader can process each fragment generated by the rasterization stage and finally calculate the final color of each pixel. If the load of the fragment shader is too high, it may be affected by the screen resolution and frame rate; the pixel shader is also responsible for calculating and processing the color of each pixel. An increase in the load of the pixel shader will bring huge pressure to the GPU. For another example, the number of pixels processed, the number of triangle lists processed, and the shading instruction data will all affect the bandwidth of the GPU. The number of redraws will affect the GPU performance, and the most intuitive manifestation is that the screen will freeze. The number of clocks consumed for processing each pixel is usually related to the complexity of the vertex shader and the fragment shader.
[0061] Among them, the triangle list described above is a list of isolated triangles. They may be close to each other or not. The triangle list must have at least 3 vertices, and the total number of vertices must be divisible by 3. The triangle list is used to create an object composed of non-continuous parts. For example, one way to create a force field wall in a 3D game is to specify a large number of small unconnected triangles. Then, apply materials and textures that seem to emit light to the triangle list. Each triangle in the wall seems to emit light. The scene behind the wall is partially visible through the gaps between the triangles because players may need to obtain this effect when viewing the force field.
[0062] In a possible implementation, the data acquisition component is configured in the game engine. The configuration process includes: obtaining the data acquisition source file and generating the data acquisition component according to the data acquisition source file; configuring the data acquisition component in the game engine, and the data acquisition component has a counting attribute. Then, in the startup module of the game engine, the data acquisition component is loaded in the form of an engine module, and the loaded data acquisition component is called to acquire the associated data related to the image rendering of the graphics processing unit. The process of configuring the data acquisition component in the game engine is, for example: configuring the source file of the counter in the game engine. Among them, the counter source file can be HWCPipe. The counter source file HWCPipe is placed in the engine code project in the form of a new module. In the startup module LoadPreInitModules of the game engine, HWCPipe is directly loaded in the form of an engine module to facilitate subsequent data acquisition.
[0063] After determining the data acquisition component, it is also necessary to determine the data to be acquired, that is, the data acquisition configuration information, which is stored by developers in the statistics module of the game engine in a declarative form. Further, the data acquisition configuration information can also be determined according to the game type of the game application. For different game types, developers can customize the data to be acquired. Specifically, the data acquisition configuration information includes one or more data categories, and the data of various data categories is associated with image rendering. The process of configuring the data acquisition configuration information in the game engine is, for example: first, a new data classification component (such as STATGROUP_HWCPipe) is added in the game engine, and this component is used to classify and save all the hardware counter data attributes; subsequently, various hardware acquisition data can be added. For example, the GPU clock number gpu_cyles is added to the group of hardware statistical counters, and the statistical category is STAT_GPUCycles; another example is that the number of pixels pixels is added to the group of hardware statistical counters, and the statistical category is STAT_Pixels. STAT_Pixels and STAT_GPUCycles represent different data categories.
[0064] Based on the data acquisition configuration information, data settings can also be performed on the data categories in the data acquisition configuration information. That is to say, the data classification component can be called to save the data corresponding to various data categories collected into the corresponding data categories. The specific processing process is, for example: the collected sample Sample is specifically set for the group data according to the data index. For example, when the gpu_cyles (GPU clock number) is received, the corresponding value is assigned and saved in the statistical category STAT_GPUCycles.
[0065] Further, in combination with the data acquisition configuration information, the loaded data acquisition component is called to acquire the associated data related to the image rendering of the graphics processor, which may also include:
[0066] The loaded data acquisition component is called to acquire the data corresponding to various data categories in one or more data categories; based on the data corresponding to various data categories collected, the associated data related to the image rendering of the graphics processor is determined.
[0067] S203: Display the associated data, which is used to determine one or more of the following: the operation effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application.
[0068] In order to display the collected data, the test needs to obtain the collected data. Therefore, it is necessary to first obtain the component status of the data acquisition component and the data acquisition indication information. If the component status of the data acquisition component is the enabled state and the data acquisition indication information indicates data acquisition, then obtain the associated data collected by the data acquisition component that is associated with image rendering by the graphics processor. The corresponding logical process can be, for example: first obtain the component status of the data acquisition component (such as hwcpipe::GAndroidEnableHWCPipe) and the data acquisition indication information (such as GIsRequestingExit). If GIsRequestingExit is not False (False indicates not to perform data acquisition), and the component status of hwcpipe::GAndroidEnableHWCPipe is True (True is the enabled state), then the game engine can obtain various data samples Sample collected by the data acquisition component through the data acquisition function "hwcpipe::Stats::GetInstance()->Tick(FApp::GetDeltaTime())" in a loop. In one possible implementation, the process of displaying the associated data includes: calling the blueprint interface and the data acquisition function to store the associated data in the blueprint function library file; calling the chart drawing component to draw a chart for the associated data stored in the blueprint function library file to obtain the chart data corresponding to the associated data. The chart data includes line charts, bar charts, pie charts, and so on. Display the chart data corresponding to the associated data on the game interface of the game application. The chart data displayed on the game interface can be all the associated data obtained, or a part of the associated data. Among them, the game interface can be understood as the game home page, or the game end interface after the game starts. The specific processing process can be, for example: first create a blueprint file (such as BlueprintFunctionLibrary), then obtain data through the data acquisition function GetStatOfHWCPipe, and then store the obtained data in the blueprint file, and expose the data to the test end through this blueprint file for display. Among them, the above-mentioned blueprint interface (Blueprint Interface) is a collection of one or more functions - only the name, without implementation, can be added to other blueprints (blueprints are some visual scripting languages). Any blueprint that adds this interface is guaranteed to have these functions. The functions of the interface can provide functions in each blueprint that adds it. In essence, this is similar to the interface concept in general programming, which allows multiple different types of objects to be shared and accessed through a common interface. Simply put, the blueprint interface allows different blueprints to share and send data to each other.
[0069] Further, the process of drawing a chart for the associated data stored in the blueprint function library file through a chart drawing component is as follows Figure 3 shown, including bar charts, Cartesian line charts, time series charts, etc. When one of them is selected, such as a time series chart, the corresponding horizontal and vertical coordinates can be displayed in the right difference window, including multiple time points and multiple data. Therefore, in order to display the time series chart as Figure 3 shown, data acquisition and writing are required. As Figure 4 shown, it is a schematic diagram of the update of chart data disclosed in an embodiment of the present application. Specifically, in the self-logic of the chart data, the latest sample value is continuously obtained through the function GetStatOfHWCPipe, so as to determine the chart data, that is, the data value is continuously obtained and written into Figure 3 the corresponding selected chart, so as to obtain the chart data. From Figure 4 it can be seen that the determination logic of the chart data is: event trigger, obtain data according to the data required by the chart data (such as a time series chart), and fill the obtained data into the corresponding chart.
[0070] The chart data displayed on the game interface can be all the associated data obtained, or a part of the associated data. As Figure 5 shown, it is a schematic diagram of the display of the associated data of a test terminal. Figure 5 The vertex shader load data, fragment shader clock count, and GPU load data are shown, not completely. Testers can operate on the screen to view other associated data.
[0071] In a possible implementation manner, the test terminal can also determine the abnormal data category and normal data category according to the data values of various data categories in the associated data and the data abnormality determination conditions corresponding to various data categories; the data abnormality determination conditions include the following various, for example, if the bandwidth data of the graphics processor is greater than the set value, it is abnormal, if the load data of the shader is greater than the set value, it is abnormal, and so on. Then display the data of the abnormal data category in the associated data according to the first display method, and display the data of the normal data category in the associated data according to the second display method, and the first method and the second method are different. Among them, the first display method can be a more prominent display method, such as highlighting or bright colors, etc.
[0072] In an alternative embodiment, the abnormal data in each data category can also be determined according to the obtained associated data. For example, in a game, the read bandwidth of the GPU at a certain time point is abnormally high. Then, during the display process, the abnormal data can also be displayed in the first display method, and the normal data in the same data category can be displayed in the second display method.
[0073] In a possible implementation manner, the operation effect data of the game application can be determined according to the associated data. The operation effect data can be directly seen according to the displayed associated data. Or, the test end can determine the operation effect data according to the associated data and display the operation effect data on the display interface. The operation effect data can be one of good, medium, and poor. The operation effect data can also be in the form of suggestions. For example, the game application can be launched, or the game application needs to be optimized, etc. The test end can also determine the adjustment indication information for the image rendering resources involved in the game application according to the abnormal data and display the adjustment indication information on the display interface. For example, the adjustment indication information can be "It is recommended to reduce the image resolution" or "It is recommended to improve the network quality", etc.
[0074] In addition, the tester can also determine the adjustment indication information according to the displayed associated data. Specifically, the tester can make corresponding adjustments to the image rendering resources according to the specific data. For example, if the GPU bandwidth is too high, the texture mapping and various buffers (buffers) can be reduced in size; if the number of processing clocks is too large, the load of the vertex shader (vs) and the pixel shader (ps) can be tried to be reduced; if the number of pixels (Pixels) is too large, the display resolution and the post-processing effect can be reduced; if the number of tiles is too large, the polygon count of the art model can be reduced; if the number of overdraws is too large, the use of various special effects and the size of particle patches can be reduced; if the early Z and late Z clipping data is not ideal, the program optimization algorithm can be used to reduce the pixel processing that still needs to be clipped after processing.
[0075] In the embodiment of the present application, the data processing method provided by the present application is described with the test end as the execution subject. It mainly describes how the test end obtains the associated data related to the image rendering of the graphics processor according to the data acquisition component. By deploying the data acquisition component (i.e., the counter) in the game engine, the data acquisition component can be directly started to automatically obtain the associated data after the game runs. Obtaining data in this way is more efficient; the collected data can also be directly displayed on the interface to highlight the accuracy of the data. Further, according to the collected associated data, the developer can more efficiently adjust the image resource information, realize the optimization of the GPU performance, and thus improve the game rendering efficiency.
[0076] Please refer to Figure 6 , which is a schematic flowchart of another data processing method disclosed in the embodiment of the present application. This flowchart describes the data processing method in combination with the development end and the test end. In this schematic diagram, it mainly shows how the associated data is displayed at the development end. Specifically, the data processing method includes but is not limited to the following steps:
[0077] S601: The test end calls the game engine to run the game application, and the game interface involved in the running of the game application is obtained by the game engine using the graphics processing unit for image rendering.
[0078] S602: During the process of the graphics processing unit performing image rendering, the test end calls the data acquisition component to acquire the associated data associated with the graphics processing unit performing image rendering, where the data acquisition component is configured in the game engine.
[0079] S603: The associated data is displayed at the test end, and the associated data is used to determine one or more of the following: the operation effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application.
[0080] For the above steps S601 - S603, reference can be made to steps S201 - S203, and no repeated description will be given in this embodiment.
[0081] S604: The test end sends the associated data to the development end.
[0082] In a possible implementation manner, the test end may send the associated data to a server or a cloud server, or send it to a database, and then the development end obtains the corresponding associated data from the server, cloud server or database.
[0083] S605: The associated data is displayed on the display interface of the development end.
[0084] The associated data displayed at the development end may include one or more of the load data of the shader, the number of processed pixels, the number of processed triangle lists, the number of redraws, the number of shading instructions, the clock data, the bandwidth data of the graphics processing unit, the consumption ratio of the vertex shader on the graphics processing unit, the consumption ratio of the fragment shader on the graphics processing unit, and the consumption ratio of the pixel shader on the graphics processing unit.
[0085] The following will illustrate how the associated data is displayed at the development end. As shown in 7a, it is a GPU - related clock running count, including the clock count of the vertex shader, the clock count of the fragment shader, and the clock count of the triangle list. As Figure 7a shown in 710 represents the respective clock counts corresponding to the 429th second. Specifically, the GPU clock count is 83512408, the clock count of the vertex shader is 20939002, the clock count of the fragment shader is 62584476, and the clock count of the triangle list is 18109840. As shown in 7b, it is a schematic diagram of the load data, showing the VS load data and the FS load data (where the FS load data and the PS load data are similar), which is calculated based on the running clock counts. As Figure 7bThe 720 in it indicates that at the 479th second, the proportion of GPU consumed by the fragment shader is 64% (i.e., FS load data), and the proportion of GPU consumed by the vertex shader is 36% (i.e., VS load data).
[0086] For another example, as Figure 8a shown, it is a schematic diagram of pixel information of a GPU, including the number of times a pixel is redrawn and the number of clocks consumed by each pixel. Figure 8a The 810 in it indicates the 881st second, the number of times a pixel is redrawn is 7.63, and the number of clocks consumed by each pixel is 0.72. As Figure 8b shown, it is a schematic diagram of the number of pixels and triangle list data. As Figure 8b The 820 in it indicates that at the 537th second, the number of pixels processed is 147423232, and the amount of triangle data processed is 129654.
[0087] For another example, as Figure 9 shown, it is a schematic diagram of the bandwidth data of a GPU disclosed in an embodiment of the present application, including the read bandwidth of the GPU, the write bandwidth of the GPU, and the total bandwidth of the GPU (equal to the sum of the read bandwidth and the write bandwidth). As Figure 9 shown by the 910 in it, at the 513th second, the total bandwidth of the GPU is 540.12MB, the read bandwidth of the GPU is 249.13MB, and the write bandwidth of the GPU is 290.99MB.
[0088] For another example, as Figure 10a shown, it is a schematic diagram of shader instructions disclosed in an embodiment of the present application, which includes the number of shader instructions and the number of branch instructions in the shader. As Figure 10a shown by the 1010 in it, at the 51st second, the number of shader instructions is 3825293312, and the number of branch instructions in the shader is 218397. As Figure 10b shown, it is a schematic diagram of the number of clocks consumed by a shader for the GPU, including the clocks consumed by the shader core unit, the clocks consumed by the shader texture, the clocks consumed by the shader arithmetic instructions, and the clocks consumed by the shader access instructions. As Figure 10b shown by the 1020 in it, at the 587th second, the number of clocks consumed by the shader core unit is 1719117056, the number of clocks consumed by the shader texture is 905750720, the number of clocks consumed by the shader arithmetic instructions is 767120832, and the number of clocks consumed by the shader access instructions is 41046240.
[0089] For another example, as Figure 11As shown, it is a schematic diagram of clipping data provided by an embodiment of the present application, which includes EarlyZTests, which refers to the number of pixels before FS processing, EarlyZKilled, which refers to the number of pixels that are clipped without FS processing, LateZTests, which refers to the number of pixels after FS processing, and LateZKilled, which refers to the number of pixels that are clipped after FS processing. Figure 11 As shown in 1110, at the 453rd second, the number of pixels before FS processing is 1056816, the number of pixels that are clipped without FS processing is 287393, the number of pixels after FS processing is 248568, and the number of pixels that are clipped after FS processing is 186759. It can be seen that the number of clipped pixels is not significantly reduced after FS processing, so it can be considered not to perform FS processing.
[0090] In a possible implementation, the development end may also determine the running effect data of the game application and the adjustment instruction information for the graphics processor according to the associated data. Therefore, in addition to displaying a part or all of the associated data, the display interface of the development end may also display the running effect data and the adjustment instruction information at the same time, or may display one of the running effect data and the adjustment instruction information, which is not limited in this application.
[0091] In addition, according to the associated data displayed on the development end, the developer can also intuitively determine the operation effect and determine the adjustment instruction information according to the associated data.
[0092] According to the above description, the data processing method provided in the embodiment of the present application can be summarized as follows: Figure 12 The flowchart shown is as follows: Figure 12 As shown, it is a flow chart of another data processing method provided by an embodiment of the present application, which mainly includes the following processes: first, the configuration and loading of the data acquisition component must be performed; then the data acquisition configuration information must be configured, mainly to add the expected data to the game engine summary; the bottom layer of the game engine cyclically calls the data acquisition component to acquire data; the collected data is displayed in real time; at the same time, the collected data will also be uploaded to the background for web page display.
[0093] In the embodiments of the present application, the development end is mainly used as the execution subject for explanation, and it is mainly explained how to display the related data on the display interface after the development end receives the related data. By displaying the schematic diagram related to the related data, the developer can clearly understand the related performance of the graphics processor and the bottleneck encountered when the game application is rendering the image, and can make timely adjustments, thereby improving the efficiency of game development and testing.
[0094] Based on the above method embodiment, the present application embodiment also provides a structural diagram of a data processing device.Figure 13 , which is a schematic structural diagram of a data processing device provided by an embodiment of the present application. Figure 13 The data processing device 1300 shown can operate the following units:
[0095] A processing unit 1301, configured to call a game engine to run a game application, where a game interface involved in running the game application is obtained by the game engine performing image rendering using a graphics processor;
[0096] The processing unit 1301 is further configured to, during the process of the graphics processor performing image rendering, call a data acquisition component to acquire associated data associated with the graphics processor performing image rendering; wherein, the data acquisition component is configured in the game engine;
[0097] A display unit 1302, configured to display the associated data, where the associated data is used to determine one or more of the following: operation effect data of the game application, adjustment instruction information for image rendering resources involved in the game application.
[0098] In a possible implementation manner, the associated data includes one or more of the following: load data of a shader, the number of processed pixels, the number of processed triangle lists, the number of redraws, the number of shading instructions, clock data, bandwidth data of the graphics processor; wherein, the load data of the shader includes one or more of load data of a vertex shader, load data of a fragment shader, and load data of a pixel shader, the clock data includes one or more of the number of clocks consumed for processing each pixel, the number of clocks consumed for executing each shading instruction, and clock data of the shader, and the bandwidth data of the graphics processor includes the read bandwidth of the graphics processing, the write bandwidth of the graphics processor, and the total bandwidth of the graphics processor.
[0099] In a possible implementation manner, a sending unit 1303 is configured to send the associated data to a development end; wherein, the associated data is used to instruct the development end to display the associated data on a display interface; or, the associated data is used to instruct the development end to determine one or more of the operation effect data and the adjustment instruction information according to the associated data, and is used to instruct the development end to display one or more of the operation effect data and the adjustment instruction information and the associated data on the display interface.
[0100] In a possible implementation manner, the processing unit 1301 is further configured to perform the following steps:
[0101] Obtain a data acquisition source file, and generate a data acquisition component according to the data acquisition source file;
[0102] Configure the data acquisition component in the game engine, and the data acquisition component has a counting attribute;
[0103] Among them, the step of calling the data acquisition component to collect associated data related to image rendering with the graphics processor includes:
[0104] In the startup module of the game engine, load the data acquisition component in the form of an engine module, and call the loaded data acquisition component to collect associated data related to image rendering with the graphics processor.
[0105] In a possible implementation, the processing unit 1301 is further configured to perform the following steps:
[0106] Determine the game type of the game application, and determine data acquisition configuration information according to the game type. The data acquisition configuration information includes one or more data categories, and the data of each data category is associated with image rendering;
[0107] Among them, the step of calling the loaded data acquisition component to collect associated data related to image rendering with the graphics processor includes:
[0108] Call the loaded data acquisition component to collect the data corresponding to each data category in the one or more data categories;
[0109] Determine the associated data related to image rendering with the graphics processor according to the data corresponding to each data category collected.
[0110] In a possible implementation, a data classification component is further configured in the game engine. The processing unit 1301 is further configured to perform the following steps:
[0111] Call the data classification component to save the data corresponding to each data category collected into the corresponding data category.
[0112] In a possible implementation, the processing unit 1301 is further configured to perform the following steps:
[0113] Obtain the component status of the data acquisition component and data acquisition indication information;
[0114] If the component status of the data acquisition component is the on state and the data acquisition indication information indicates data acquisition, then obtain the associated data related to image rendering with the graphics processor collected by the data acquisition component.
[0115] In a possible implementation, when the display unit 1302 displays the associated data, it is specifically configured to perform the following steps:
[0116] Call the blueprint interface and the data acquisition function to store the associated data into the blueprint function library file;
[0117] Call the chart drawing component to draw a chart for the associated data stored in the blueprint function library file to obtain chart data corresponding to the associated data;
[0118] Display the chart data corresponding to the associated data on the game interface of the game application.
[0119] In a possible implementation manner, the processing unit 1301 is further configured to determine abnormal data categories and normal data categories according to data values of various data categories in the associated data and data exception determination conditions corresponding to various data categories;
[0120] Wherein, when the display unit 1302 displays the associated data, it is specifically configured to perform the following steps:
[0121] Display the data of the abnormal data category in the associated data in a first display manner, and display the data of the normal data category in the associated data in a second display manner, where the first manner and the second manner are different.
[0122] It can be understood that the functions of the functional units of the data processing device provided in the embodiments of the present application can be specifically implemented according to the methods in the above method embodiments, and the specific implementation process can refer to the relevant descriptions in the above method embodiments, which will not be elaborated here.
[0123] In a feasible embodiment, the data processing device provided in the embodiments of the present application can be implemented in software. The data processing device can be stored in a memory, and it can be software in the form of a program and a plugin, etc., and includes a series of units, including a display unit, a processing unit, and a sending unit; wherein, the display unit, the processing unit, and the sending unit are used to implement the data processing method provided in the embodiments of the present application.
[0124] In other feasible embodiments, the data processing device provided in the embodiments of the present application may also be implemented in a combination of software and hardware. As an example, the data processing device provided in the embodiments of the present application may be a processor in the form of a hardware decoding processor, which is programmed to implement the data processing method provided in the embodiments of the present application. For example, a processor in the form of a hardware decoding processor may employ one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), or other electronic components.
[0125] In the embodiments of the present application, the game engine is called at the test end to run the game application, and the game engine is called to use the graphics processor to perform image rendering on the running game interface; during the process of the graphics processor performing image rendering, the data acquisition component configured in the game engine is called to acquire the associated data related to the image rendering performed by the graphics processor; after the acquisition is completed, the associated data is displayed. The associated data is used to determine one or more of the following: the operation effect data of the game application, and the adjustment instruction information for the image rendering resources involved in the game application. Through the data acquisition component, the relevant data of the image rendering can be automatically acquired, improving the data acquisition efficiency. Through the acquired associated data, the game operation effect or the adjustment instruction information for the image rendering resources involved in the game application can also be quickly determined, facilitating the analysis by developers, avoiding various empirical speculations and the long R & D optimization process in the manual analysis solution, and thus optimizing with high efficiency and improving the game rendering efficiency.
[0126] Please refer to Figure 14 , Figure 14 which is a schematic structural diagram of a computer device provided in the embodiments of the present application. The computer device described in the embodiments of the present application includes: a processor 1401, a communication interface 1402, and a memory 1403. Among them, the processor 1401, the communication interface 1402, and the memory 1403 may be connected through a bus or other means. In the embodiments of the present application, the connection through the bus is taken as an example. The computer device may be Figure 1 the first terminal device and the second terminal device shown.
[0127] Among them, the processor 1401 (or CPU (Central Processing Unit)) is the computing core and control core of the computer device, which can parse various instructions in the computer device and process various data of the computer device. For example, the CPU can be used to parse the power-on and power-off instructions sent by the user to the computer device and control the computer device to perform power-on and power-off operations. Another example is that the CPU can transmit various interaction data between the internal structures of the computer device, and so on. The communication interface 1402 can optionally include standard wired interfaces, wireless interfaces (such as Wi-Fi, mobile communication interfaces, etc.), and is controlled by the processor 1401 to send and receive data. The memory 1403 (Memory) is the memory device in the computer device, used to store programs and data. It can be understood that the memory 1403 here can include both the built-in memory of the computer device and, of course, the extended memory supported by the computer device. The memory 1403 provides a storage space, and the operating system of the computer device is stored in this storage space, which can include but is not limited to: Android system, iOS system, Windows Phone system, etc., and this application does not make any limitations in this regard.
[0128] In the embodiment of this application, the processor 1401 performs the following operations by running the executable program code in the memory 1403:
[0129] Call the game engine to run the game application, and the game interface involved in the operation of the game application is obtained by the game engine using the graphics processor for image rendering;
[0130] During the process of the graphics processor performing image rendering, call the data acquisition component to acquire the associated data associated with the graphics processor performing image rendering; among them, the data acquisition component is configured in the game engine;
[0131] Display the associated data, and the associated data is used to determine one or more of the following: the operation effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application.
[0132] In a possible implementation, the associated data includes one or more of the following: the load data of the shader, the number of processed pixels, the number of processed triangle lists, the number of redraws, the number of shading instructions, the clock data, and the bandwidth data of the graphics processor; wherein, the load data of the shader includes one or more of the load data of the vertex shader, the load data of the fragment shader, and the load data of the pixel shader, the clock data includes one or more of the number of clocks consumed for processing each pixel, the number of clocks consumed for executing each shading instruction, and the clock data of the shader, and the bandwidth data of the graphics processor includes the read bandwidth of the graphics processing, the write bandwidth of the graphics processor, and the total bandwidth of the graphics processor.
[0133] In a possible implementation, the processor 1401 is further configured to perform the following operations by running the executable program code in the memory 1403:
[0134] Send the associated data to the development end;
[0135] Wherein, the associated data is used to instruct the development end to display the associated data on the display interface; or, the associated data is used to instruct the development end to determine one or more of the operation effect data and the adjustment instruction information according to the associated data, and is used to instruct the development end to display one or more of the operation effect data and the adjustment instruction information, and the associated data on the display interface.
[0136] In a possible implementation, the processor 1401 is further configured to perform the following operations by running the executable program code in the memory 1403:
[0137] Obtain a data acquisition source file, and generate a data acquisition component according to the data acquisition source file;
[0138] Configure the data acquisition component in the game engine, and the data acquisition component has a counting attribute;
[0139] Wherein, the calling the data acquisition component to acquire the associated data associated with the image rendering of the graphics processor includes:
[0140] Load the data acquisition component in the form of an engine module in the startup module of the game engine, and call the loaded data acquisition component to acquire the associated data associated with the image rendering of the graphics processor.
[0141] In a possible implementation, the processor 1401 is further configured to perform the following operations by running the executable program code in the memory 1403:
[0142] Determine the game type of the game application, and determine data collection configuration information according to the game type. The data collection configuration information includes one or more data categories, and the data of each data category is associated with image rendering;
[0143] Among them, the step of calling the loaded data collection component to collect associated data related to image rendering by the graphics processor includes:
[0144] Call the loaded data collection component to collect data corresponding to each of the one or more data categories;
[0145] Determine the associated data related to image rendering by the graphics processor according to the data corresponding to each of the collected data categories.
[0146] In a possible implementation, a data classification component is further configured in the game engine. The processor 1401 is further configured to perform the following operations by running the executable program code in the memory 1403:
[0147] Call the data classification component to save the data corresponding to each of the collected data categories into the corresponding data category.
[0148] In a possible implementation, the processor 1401 is further configured to perform the following operations by running the executable program code in the memory 1403:
[0149] Obtain the component status of the data collection component and data acquisition indication information;
[0150] If the component status of the data collection component is the on state and the data acquisition indication information indicates data acquisition, obtain the associated data collected by the data collection component and related to image rendering by the graphics processor.
[0151] In a possible implementation, when the processor 1401 executes to display the associated data by running the executable program code in the memory 1403, it is specifically configured to perform the following steps:
[0152] Call the blueprint interface and the data acquisition function to store the associated data into the blueprint function library file;
[0153] Call the chart drawing component to draw a chart for the associated data stored in the blueprint function library file to obtain chart data corresponding to the associated data;
[0154] Display the chart data corresponding to the associated data on the game interface of the game application.
[0155] In a possible implementation, the processor 1401 is further configured to perform the following operations by running the executable program code in the memory 1403:
[0156] Determine abnormal data categories and normal data categories according to the data values of various data categories in the associated data and the data anomaly determination conditions corresponding to various data categories;
[0157] Among them, the display of the associated data includes:
[0158] Display the data of the abnormal data category in the associated data in a first display manner, and display the data of the normal data category in the associated data in a second display manner, where the first manner and the second manner are different.
[0159] In the embodiment of the present application, the game engine is called at the test end to run the game application, and the game engine is called to use the graphics processor to perform image rendering on the running game interface; during the process of image rendering by the graphics processor, the data acquisition component configured in the game engine is called to acquire the associated data associated with the image rendering by the graphics processor; after the acquisition is completed, the associated data is displayed. The associated data is used to determine one or more of the following: the operation effect data of the game application, and the adjustment instruction information for the image rendering resources involved in the game application. Through the data acquisition component, the relevant data of image rendering can be automatically acquired, improving the data acquisition efficiency. Through the acquired associated data, the game operation effect or the adjustment instruction information for the image rendering resources involved in the game application can also be quickly determined, facilitating the analysis by developers, avoiding various empirical speculations and long R & D optimization processes in the manual analysis solution, and thus optimizing with high efficiency and improving the game rendering efficiency.
[0160] According to one aspect of the present application, a computer program product is provided. The computer program product or computer program includes computer instructions, the computer program is stored in a computer-readable storage medium, and the processor of the computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the data processing method provided in the above various optional manners.
[0161] It should be noted that, for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should know that the present application is not limited by the described action sequence, because according to the present application, certain steps may be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the present application.
[0162] In the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an overall module or unit that includes the function of that module or unit.
[0163] In several embodiments provided by the present application, it should be understood that the disclosed device can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the above-mentioned module division is only a logical function division, and there can be other division methods in actual implementation. For example, multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed.
[0164] As described above, the above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily think of changes or substitutions, which should all be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A data processing method, characterized in that, The method includes: Invoking a game engine to run a game application, where the game interface involved in the running of the game application is obtained by the game engine rendering an image using a graphics processing unit; During the process of the graphics processing unit rendering an image, invoking a data acquisition component to acquire associated data associated with the graphics processing unit rendering an image; wherein, the data acquisition component is configured in the game engine; Displaying the associated data, where the associated data is used to determine one or more of the following: the running effect data of the game application, the adjustment instruction information for the image rendering resources involved in the game application.
2. The method according to claim 1, characterized in that, The associated data includes one or more of the following: the load data of the shader, the number of processed pixels, the number of processed triangle lists, the number of redraws, the number of shading instructions, the clock data, the bandwidth data of the graphics processing unit; wherein, the load data of the shader includes one or more of the load data of the vertex shader, the load data of the fragment shader, and the load data of the pixel shader, the clock data includes one or more of the number of clocks consumed for processing each pixel, the number of clocks consumed for executing each shading instruction, and the clock data of the shader, and the bandwidth data of the graphics processing unit includes the read bandwidth of the graphics processing, the write bandwidth of the graphics processing unit, and the total bandwidth of the graphics processing unit.
3. The method according to claim 1, wherein The method further includes: Sending the associated data to the development side; Wherein, the associated data is used to instruct the development side to display the associated data on a display interface; or, the associated data is used to instruct the development side to determine one or more of the running effect data and the adjustment instruction information according to the associated data, and is used to instruct the development side to display one or more of the running effect data and the adjustment instruction information, and to display the associated data on the display interface.
4. The method according to any one of claims 1 to 3, characterized in that The method further includes: Obtaining a data acquisition source file and generating a data acquisition component according to the data acquisition source file; Configuring the data acquisition component in the game engine, where the data acquisition component has a counting attribute; Wherein, the invoking the data acquisition component to acquire the associated data associated with the graphics processing unit rendering an image includes: Loading the data acquisition component in the form of an engine module in the startup module of the game engine, and invoking the loaded data acquisition component to acquire the associated data associated with the graphics processing unit rendering an image.
5. The method according to any one of claims 4, characterized in that The method further includes: Determining the game type of the game application and determining data acquisition configuration information according to the game type, where the data acquisition configuration information includes one or more data categories, and the data of each data category is associated with image rendering; Wherein, the invoking the loaded data acquisition component to acquire the associated data associated with the graphics processing unit rendering an image includes: Invoking the loaded data acquisition component to acquire the data corresponding to each data category in the one or more data categories. Determine the associated data related to image rendering by the graphics processor according to the data corresponding to the various data categories collected.
6. The method according to claim 5, wherein A data classification component is also configured in the game engine, and the method further includes: Call the data classification component to save the data corresponding to the various data categories collected into the corresponding data categories.
7. The method according to any one of claims 1 to 3, characterized in that The method further includes: Obtain the component status of the data collection component and the data acquisition indication information; If the component status of the data collection component is the on state and the data acquisition indication information indicates data acquisition, obtain the associated data collected by the data collection component that is related to image rendering by the graphics processor.
8. The method according to any one of claims 1 to 3, characterized in that The displaying of the associated data includes: Call the blueprint interface and the data acquisition function to store the associated data into the blueprint function library file; Call the chart drawing component to draw a chart for the associated data stored in the blueprint function library file to obtain the chart data corresponding to the associated data; Display the chart data corresponding to the associated data on the game interface of the game application.
9. The method according to claim 1, characterized in that, The method further includes: Determine the abnormal data categories and the normal data categories according to the data values of the various data categories in the associated data and the data anomaly determination conditions corresponding to the various data categories; Wherein, the displaying of the associated data includes: Display the data of the abnormal data categories in the associated data in a first display manner, and display the data of the normal data categories in the associated data in a second display manner, and the first manner and the second manner are different.
10. A data processing device, characterized in that, The device includes: A processing unit, configured to call the game engine to run the game application, and the game interface involved in the running of the game application is obtained by the game engine through image rendering by the graphics processor; The processing unit is further configured to, during the process of image rendering by the graphics processor, call the data collection component to collect the associated data related to image rendering by the graphics processor; wherein, the data collection component is configured in the game engine; A display unit, configured to display the associated data, and the associated data is used to determine one or more of the following: the running effect data of the game application, the adjustment indication information for the image rendering resources involved in the game application.
11. A computer device, characterized in that, The computer device includes: A processor, adapted to implement one or more computer programs; and, A computer-readable storage medium storing one or more computer programs, and the one or more computer programs are adapted to be loaded and executed by the processor to perform the data processing method according to any one of claims 1-9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores one or more computer programs, and the one or more computer programs are adapted to be loaded and executed by the processor to perform the data processing method according to any one of claims 1-9.
13. A computer program product, characterized in that, The computer program product includes a computer program, the computer program is stored in a computer-readable storage medium, a processor of a computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the data processing method according to any one of claims 1-9.