SlideShare a Scribd company logo
1 of 23
©2014 GlobalLogic Inc. CONFIDENTIAL
Android UI Performance 
Overdraw problem 
©2014 GlobalLogic Inc. CONFIDENTIAL
CONFIDENTIAL 
Agenda 
1. What is overdraw? 
2. Why is overdraw bad? 
3. How to detect and fight overdraw?
What is overdraw? 
©2014 GlobalLogic Inc. CONFIDENTIAL
CONFIDENTIAL 
What is overdraw? 
Layer #1 
Layer #2 
Layer #3 
Layer #4
Why is overdraw so bad? 
©2014 GlobalLogic Inc. CONFIDENTIAL
CONFIDENTIAL 
Smooth user experience 
16ms 16ms 16ms 16ms 
Frame takes < 16ms 13ms 10ms 8ms 15ms 
Frame takes > 16ms 13ms 18ms 18ms 
Dropped Frame 
Screen refresh rate ~60 Hz 
t
Mobile vs. Desktop - Smartest Android in the World!!! 
Adreno 330 
GFlops 
130 
CONFIDENTIAL
Mobile vs. Desktop - Is not so smart after all... 
Adreno 330 
130 
CONFIDENTIAL 
AMD A10 
Intel HD 5000 
615 500 
NVidia GTX Titan 
GFlops 
AMD 7970 GHz 
GFlops 
4500 4300
Mobile vs. Desktop - But there is still hope! 
Adreno 330 
130 
CONFIDENTIAL 
GFlops AMD A10 
Intel HD 5000 
GFlops 
615 500
CONFIDENTIAL 
Android Devices Zoo 
Hi-End devices 
Nexus 6, Samsung Galaxy S5, HTC One, etc. 
Can handle most issues without influencing user 
experience even with complex UI hierarchy
CONFIDENTIAL 
Android Devices Zoo 
Low-End devices 
most pre-ICS devices like HTC Wildfire S 
Some devices can deliver smooth user experience for 
simple UI, other will fail even for optimal UI 
Note: most embedded devices go here
CONFIDENTIAL 
Android Devices Zoo 
Mid-End devices 
Nexus S, Samsung Galaxy S2, HTC Sensation, etc. 
Capable of creating smooth user experience but can 
easily fail if UI is not optimized 
Note: most STB devices go here
How to detect and fight overdraw? 
©2014 GlobalLogic Inc. CONFIDENTIAL
How to detect overdraw? 
1. Show GPU overdraw (enable developers mode on 
phone) 
2. Hierarchy viewer (requires ViewServer library for 
released devices) 
3. Tracer for OpenGL 
©2014 GlobalLogic Inc. CONFIDENTIAL
How to detect overdraw with “GPU overdraw”? 
● No color means there is no overdraw. So, you are 
CONFIDENTIAL 
awesome! 
● Blue indicates an overdraw of 1x. 
● Green indicates an overdraw of 2x. 
● Light red indicates an overdraw of 3x. 
● Dark red indicates an overdraw of 4x or more. This 
is wrong. Fix it.
How to detect overdraw with “Hierarchy viewer”? 
1. Select Hierarchy viewer perspective in ADT or 
CONFIDENTIAL 
Device monitor 
2. Select a window that you want to inspect 
3. Click Load button 
4. Export it as Photoshop document when needed
How to detect overdraw with “Tracer for OpenGL”? 
1. Select Tracer for OpenGL perspective in ADT 
CONFIDENTIAL 
or Device monitor 
2. Click Collects OpenGL information 
3. Set package and activity 
4. Check traces.
CONFIDENTIAL 
How to fight overdraw? 
● draw less :) 
● flatten and simplify view hierarchy 
● change window’s background when applicable 
● transparent segments for 9-patch won’t be drawn, but transparent bitmaps will 
P.S.: 
● never ever use requestLayout() for animations 
● be careful with layers and dynamically changing views
Demo Time! 
©2014 GlobalLogic Inc. CONFIDENTIAL
Demo 
©2014 GlobalLogic Inc. CONFIDENTIAL
Q&A 
©2014 GlobalLogic Inc. CONFIDENTIAL
Thank You! 
Rostyslav Lesovyi Oleksandr Kravchenko 
©2014 GlobalLogic Inc. CONFIDENTIAL

More Related Content

