SlideShare uma empresa Scribd logo
1 de 13
Android: Performance Testing -Akshay Dashrath
Need Speed?
What about?
Tools Analysing logs (Trace View) Heap Dump Analysis Debug class
Trace View Graphical Tool to analyse execution logs
// start tracing to "/sdcard/test.trace"    Debug.startMethodTracing(“test");   // ...    // stop tracing    Debug.stopMethodTracing(); adb pull /sdcard/test.trace C:/ traceview C:/trace.test
Issues If a thread exits during profiling, the thread name is not emitted; The VM reuses thread IDs. If a thread stops and another starts, they may get the same ID. .trace files larger than 8MB cannot be read by the Viewer
Instruction Count
Heap Dumps C:/adb shell C:/ chmod 777 /data/misc – In order to make the /data/misc directory writeable C:/exit C:/ adb shell ps C:/ adb shell kill -10 1234 -------Example C:/ adb pull /data/misc/heap-dump-tm-pid.hprofaddress.hprof C:/ hprof-conv heap-dump-tm-pid.hprof4mat.hprof
Questions?

Mais conteúdo relacionado

Semelhante a Improve Android App Speed with Performance Testing Tools

Troubleshooting real production problems
Troubleshooting real production problemsTroubleshooting real production problems
Troubleshooting real production problemsTier1 app
 
Troubleshooting performanceavailabilityproblems (1)
Troubleshooting performanceavailabilityproblems (1)Troubleshooting performanceavailabilityproblems (1)
Troubleshooting performanceavailabilityproblems (1)Tier1 app
 
Ramaze - The Underrated Ruby Web Framework
Ramaze - The Underrated Ruby Web FrameworkRamaze - The Underrated Ruby Web Framework
Ramaze - The Underrated Ruby Web Frameworkluccastera
 
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU SpikesShooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU SpikesTier1 app
 
Damage Control
Damage ControlDamage Control
Damage Controlsintaxi
 
Advanced Debugging with GDB
Advanced Debugging with GDBAdvanced Debugging with GDB
Advanced Debugging with GDBDavid Khosid
 
Android Nâng cao-Bài 9-Debug in Android Application Development
Android Nâng cao-Bài 9-Debug in Android Application Development Android Nâng cao-Bài 9-Debug in Android Application Development
Android Nâng cao-Bài 9-Debug in Android Application Development Phuoc Nguyen
 
Android CTS training
Android CTS trainingAndroid CTS training
Android CTS trainingjtbuaa
 
100 bugs in Open Source C/C++ projects
100 bugs in Open Source C/C++ projects100 bugs in Open Source C/C++ projects
100 bugs in Open Source C/C++ projectsPVS-Studio
 
16 artifacts to capture when there is a production problem
16 artifacts to capture when there is a production problem16 artifacts to capture when there is a production problem
16 artifacts to capture when there is a production problemTier1 app
 
0628阙宏宇
0628阙宏宇0628阙宏宇
0628阙宏宇zhu02
 
High Availability With DRBD & Heartbeat
High Availability With DRBD & HeartbeatHigh Availability With DRBD & Heartbeat
High Availability With DRBD & HeartbeatChris Barber
 
Command Line Applications with Ruby
Command Line Applications with RubyCommand Line Applications with Ruby
Command Line Applications with RubyAlexander Merkulov
 
Dynamic Tracing of your AMP web site
Dynamic Tracing of your AMP web siteDynamic Tracing of your AMP web site
Dynamic Tracing of your AMP web siteSriram Natarajan
 
Android tools for testers
Android tools for testersAndroid tools for testers
Android tools for testersMaksim Kovalev
 
Quick Guide to Refresh Spark skills
Quick Guide to Refresh Spark skillsQuick Guide to Refresh Spark skills
Quick Guide to Refresh Spark skillsRavindra kumar
 
Android Logging System
Android Logging SystemAndroid Logging System
Android Logging SystemWilliam Lee
 
Improving app performance using .Net Core 3.0
Improving app performance using .Net Core 3.0Improving app performance using .Net Core 3.0
Improving app performance using .Net Core 3.0Richard Banks
 

