Video není dostupné.
Omlouváme se.
Demystify the data in Android Studio Profilers (Android Dev Summit '19)
Vložit
- čas přidán 17. 08. 2024
- Profilers are a powerful tool in a developer's arsenal, but working with performance data can be intimidating at times. This session demystifies the profilers in Android Studio, discussing how to read and make use of data from memory heap dumps and CPU recordings to help you optimize the performance of your app.
Watch more on Android Studio Profilers:
Deep Dive into Android Studio Profilers (Android Dev Summit '18) → goo.gle/2JlIi7F
Improve app performance with Android Studio Profilers (Google I/O '18) → goo.gle/2JfksdN
Android Studio Profiling (Android Game Developer Summit 2018) → goo.gle/363Vho6
Presented by: Shukang Zhou, Yi Yang
Android Studio Sessions → goo.gle/Androi...
Android Dev Summit '19 all sessions playlist → goo.gle/ADS19a...
Subscribe to the Android Developers channel! → goo.gle/Androi...
Check out the photo album → goo.gle/ADS19Ph...
#AndroidDevSummit event: Android Dev Summit 2019; re_ty: Publish; product: Android - General; fullname: Shukang Zhou, Yi Yang;
Here are a couple of timestamps for easy navigation:
0:41 Memory leak overview
2:06 Activity & Fragment leak detection
3:34 Memory leak detection for other classes
7:43 Demo (memory Profiler)
9:13 Demo (CPU Profiler)
10:48 Call Chart
11:27 Flame Chart
13:16 Top Down Tree
15:58 Bottom Up Tree
18:59 Cheat Sheet
great idea to comment like this
Great talk! This talk must be shared as much as possible.
Thanks guys but my mac is being very slow when I run profiler (MacBook Pro (15-inch 2019) 2.4 GHz 8-Core Intel Core i9 16 GB 2400 MHz DDR4 )
One thing that might help with the performance is to config Android Studio's heap size. Here is the link: developer.android.com/studio/intro/studio-config#adjusting_heap_size .
Don't worry, every computer is very low. There is tons of of work during profiling, thats just normal. The only way to get around this is to create reuseable components that you can test in smaller programs.
I have half of that specs in an old pentium, and it works like a charm.
Hi, I am trying to get method call time (CPU) for my app launch, but the chart/data (method call time) the profiler populates is much higher than what I expect, plus if I record the time simply just by starttime - endtime of that method it is much low and seems accurate. What am I doing wrong here with profiling?
Hi, sorry for the late reply. Were you using a sampled configuration (Sample Java methods or C/C++ functions)? If so the timestamps may be slightly off from the actual values. Sampling is meant for getting useful statistics with relatively low overhead. To get accurate numbers you'll want to use a instrumented configuration (Trace Java or system calls). Java instrumentation has high runtime overhead and generates a lot of data so you may want to limit the recording to just a few seconds. System Trace doesn't trace your app code but you can define custom events like this: developer.android.com/topic/performance/tracing/custom-events.
impressive guys from China, Shukang & Yi
I'm proud of them.
Very informative talk. Thank you!