Similar to Android UI Performance & Overdraw

Qualcomm: How to take advantage of XR over 5G in 2019: Understanding XR Viewers
Qualcomm: How to take advantage of XR over 5G in 2019: Understanding XR ViewersQualcomm: How to take advantage of XR over 5G in 2019: Understanding XR Viewers
Qualcomm: How to take advantage of XR over 5G in 2019: Understanding XR ViewersAugmentedWorldExpo
 
Solving IoT Hardware Issues With Docker
Solving IoT Hardware Issues With DockerSolving IoT Hardware Issues With Docker
Solving IoT Hardware Issues With DockerWill Hall
 
Going Mobile - Flash Gaming Summit 2012
Going Mobile - Flash Gaming Summit 2012Going Mobile - Flash Gaming Summit 2012
Going Mobile - Flash Gaming Summit 2012Nate Beck
 
Fight back android fragmentation
Fight back android fragmentationFight back android fragmentation
Fight back android fragmentationBitbar
 
Dericam H502W English User Manual
Dericam H502W English User ManualDericam H502W English User Manual
Dericam H502W English User ManualSecurityCameraTalk
 
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!Stephan Tanguay
 
3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and Pitfalls3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and PitfallsTrueConf__
 
3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and Pitfalls3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and PitfallsTrueConf
 
GRID Signage: Future of Digital Signage
GRID Signage: Future of Digital SignageGRID Signage: Future of Digital Signage
GRID Signage: Future of Digital Signageapptividia
 
Using system fingerprints to track attackers
Using system fingerprints to track attackersUsing system fingerprints to track attackers
Using system fingerprints to track attackersLance Cottrell
 
VR Introduction
VR IntroductionVR Introduction
VR IntroductionAdam Chen
 
CodeMotion tel aviv 2015 - burning marshmallows
CodeMotion tel aviv 2015 - burning marshmallowsCodeMotion tel aviv 2015 - burning marshmallows
CodeMotion tel aviv 2015 - burning marshmallowsRon Munitz
 
Wearable computer (eyeglass type)
Wearable computer (eyeglass type)Wearable computer (eyeglass type)
Wearable computer (eyeglass type)Yunico Westunitis
 
Going mobile natebeck
Going mobile natebeckGoing mobile natebeck
Going mobile natebeckNate Beck
 
Undo tech overview_201410
Undo tech overview_201410Undo tech overview_201410
Undo tech overview_201410gregthelaw
 
Cloud-Based, Automated Mobile App Testing for the Enterprise
Cloud-Based, Automated Mobile App Testing for the EnterpriseCloud-Based, Automated Mobile App Testing for the Enterprise
Cloud-Based, Automated Mobile App Testing for the EnterpriseTechWell
 

Similar to Android UI Performance & Overdraw (20)

Qualcomm: How to take advantage of XR over 5G in 2019: Understanding XR Viewers
Qualcomm: How to take advantage of XR over 5G in 2019: Understanding XR ViewersQualcomm: How to take advantage of XR over 5G in 2019: Understanding XR Viewers
Qualcomm: How to take advantage of XR over 5G in 2019: Understanding XR Viewers
 
Solving IoT Hardware Issues With Docker
Solving IoT Hardware Issues With DockerSolving IoT Hardware Issues With Docker
Solving IoT Hardware Issues With Docker
 
Going Mobile - Flash Gaming Summit 2012
Going Mobile - Flash Gaming Summit 2012Going Mobile - Flash Gaming Summit 2012
Going Mobile - Flash Gaming Summit 2012
 
Fight back android fragmentation
Fight back android fragmentationFight back android fragmentation
Fight back android fragmentation
 
Dericam H502W English User Manual
Dericam H502W English User ManualDericam H502W English User Manual
Dericam H502W English User Manual
 
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
 
3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and Pitfalls3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and Pitfalls
 
3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and Pitfalls3d Video Conferencing: Opportunities and Pitfalls
3d Video Conferencing: Opportunities and Pitfalls
 
GRID Signage: Future of Digital Signage
GRID Signage: Future of Digital SignageGRID Signage: Future of Digital Signage
GRID Signage: Future of Digital Signage
 
Using system fingerprints to track attackers
Using system fingerprints to track attackersUsing system fingerprints to track attackers
Using system fingerprints to track attackers
 