Semelhante a Improve Android App Speed with Performance Testing Tools (20)

Troubleshooting real production problems
Troubleshooting real production problemsTroubleshooting real production problems
Troubleshooting real production problems
 
Troubleshooting performanceavailabilityproblems (1)
Troubleshooting performanceavailabilityproblems (1)Troubleshooting performanceavailabilityproblems (1)
Troubleshooting performanceavailabilityproblems (1)
 
Ramaze - The Underrated Ruby Web Framework
Ramaze - The Underrated Ruby Web FrameworkRamaze - The Underrated Ruby Web Framework
Ramaze - The Underrated Ruby Web Framework
 
A Life of breakpoint
A Life of breakpointA Life of breakpoint
A Life of breakpoint
 
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU SpikesShooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
 
Damage Control
Damage ControlDamage Control
Damage Control
 
Advanced Debugging with GDB
Advanced Debugging with GDBAdvanced Debugging with GDB
Advanced Debugging with GDB
 
Android Nâng cao-Bài 9-Debug in Android Application Development
Android Nâng cao-Bài 9-Debug in Android Application Development Android Nâng cao-Bài 9-Debug in Android Application Development
Android Nâng cao-Bài 9-Debug in Android Application Development
 
Android CTS training
Android CTS trainingAndroid CTS training
Android CTS training
 
100 bugs in Open Source C/C++ projects
100 bugs in Open Source C/C++ projects100 bugs in Open Source C/C++ projects
100 bugs in Open Source C/C++ projects
 
16 artifacts to capture when there is a production problem
16 artifacts to capture when there is a production problem16 artifacts to capture when there is a production problem
16 artifacts to capture when there is a production problem
 
0628阙宏宇
0628阙宏宇0628阙宏宇
0628阙宏宇
 
High Availability With DRBD & Heartbeat
High Availability With DRBD & HeartbeatHigh Availability With DRBD & Heartbeat
High Availability With DRBD & Heartbeat
 
Command Line Applications with Ruby
Command Line Applications with RubyCommand Line Applications with Ruby
Command Line Applications with Ruby
 
Dynamic Tracing of your AMP web site
Dynamic Tracing of your AMP web siteDynamic Tracing of your AMP web site
Dynamic Tracing of your AMP web site
 
Android tools for testers
Android tools for testersAndroid tools for testers
Android tools for testers
 
Quick Guide to Refresh Spark skills
Quick Guide to Refresh Spark skillsQuick Guide to Refresh Spark skills
Quick Guide to Refresh Spark skills
 
Android Logging System
Android Logging SystemAndroid Logging System
Android Logging System
 
Improving app performance using .Net Core 3.0
Improving app performance using .Net Core 3.0Improving app performance using .Net Core 3.0
Improving app performance using .Net Core 3.0
 
Sinatra
SinatraSinatra
Sinatra
 

Improve Android App Speed with Performance Testing Tools

  • 1. Android: Performance Testing -Akshay Dashrath
  • 4. Tools Analysing logs (Trace View) Heap Dump Analysis Debug class
  • 5. Trace View Graphical Tool to analyse execution logs
  • 6. // start tracing to "/sdcard/test.trace"    Debug.startMethodTracing(“test");   // ...    // stop tracing    Debug.stopMethodTracing(); adb pull /sdcard/test.trace C:/ traceview C:/trace.test
  • 7.
  • 8. Issues If a thread exits during profiling, the thread name is not emitted; The VM reuses thread IDs. If a thread stops and another starts, they may get the same ID. .trace files larger than 8MB cannot be read by the Viewer
  • 10. Heap Dumps C:/adb shell C:/ chmod 777 /data/misc – In order to make the /data/misc directory writeable C:/exit C:/ adb shell ps C:/ adb shell kill -10 1234 -------Example C:/ adb pull /data/misc/heap-dump-tm-pid.hprofaddress.hprof C:/ hprof-conv heap-dump-tm-pid.hprof4mat.hprof
  • 11.
  • 12.