How to troubleshoot game performance problems? — — Performance Optimization
Good game performance is a necessary component for quality gameplay. However, Game performance problems caused by bugs, hardware problems, or inefficient coding, such as slow frame rates, can often occur and negatively affect the player experience.
Performance Testing is a testing process to determine the speed, stability, and reliability of a product under a particular workload. The main purpose of performance testing is to identify and resolve these performance issues.
Performance Testing Metrics
In performance testing, the basic parameters monitored include:
- CPU occupancy — Average CPU occupancy/Proportion of low CPU occupancy (%)
- Android — Memory PSS (proportional set size) — Memory PSS peak/Average memory PSS (MB) / IOS — Footprint Memory
- FPS (frames per second) rate — Proportion of high FPS (%) /Average FPS (frame/s) / Standard deviation/ FPS jitter (times/hour)
After testing these metrics with different scenarios and machine models, analytical data and a bug list would be generated with corresponding severity levels, defect descriptions, and defect categories.
- Client Application Performance Monitoring (APM) — PerfSight
APM is a tool for monitoring the gaming experience of mobile game users. Using this tool, the game developers can identify bugs and potential issues in their games and improve their gameplay via close monitoring of users’ performance stats. During gameplay, APM conducts comprehensive monitoring of gameplay experience by monitoring players’ FPS, Memory PSS, VSS, CPU, GPU, traffic, network data, and other customized business layers.
PerfSight, as an APM tool, provides multiple statistical analysis dimensions such as time, version, scene, model, and single-user to meet diversified analysis needs. The single-user second-level monitoring can directly restore user experience before finding the cause of problems; the intelligent alarm system can send real-time feedback about online performance issues and influencing factors, and quickly control performance changes. It supports customized data reporting such as subdivided image quality to meet the diversified monitoring needs of the project team.
● Client Performance Test Tool — Perfdog
Client Performance Test Tool is a tool for testing and analyzing the performance of a game by testing the client-side (end-to-end testing). It serves to quickly locate and analyze the performance issues, and improve the performance and quality of apps and games.
PerfDog, for example, supports all applications on the mobile platform (games, apps, browsers, mini-programs, mini-games, H5, background system processes, etc.) and Android Emulator, Cloud Real Machine performance tests. It also supports APP multi-process testing, such as Android multi-child process and iOS extension process APP Extension.
The newly launched Perfdog Service can be deployed to local/cloud real machines without intrusion, and automatically adapt to a variety of applications and mainstream automation frameworks. Clients can perform secondary development based on service components for automated performance, testing services, and cloud testing services.
In the process of traditional software development and version iteration, companies require a lot of manpower, resources, and money to perform performance testing. In addition, due to insufficient client-side testing capabilities, some companies often have testing issues such as unable to conduct performance testing in iOS; or that Android testing is inaccurate and unstable.
WeTest’s Perfdog Service can help companies flexibly build their own performance cloud platform, effectively build local performance monitoring, automated cloud testing services, custom web-based data visualization, and other capabilities, and provide them with core technical support and automated performance solutions. In addition, due to the integration of multi-platform performance acquisition and technical capabilities, the performance testing indicators are more professional and in-depth, allowing enterprises to efficiently complete client performance testing.
- Crash Reporting Tool — CrashSight (Bugly)
Crash Reporting Tool helps to locate and fix pervasive crashes in a game. Bugly Overseas Edition, for example, provides developers with data statistical analysis and error log analysis on the whole platform to help developers quickly locate and solve errors, effectively reduce the crash rate of products and improve the overall user experience of products. Overseas editions also help developers with data compliance issues at sea.
Heat maps are graphical representations of data. In some games, a performance heat map can be generated to show the player’s distribution and performance status in real-time.
Performance accident online
WeTest once received an alarm of large-scale online performance degradation in a mobile game. This is a typical performance issue that could happen in many mobile/PC games. Firstly, WeTest tracked the performance trends for single-user scenarios. The result showed that the low FPS (frames per second) rate suddenly raised at a certain point in time.
After identifying the problem, WeTest started the in-depth analysis of each frame of the user during this specific time period. As the FPS graph shows, an issue was found at the 7.52 seconds at the 13th frame. Then, WeTest compared today’s data (the number of users with an average FPS lower than 18 frames/second every hour) with yesterday’s during the same time period to narrow down and confirm the list of possible issues.
Performance optimization effect
In the end, WeTest found that it was a problem caused by the automatic upgrade of an SDK. After the issue was fixed, the FPS rate was back to steady and DAU increased by 8%.
Join us! — The total quality optimization management system
WeTest is a leading quality assurance platform for games. In addition to the capabilities mentioned above, more quality optimization solutions are integrated into WeTest’s solution. WeTest supports 100% Tencent mobile games and has reached a quality alliance with Supercell. We hope to make a great game easier and set up partnerships with more excellent game corporations in the future.
For more information, please visit wetest.net