Amcrest ProHD
Amcrest ProHDAmcrest ProHD
Amcrest ProHD
 
VR Introduction
VR IntroductionVR Introduction
VR Introduction
 
Microsoft Hololens
Microsoft Hololens Microsoft Hololens
Microsoft Hololens
 
Cyanogenmod
CyanogenmodCyanogenmod
Cyanogenmod
 
CodeMotion tel aviv 2015 - burning marshmallows
CodeMotion tel aviv 2015 - burning marshmallowsCodeMotion tel aviv 2015 - burning marshmallows
CodeMotion tel aviv 2015 - burning marshmallows
 
Wearable computer (eyeglass type)
Wearable computer (eyeglass type)Wearable computer (eyeglass type)
Wearable computer (eyeglass type)
 
Going mobile natebeck
Going mobile natebeckGoing mobile natebeck
Going mobile natebeck
 
Technology Trend 2018
Technology Trend 2018Technology Trend 2018
Technology Trend 2018
 
Undo tech overview_201410
Undo tech overview_201410Undo tech overview_201410
Undo tech overview_201410
 
Cloud-Based, Automated Mobile App Testing for the Enterprise
Cloud-Based, Automated Mobile App Testing for the EnterpriseCloud-Based, Automated Mobile App Testing for the Enterprise
Cloud-Based, Automated Mobile App Testing for the Enterprise
 

More from GlobalLogic Ukraine

GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”
GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”
GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”GlobalLogic Ukraine
 
Штучний інтелект як допомога в навчанні, а не замінник.pptx
Штучний інтелект як допомога в навчанні, а не замінник.pptxШтучний інтелект як допомога в навчанні, а не замінник.pptx
Штучний інтелект як допомога в навчанні, а не замінник.pptxGlobalLogic Ukraine
 
Задачі AI-розробника як застосовується штучний інтелект.pptx
Задачі AI-розробника як застосовується штучний інтелект.pptxЗадачі AI-розробника як застосовується штучний інтелект.pptx
Задачі AI-розробника як застосовується штучний інтелект.pptxGlobalLogic Ukraine
 
Що треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptx
Що треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptxЩо треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptx
Що треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptxGlobalLogic Ukraine
 
GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...
GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...
GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...GlobalLogic Ukraine
 
JavaScript Community Webinar #14 "Why Is Git Rebase?"
JavaScript Community Webinar #14 "Why Is Git Rebase?"JavaScript Community Webinar #14 "Why Is Git Rebase?"
JavaScript Community Webinar #14 "Why Is Git Rebase?"GlobalLogic Ukraine
 
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...GlobalLogic Ukraine
 
Страх і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic EducationСтрах і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic EducationGlobalLogic Ukraine
 
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”GlobalLogic Ukraine
 
GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”GlobalLogic Ukraine
 
“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?GlobalLogic Ukraine
 
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...GlobalLogic Ukraine
 
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...GlobalLogic Ukraine
 
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”GlobalLogic Ukraine
 
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"GlobalLogic Ukraine
 
GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"GlobalLogic Ukraine
 
C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"GlobalLogic Ukraine
 
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...GlobalLogic Ukraine
 
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Ukraine
 
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”GlobalLogic Ukraine
 

More from GlobalLogic Ukraine (20)

GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”
GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”
GlobalLogic JavaScript Community Webinar #18 “Long Story Short: OSI Model”
 
Штучний інтелект як допомога в навчанні, а не замінник.pptx
Штучний інтелект як допомога в навчанні, а не замінник.pptxШтучний інтелект як допомога в навчанні, а не замінник.pptx
Штучний інтелект як допомога в навчанні, а не замінник.pptx
 
Задачі AI-розробника як застосовується штучний інтелект.pptx
Задачі AI-розробника як застосовується штучний інтелект.pptxЗадачі AI-розробника як застосовується штучний інтелект.pptx
Задачі AI-розробника як застосовується штучний інтелект.pptx
 
Що треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptx
Що треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptxЩо треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptx
Що треба вивчати, щоб стати розробником штучного інтелекту та нейромереж.pptx
 
GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...
GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...
GlobalLogic Java Community Webinar #16 “Zaloni’s Architecture for Data-Driven...
 
