World of Tanks Blitz: Automated Performance Testing

This material was created by the engineers of the MS-1 studio. The original in English is available on the Arm blog .





World of Tanks Blitz is a session tank shooter that has been in development for over 8 years by MS-1 (Wargaming's oldest and largest mobile studio). In 2014, the game was released on iOS and Android, a couple of years later - on desktops (Windows and Mac), and in 2020 - on the Nintendo Switch. The main platforms for us remain Android and iOS, and here it is worth noting that we strive to make Blitz very scalable in terms of performance: from mobile devices of the "super low end" category to modern flagships.





. 200 , - , 10 . ( ) , ; . , CI- World of Tanks Blitz. :





  1. ;





  2. CPU;





  3. Arm Mobile Studio Arm Performance Advisor .





World of Tanks Blitz:

( ), :





  1. ;





  2. ;





  3. , , .





- . QA- , , :





1.



2. , .





, CI-, build-. 30 , .





, , , , . , . , ( , 13 30 ).





: - , -. , : , , .





, , .





  1. , , 2–3 , . — , , .





  2. , , 10–20% . , .





, . , , . , 10–15 -. , , . , .





, , . (, ), , , . , , , .





, Memory Profiler. ( 30) ( ), .





( ).





json- Chrome Profiler.





, json- , chrome://tracing .





FPS. , , .





FPS-:

FPS : ( 30) , . FPS.





— , , , (, ). , , .









  1. , : , ( UI, ) , .





  2. : , . , — , . , 8x8 45 .









  1. . 4 ; (30), 2 .





  2. , FPS - .





CPU FPS-

, , FPS. FPS . — . , , CPU. «low end», . : , . 70 .





: . . , . , UI- , , FPS . , . ( , « 1 Samsung S8») , .





json Chrome Tracing, , - . , Scene::Update , :





, - ? 4 , . , , .





bigquery , datastudio.





, , Engine::OnFrame 24–28 , 27 . :





  1. ;





  2. , , ;





  3. , 1.





-«», . , - ? .





  1. , . , . , , , .





  2. , . .





CPU- , , . ; — , .





« 27 ». , , -«» — rhi::DevicePresent. , « » GPU! , GPU ?





GPU-

datastudio, : «DrawCallCount». , : «PrimitiveCount», «TriangleCount», «VertexCount». , , CPU, , GPU. « 27 », .





, 150K . -, ( , 3 , , ), -«».





, ? , , overdraw? , ?





( overdraw) ( , ) . Arm Mobile Studio Pro.





Arm Mobile Studio Pro GPU

Arm Mobile Studio Pro (hardware counters) GPU Mali CI-, :





  1. « GPU?»;





  2. , « » ;





  3. ( , , , , ).





, Arm Mobile Studio Performance Advisor. , , html-.





, Arm Mobile Studio Pro ( , Performance Advisor) 3. 





, . , :





  1. , ;





  2. , , FPS;





  3. ;





  4. ; FPS , 2, .





PA (Performance Advisor) 4. , 1 Samsung Galaxy A50 Mali-G72 MP3. PA ( ).





:





  1. FPS 30, Arm Mobile Studio Pro;





  2. fragment bound ( ) — , .





, PA html- .





, , , fragment-bound- . , !





PA « ». , unknown boundness.





, , Streamline. , , ARM . 





, Arm Mobile Studio Pro CI-. PA , json- , PA. bigquery , datastudio — , CPU-. .





Arm Mobile Studio Pro GPU Mali, GPU . , GPU Mali, ( , Mali, Android-, , ).





Arm: GPU .





MS-1 . , .





, , , , . , . , :





  1. ( , 3–5 °C );





  2. .





, , .





, . , : , , , .








All Articles