JavaScript Community Webinar #14 "Why Is Git Rebase?"
JavaScript Community Webinar #14 "Why Is Git Rebase?"JavaScript Community Webinar #14 "Why Is Git Rebase?"
JavaScript Community Webinar #14 "Why Is Git Rebase?"
 
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
 
Страх і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic EducationСтрах і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic Education
 
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
 
GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”
 
“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?
 
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
 
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
 
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
 
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
 
GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"
 
C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"
 
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
 
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
 
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
 

Recently uploaded

HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptxthe ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptxhumanexperienceaaa
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 

Recently uploaded (20)

HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptxthe ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
the ladakh protest in leh ladakh 2024 sonam wangchuk.pptx
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 

Android UI Performance & Overdraw

  • 1. ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 2. Android UI Performance Overdraw problem ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 3. CONFIDENTIAL Agenda 1. What is overdraw? 2. Why is overdraw bad? 3. How to detect and fight overdraw?
  • 4. What is overdraw? ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 5. CONFIDENTIAL What is overdraw? Layer #1 Layer #2 Layer #3 Layer #4
  • 6. Why is overdraw so bad? ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 7. CONFIDENTIAL Smooth user experience 16ms 16ms 16ms 16ms Frame takes < 16ms 13ms 10ms 8ms 15ms Frame takes > 16ms 13ms 18ms 18ms Dropped Frame Screen refresh rate ~60 Hz t
  • 8. Mobile vs. Desktop - Smartest Android in the World!!! Adreno 330 GFlops 130 CONFIDENTIAL
  • 9. Mobile vs. Desktop - Is not so smart after all... Adreno 330 130 CONFIDENTIAL AMD A10 Intel HD 5000 615 500 NVidia GTX Titan GFlops AMD 7970 GHz GFlops 4500 4300
  • 10. Mobile vs. Desktop - But there is still hope! Adreno 330 130 CONFIDENTIAL GFlops AMD A10 Intel HD 5000 GFlops 615 500
  • 11. CONFIDENTIAL Android Devices Zoo Hi-End devices Nexus 6, Samsung Galaxy S5, HTC One, etc. Can handle most issues without influencing user experience even with complex UI hierarchy
  • 12. CONFIDENTIAL Android Devices Zoo Low-End devices most pre-ICS devices like HTC Wildfire S Some devices can deliver smooth user experience for simple UI, other will fail even for optimal UI Note: most embedded devices go here
  • 13. CONFIDENTIAL Android Devices Zoo Mid-End devices Nexus S, Samsung Galaxy S2, HTC Sensation, etc. Capable of creating smooth user experience but can easily fail if UI is not optimized Note: most STB devices go here
  • 14. How to detect and fight overdraw? ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 15. How to detect overdraw? 1. Show GPU overdraw (enable developers mode on phone) 2. Hierarchy viewer (requires ViewServer library for released devices) 3. Tracer for OpenGL ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 16. How to detect overdraw with “GPU overdraw”? ● No color means there is no overdraw. So, you are CONFIDENTIAL awesome! ● Blue indicates an overdraw of 1x. ● Green indicates an overdraw of 2x. ● Light red indicates an overdraw of 3x. ● Dark red indicates an overdraw of 4x or more. This is wrong. Fix it.
  • 17. How to detect overdraw with “Hierarchy viewer”? 1. Select Hierarchy viewer perspective in ADT or CONFIDENTIAL Device monitor 2. Select a window that you want to inspect 3. Click Load button 4. Export it as Photoshop document when needed
  • 18. How to detect overdraw with “Tracer for OpenGL”? 1. Select Tracer for OpenGL perspective in ADT CONFIDENTIAL or Device monitor 2. Click Collects OpenGL information 3. Set package and activity 4. Check traces.
  • 19. CONFIDENTIAL How to fight overdraw? ● draw less :) ● flatten and simplify view hierarchy ● change window’s background when applicable ● transparent segments for 9-patch won’t be drawn, but transparent bitmaps will P.S.: ● never ever use requestLayout() for animations ● be careful with layers and dynamically changing views
  • 20. Demo Time! ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 21. Demo ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 22. Q&A ©2014 GlobalLogic Inc. CONFIDENTIAL
  • 23. Thank You! Rostyslav Lesovyi Oleksandr Kravchenko ©2014 GlobalLogic Inc. CONFIDENTIAL