The document discusses various ways mobile app developers can lower the power consumption of their apps without affecting performance. It begins by explaining that most apps do not efficiently use system resources like the processor, cellular radio, and display, wasting power and reducing battery life. It then provides tips for optimizing specific areas of power consumption, such as using the cellular radio efficiently by bundling network traffic, offloading tasks to hardware accelerators like the DSP to reduce CPU usage, and managing the display to minimize brightness. The document stresses that measuring power consumption is key, and provides tools developers can use to profile and optimize the power impact of their apps.
Profiling tools and Android Performance patternsicemobile
Profiling is one of the most important steps in the development cycle of any app. Although this is well known, we as developers usually don’t know the potential of every tool that we have to help us. In this presentation we would like to introduce the most useful tools at our disposal that we may use to profile the GPU and memory performance, the most typical problems that our apps might have and how to solve them making use of the android performance patterns.
This document primarily covers micro-optimizations that can improve overall app performance when combined, but it's unlikely that these changes will result in dramatic performance effects. Choosing the right algorithms and data structures should always be your priority, but is outside the scope of this document. You should use the tips in this document as general coding practices that you can incorporate into your habits for general code efficiency.
One of the trickiest problems you'll face when micro-optimizing an Android app is that your app is certain to be running on multiple types of hardware. Different versions of the VM running on different processors running at different speeds. It's not even generally the case that you can simply say "device X is a factor F faster/slower than device Y", and scale your results from one device to others. In particular, measurement on the emulator tells you very little about performance on any device.
To ensure your app performs well across a wide variety of devices, ensure your code is efficient at all levels and aggressively optimize your performance.
Profiling tools and Android Performance patternsicemobile
Profiling is one of the most important steps in the development cycle of any app. Although this is well known, we as developers usually don’t know the potential of every tool that we have to help us. In this presentation we would like to introduce the most useful tools at our disposal that we may use to profile the GPU and memory performance, the most typical problems that our apps might have and how to solve them making use of the android performance patterns.
This document primarily covers micro-optimizations that can improve overall app performance when combined, but it's unlikely that these changes will result in dramatic performance effects. Choosing the right algorithms and data structures should always be your priority, but is outside the scope of this document. You should use the tips in this document as general coding practices that you can incorporate into your habits for general code efficiency.
One of the trickiest problems you'll face when micro-optimizing an Android app is that your app is certain to be running on multiple types of hardware. Different versions of the VM running on different processors running at different speeds. It's not even generally the case that you can simply say "device X is a factor F faster/slower than device Y", and scale your results from one device to others. In particular, measurement on the emulator tells you very little about performance on any device.
To ensure your app performs well across a wide variety of devices, ensure your code is efficient at all levels and aggressively optimize your performance.
The Xbox is a video gaming brand series created by Microsoft.
in the sixth to eighth generations, as well as applications , streaming services, and the online service.
Android Application Devlopment. A Guide for the Intermediate Developer. Degree Thesis in Computer Science presented at Malmo Univerity, School of Technology, Department of Computer Science June 4, 2010.
This slide from Android Application Programming Seminar at a Technical University of Vietnam.
Throughout the slide, audience will have the general knowledge about Android OS, Architecture. The slide also provide the Android Application structure, the choices of framework or language to develop an Android application.
Real Time Audio is an application is written for this seminar.
Everyone can download from Google Play:
https://play.google.com/store/apps/details?id=junoteam.com.realtimerecording
"How to Market Digital Games" Game Connection presentationSteve Fowler
The presentation deck from my recent talk at Game Connection Paris. This deck focuses on the practice of marketing videogames in the new era of digital distribution and the changes that marketers face. Primary focus is payed to the difference in marketing games as a service vs. games as a product.
Google Firebase on Android is a mobile platform that lets you develop high-quality maintainable apps, improve apps quality, increase user engagement, and grow your business to earn more money. In this presentation, Firebase on Android: The Big Picture, attendees will learn foundational knowledge of why and when to use Google Firebase in their Android application. They will first explore core Firebase functionalities to develop and maintain high-quality apps. Next, they will discover how they can leverage the power of Firebase to improve apps quality while in production and therefore learn how to use Firebase to grow their business. Finally, they will explore how to integrate Firebase in their Android application. At the end of my presentation, attendees will get a clear picture of why and when to use Firebase to develop, and maintain high-quality apps to flourish their business.
What all will be covered in the session?
- Explore core Firebase features available to build high-quality Android apps such as Authentication, Cloud Firestore, Realtime Database, Cloud Storage, and Cloud Functions.
- Realise the importance of Firebase features such as Crashlytics, Performance Monitoring , and Test Lab to get insights into potential bugs and fix it to improve the quality of apps.
- Explore various Firebase tools such as Google Analytics, In-App Messaging, Cloud Messaging, Remote Config, A/B Testing , and Predictions to drive user engagement, grow user base, increase user retention, and make more money.
- Integrate Firebase SDK in your Android project using Android Studio and explore the various aspects of the Firebase console.
Task Resource Consumption Prediction for Scientific Applications and WorkflowsRafael Ferreira da Silva
Presentation held at the Algorithms and Scheduling Techniques to Manage Resilience and Power Consumption in Distributed Systems 2015 Seminar - Dagstuhl
Estimates of task runtime, disk space usage, and memory consumption, are commonly used by scheduling and resource provisioning algorithms to support efficient and reliable scientific application executions. Such algorithms often assume that accurate estimates are available, but such estimates are difficult to generate in practice. In this work, we first profile real scientific applications and workflows, collecting fine-grained information such as process I/O, runtime, memory usage, and CPU utilization. We then propose a method to automatically characterize task requirements based on these profiles. Our method estimates task runtime, disk space, and peak memory consumption. It looks for correlations between the parameters of a dataset, and if no correlation is found, the dataset is divided into smaller subsets using the statistical recursive partitioning method and conditional inference trees to identify patterns that characterize particular behaviors of the workload. We then propose an estimation process to predict task characteristics of scientific applications based on the collected data. For scientific workflows, we propose an online estimation process based on the MAPE-K loop, where task executions are monitored and estimates are updated as more information becomes available. Experimental results show that our online estimation process results in much more accurate predictions than an offline approach, where all task requirements are estimated prior to workflow execution.
Purchasing chassis with large numbers of HDDs is one way to configure your infrastructure, but such a solution can provide less than optimal performance, take up a large amount of prime data center space, and increase power and cooling costs. Configuring your servers with SSDs, on the other hand, can dramatically improve performance while simultaneously reducing the overall power consumption of your data center.
In our tests, replacing 24 HDDs in an external chassis with only six internal Kingston SSDs boosted total database performance by as much as 91.8 percent. Not only did the server with Kingston SSDs outperform the HDD solution, it also consumed 32.5 percent less power while active and 51.0 percent less power when idle. Such dramatic performance increases and reduction in power consumption can make Kingston SSDs a compelling choice for the database servers in your data center.
The Xbox is a video gaming brand series created by Microsoft.
in the sixth to eighth generations, as well as applications , streaming services, and the online service.
Android Application Devlopment. A Guide for the Intermediate Developer. Degree Thesis in Computer Science presented at Malmo Univerity, School of Technology, Department of Computer Science June 4, 2010.
This slide from Android Application Programming Seminar at a Technical University of Vietnam.
Throughout the slide, audience will have the general knowledge about Android OS, Architecture. The slide also provide the Android Application structure, the choices of framework or language to develop an Android application.
Real Time Audio is an application is written for this seminar.
Everyone can download from Google Play:
https://play.google.com/store/apps/details?id=junoteam.com.realtimerecording
"How to Market Digital Games" Game Connection presentationSteve Fowler
The presentation deck from my recent talk at Game Connection Paris. This deck focuses on the practice of marketing videogames in the new era of digital distribution and the changes that marketers face. Primary focus is payed to the difference in marketing games as a service vs. games as a product.
Google Firebase on Android is a mobile platform that lets you develop high-quality maintainable apps, improve apps quality, increase user engagement, and grow your business to earn more money. In this presentation, Firebase on Android: The Big Picture, attendees will learn foundational knowledge of why and when to use Google Firebase in their Android application. They will first explore core Firebase functionalities to develop and maintain high-quality apps. Next, they will discover how they can leverage the power of Firebase to improve apps quality while in production and therefore learn how to use Firebase to grow their business. Finally, they will explore how to integrate Firebase in their Android application. At the end of my presentation, attendees will get a clear picture of why and when to use Firebase to develop, and maintain high-quality apps to flourish their business.
What all will be covered in the session?
- Explore core Firebase features available to build high-quality Android apps such as Authentication, Cloud Firestore, Realtime Database, Cloud Storage, and Cloud Functions.
- Realise the importance of Firebase features such as Crashlytics, Performance Monitoring , and Test Lab to get insights into potential bugs and fix it to improve the quality of apps.
- Explore various Firebase tools such as Google Analytics, In-App Messaging, Cloud Messaging, Remote Config, A/B Testing , and Predictions to drive user engagement, grow user base, increase user retention, and make more money.
- Integrate Firebase SDK in your Android project using Android Studio and explore the various aspects of the Firebase console.
Task Resource Consumption Prediction for Scientific Applications and WorkflowsRafael Ferreira da Silva
Presentation held at the Algorithms and Scheduling Techniques to Manage Resilience and Power Consumption in Distributed Systems 2015 Seminar - Dagstuhl
Estimates of task runtime, disk space usage, and memory consumption, are commonly used by scheduling and resource provisioning algorithms to support efficient and reliable scientific application executions. Such algorithms often assume that accurate estimates are available, but such estimates are difficult to generate in practice. In this work, we first profile real scientific applications and workflows, collecting fine-grained information such as process I/O, runtime, memory usage, and CPU utilization. We then propose a method to automatically characterize task requirements based on these profiles. Our method estimates task runtime, disk space, and peak memory consumption. It looks for correlations between the parameters of a dataset, and if no correlation is found, the dataset is divided into smaller subsets using the statistical recursive partitioning method and conditional inference trees to identify patterns that characterize particular behaviors of the workload. We then propose an estimation process to predict task characteristics of scientific applications based on the collected data. For scientific workflows, we propose an online estimation process based on the MAPE-K loop, where task executions are monitored and estimates are updated as more information becomes available. Experimental results show that our online estimation process results in much more accurate predictions than an offline approach, where all task requirements are estimated prior to workflow execution.
Purchasing chassis with large numbers of HDDs is one way to configure your infrastructure, but such a solution can provide less than optimal performance, take up a large amount of prime data center space, and increase power and cooling costs. Configuring your servers with SSDs, on the other hand, can dramatically improve performance while simultaneously reducing the overall power consumption of your data center.
In our tests, replacing 24 HDDs in an external chassis with only six internal Kingston SSDs boosted total database performance by as much as 91.8 percent. Not only did the server with Kingston SSDs outperform the HDD solution, it also consumed 32.5 percent less power while active and 51.0 percent less power when idle. Such dramatic performance increases and reduction in power consumption can make Kingston SSDs a compelling choice for the database servers in your data center.
7 Ways to unlock value from Smartmeter Big DataDerick Jose
The utility industry is undergoing a fundamental transformation with increased digitation and tighter coupling between IT and OT. Flutura outlines 7 ways by which utilities can monetize smartmeter data
Power Management from Linux Kernel to
Android
For normal desktop computer, power management (PM) is used to reduce power
consumption and reduce cooling requirements. Lower power consumption means
lower heat dissipation, which increases system stability, and less energy use, which
saves money and reduces the impact on the environment. For mobile device and
embedded system device, it’s much more important because the battery power is very
limited. Nowadays, android phone and iPhone are more and more pervasive. There
are more and more sensors and I/O in mobile device that can be used to improve the
effectiveness of PM. The PM needs to be tuned for new mobile device’s need. In this
survey, we want to not only know the power management system used before, but
also want to compare them with the design of Android PM.
Presented by Brian Gupta (brian.gupta@brandorr.com) and Nathan Freitas (nathan@olivercoady.com)
Learn more at http://tinyurl.com/androidfaq
Android is a fully integrated and open source bundle of software significantly lowers the current costs of developing mobile devices (currently runs on a cellphone (the HTC Dream/T-Mobile G1), and a number of unofficial "ports". It consists of an operating system, middleware, a user-friendly interface and powerful applications.
The talk will start with a review of the internal architecture of the Android platform, breaking down the various components, and examine how they work. Then we will review the latest status of the open source project, including how to get and build the source code, and how to get involved.
Learn about energy consumption and battery life on Android devicesMarakana Inc.
San Francisco Android User Group hosted an event on March 30th, 2010 with Frank Maker, Eric Jung, and Yichuan Wang, a trio of very smart PhD students, who shared what they've learned about power consumption / battery life on mobile/Android devices in their years of research. Specifically, they talked about: Mobile Architecture - Talk about differences with desktop/laptop computers, where power goes, etc. Measuring Power/Energy - difference between energy and power, battery technology, why the problem isn't going away anytime soon Software Optimizations - different ideas you can use to lower the power consumption of your application. Hosted by SUPINFO Sponsored by Sun, O'Reilly, and Marakana Organized by Marakana Video by Max Walker Photography by Aleksandar Gargenta
Android Accessibility - The missing manualTed Drake
Android provides great accessibility support, but finding that information can sometimes be difficult to impossible. This presentation gathers some hard to find information on Android Accessibility and gives additional links to resources for making your application accessible.
Please visit the accessible version of this presentation for slide details: http://www.last-child.com/android-a11y-missing-manual/
Eddystone beacons: Everything you need to knowBeaconstac
Apart from all the excitement around Eddystone, there has also been a fair amount of confusion about how its introduction will affect businesses’ ongoing beacon projects. This webinar talks about all such concerns and answers FAQs on Eddystone.
Samsung Developer's Conference - Maximize App Performance while Minimizing Ba...rickschwar
Trepn Profiler was recently showcased at the Samsung Developer's Conference in a session titled:
Maximize App Performance while Minimizing Battery Drain
You can view the full video of this event here: https://www.youtube.com/watch?v=SR_1WGD88Pw
Here is the outline of the entire session:
· 0:00:00 – Agenda – Rick Schwartz
· 0:01:32 – The challenge – Mobile trends
· 0:04:50 – Does your app consume too much power?
· 0:10:48 – Software power measurement Best Practices
· 0:14:17 – Demo: Using Trepn to profile your mobile processor
· 0:27:06 – Per-rail power measurements
· 0:30:48 – Demo: Power profiling in Eclipse
· 0:50:10 – How to efficiently use your cellular radio
· 0:54:50 – Trepn Profiler Deep dive – Eugene Kolinko
· 0:55:24 – How to insert markers in your code to identify power spikes
· 1:00:44 – How to: perform automated testing with Trepn Profiler
· 1:14:34 – Common causes of excessive power consumption – Rick Schwartz
· 1:21:44 – Recap of power saving tips
· 1:24:47 – Qualcomm Snapdragon Performance Visualizer overview – Kevin Sapp
· 1:29:59 – What can Snapdragon Performance Visualizer do?
· 1:35:25 – Live View demo
· 1:40:29 – Adding Custom Data to Snapdragon Performance Visualizer
· 1:47:42 – Statistical profiling with Snapdragon Performance Visualizer (OProfile)
· 1:50:44 – Tracing with Snapdragon Performance Visualizer
· 1:52:11 – Profile View demo
· 2:03:40 – Qualcomm Embedded Power Monitor demo
· 2:12:30 – Graphics and gaming overview – Manish Sirdeshmukh
· 2:27:08 – OpenGL ES optimizations - Dave Astle
· 2:33:53 – Adreno software tool and SDK overview – Manish Sirdeshmukh
· 2:38:04 – Adreno profile demo - Dave Astle
Get an overview of Qualcomm Technologies, Inc.'s power and performance profiling tools, and how these tools can help you create more efficient apps. Covered topics include using profiling tools to determine whether your app exhibits behavior that causes excessive power consumption, how to resolve the top five power-related problems and more.
Watch this presentation on YouTube: https://www.youtube.com/watch?v=9Uc0qpMzfw0
Auxenta Inc.'s Nuwan Dehigaspitiya looks into the diverse aspects of Mobile Testing, including QA challenges, testing aspects and strategies, performance testing and more in this presentation
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...NITHIN S.S
In mobile app spaces, with all these evolving technologies and competitors, 𝗽𝗲𝗿𝗳𝗼𝗿𝗺𝗮𝗻𝗰𝗲 plays an important role in terms of delivering a seamless end-user experience. Improving performance has become the top priority for all global mobile app companies as it directly impacts user experience, retention rates, conversions, and ultimately revenue. Even if we deliver a brilliant feature with performance issues, people will eventually stop using those apps. As high-performing apps are user favourites, we testers should also adopt performance-centric strategies while testing mobile apps.
In this talk, you will learn about:
Basic types of mobile apps.
An overview of important performance metrics to consider.
Basics and importance of mobile app performance testing with trends and parameters.
Factors to consider while evaluating an app’s performance & ideas to prepare a performance-oriented testing strategy.
Best practices and tools to consider for providing valuable insights to stakeholders.
Quick glance at the rise of 5G and its impact in the mobile app space.
Collection of tips & tricks that makes the difference between a good app and a "wow-affect" app. Relevant to product managers and developers (including some code samples)
As presented in DroidCon Tel Aviv 2014 by:
Ran Nachmany, MobiliUp
http://il.droidcon.com
This PPT presentation will explain you how you can reduce the battery optimization for Android Phones. It show you step by step process to reduce consumption of battery while using your application
My key note speech at Droidcon 2012 promoting DT's leadership in the Smartphone Challenge initiative.
Smartphones have catapulted the distribution of mobile apps to new highs with increased usage of mobile networks.
The Smartphone challenge project goal is to optimise the interaction between devices & networks
DT understand the threat from network intensive, badly designed applications and developed developer guidelines.
DT alone cannot influence the market and we decided to leverage the support of GSMA, industry affiliates and developers themselves.
Experitest & Hexaware on a joint webinar on performance testing for mobile which highlights the need for a Performance Testing Strategy.
The session will show you how to get the most from your testing budget by using mobile testing tools that integrate functionality, performance, load, network virtualization and more in securing the quality of your mobile application.
The session will discuss:
- Today's approach towards performance testing of mobile apps
- Using cutting edge tools, solutions, and methodologies as part of your testing strategy
- A case study highlighting Hexaware’s experience in performance testing of a financial Mobile App
- Demonstration of Experitest’s SeeTest Network Virtualization solution
Speakers:
Guy Arieli, CTO, Experitest
Vinayak Gaur , Head of mobile testing practice, Hexaware Technologies
Similar to How to Lower Android Power Consumption Without Affecting Performance (20)
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Anthony Dahanne
Les Buildpacks existent depuis plus de 10 ans ! D’abord, ils étaient utilisés pour détecter et construire une application avant de la déployer sur certains PaaS. Ensuite, nous avons pu créer des images Docker (OCI) avec leur dernière génération, les Cloud Native Buildpacks (CNCF en incubation). Sont-ils une bonne alternative au Dockerfile ? Que sont les buildpacks Paketo ? Quelles communautés les soutiennent et comment ?
Venez le découvrir lors de cette session ignite
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfJay Das
With the advent of artificial intelligence or AI tools, project management processes are undergoing a transformative shift. By using tools like ChatGPT, and Bard organizations can empower their leaders and managers to plan, execute, and monitor projects more effectively.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
How to Lower Android Power Consumption Without Affecting Performance
1. How to lower the power consumption of
your app, without affecting performance
Rick Schwartz
Qualcomm Technologies, Inc.
developer.qualcomm.com
mostly-tech.com
2. About this session
•Most mobile apps do not use the processor, cellular radio
and other system resources efficiently
• This wastes power, which has a negative effect on battery
life
•It’s easy to measure power consumption. If you can
measure it, you can act on it
•Solutions to common power problems are readily available
•Better battery life = happier users
4. Why long battery life is such a challenge
Hardware specs have increased dramatically, but batteries have not
Source: Samsung.com/us website
Samsung Galaxy SIII
Samsung Galaxy S6
5. So, where does the power go?
Source: Android Power Profile for the Nexus 6 smartphone. Data provided by device
manufacture. Current converted to power
#1
#3
#2 CPU
#4
#5
#6
6. How to get a power profile for any phone
•Read up on Android Power Profiles:
https://source.android.com/devices/tech/power/index.html
•Where to find one on your device:
platform/frameworks/base/core/res/res/xml/power_profile.xml
•There’s also an app for this
•Values are displayed in current
P = I x V (battery voltage)
Power Profile app on Google Play
8. Measuring power using Trepn™ Profiler
Launch Trepn, go to Settings
and select Battery Power
Check “Acquire Wakelock to
keep the processor awake
Select an app to profile
1 2 3
Source: Trepn Profiler screenshots. Trepn is a product of Qualcomm Technologies Inc.
9. Measuring power using Trepn Profiler
Source: Trepn Profiler screenshots. Trepn is a product of Qualcomm Technologies Inc.
4 Select how to view the power data
10. Other software options are available
Android 5.0 Battery app GSam Battery Monitor Pro GameBench Power Tutor
11. If you can measure it, you can act on it
•First, measure the power of your device idle with the
screen on and off
•Next, measure the average power of your app when it’s
idle and in-use
•Compare the power consumption of your app to other
similar apps
•Try different things:
- Does code A or code B consume more power?
12. Inserting markers into your code
Trepn Profiler’s application states help identify the cause of power spikes
Step 1: Insert application state markers into your code
Step 2: Look for spikes in Trepn’s graph
view. Determine which section of code they
occur in
Source: Trepn Profiler 5.0 screenshots
Step 3: Make changes to your code, and look at the average
power readings for each state in Trepn’s Stats view
13. Reading the power consumption from the power management IC results in a strong
correlation between system resource usage and the power used
Source: Trepn Profiler 5.0 running GLBench
The advantage of direct power measurement
14. Are software power measurements accurate?
The chart shows how Trepn’s power readings compare to a Monsoon Power Monitor
Source: Qualcomm internal power measurements of a Nexus 6 running Trepn software at various screen brightness levels
15. How to perform automated testing
A simple example how this can be done
Source: Trepn Profiler 5.0 screenshot
16. Making intelligent decisions
Source: Trepn screenshots of Nexus 5 running MX Player
Video playback using S/W decoder Video playback using H/W decoder
43% less power consumedAlmost 3x more CPU load
Trepn shows how much power is saved when using hardware decoding
17. Pros and cons of software and hardware power
measurement
Software Power Measurement
• Much easier – Doesn’t require modifications to the battery or phone
• More portable – Doesn’t require a cable connection; Supports mobile use
cases
• Capable of per-rail power measurements for hardware blocks
• Not every device supports direct power measurement
Hardware Power Measurement
• More accurate - Off-target, so it doesn’t consume processor cycles
• Often provides more detailed and customizable graphs
• Misses less spikes - Capable of higher sample rates
18. Measuring per-rail power consumption
Snapdragon development tablets are available from
• The Snapdragon 805 (8084) MDP displays power for the CPU, Camera, Digital Core, GPU,
Internal Memory, LCD Backlight, SD Card and WLAN/Bluetooth
• The Snapdragon 810 (8994) MDP displays power for the CPU Cores 0-3, CPU Cores 4-7,
GPU, LCD Backlight, Front Camera, Rear Camera, System Memory, Internal Memory/SD
Card, Wi-Fi/Bluetooth, Sensors and USB
Power delta before photo taken Power delta after photo taken
Source: Trepn Profiler 5.0 screenshots
Qualcomm Snapdragon is a product of Qualcomm Technologies, Inc.
19. 1. Direct connection to the battery
contacts via mini-grabber cables
2. Using flat insulated copper tape
3 different ways to connect your device to
power measurement hardware*
3. Circuit board modification
Sources: Nexus photos taken by the authorNote: Any connection to power measurement hardware is done at your own risk
20. Power Measurement Best Practices
1. Remove your USB cable – You cannot display accurate power readings when your
mobile device is charging or connected to a computer. Tip: Use ADB over Wi-Fi
2. Make sure the CPU in the device capturing the power data stays awake
3. Minimize background processes – Open the Apps manager, go to Running and close
all remaining unneeded apps and stop all unneeded services
4. Focus on what you’re measuring – Turn off everything that is not related to what
you want to measure (e.g., Wi-Fi, Mobile networks, Location (GPS), Bluetooth,
Google Now, etc.)
5. Minimize the impact of the screen – The screen is the biggest consumer of power.
Turn the brightness down to the minimum possible level or turn it off
6. More power measurement Best Practices are available here
24. Many apps don’t use the cellular radio efficiently
Multiple apps acting independently creates
network signaling congestion
• Apps pull notifications, updates and message users -
- even when a phone is not being used
• Most news and social networking apps wake up your
device at least four times an hour
Source: The Smartphone Challenge: Signaling Congestion and Power Consumption - Gerardo Giaretta - Qualcomm
25. Why is this a problem?
• A dormant cellular radio consumes
about 10-12 mA
• When data is sent or received, the
radio comes up and goes into an
active state, consuming 250-350mA
• When not sending data, the radio
drops down to idle, but still
consumes about 30mA to 150mA
• After a timeout of 8 to 15 seconds,
the radio finally goes back to a
dormant state
Source: Qualcomm Technologies Inc. internal testing
26. Is your app is using the cellular radio efficiently?
Use AT&T’s Application Resource Optimizer (ARO )to find out
You can download it here: https://developer.att.com/application-resource-optimizer/get-aro
Source: Screen image used with permission
27. What else can you do with ARO?
• Collects traces from a test device or Android emulators
• Provides detailed recommendations how to fix problems
• Open-source code can be integrated into automated test suites
Source: Screen image used with permission
29. Real world cellular radio power consumption
1. Radio goes from idle to transmitting
- Power increase >800mW
2. Radio back to idle
- Power decrease >800mW
3. Radio goes from idle to transmitting
- Power increase >1200mW
4. Radio goes from idle to transmitting
- Power increase >600mW
5. Radio goes from idle to transmitting
- Power increase <500mW
6. Radio goes from idle to transmitting
- Power increase <500mW
7. Radio goes from idle to dormant
- Power decrease ~600mW
8. Radio goes from idle to transmitting
- Power decrease ~500mW
1 2 3 4 5 6 7 8
Source: Qualcomm Technologies Inc. internal testing using Trepn Profiler to graph the
mobile data states of a Nexus 7 with LTE accessing data from Google Drive
30. Charts make it easier to correlate actions with
system resource consumption
Source: Trepn plug-in for Eclipse running on an active Samsung Galaxy Note 3
31. Don’t forget to check idle behavior
All 4 cores are
active here
GPU active here
250mA to 350mA of
power is used here Even though the cellular radio is idle, it still consumers up to 150mA of power
GPS active here
Wi-Fi active
here
Source: Trepn plug-in for Eclipse running on an idle Samsung Galaxy Note 3
32. Make changes and see the impact
Mobile data transmitted before Google Now turned off
Mobile data transmitted after Google Now turned off
Google Search app
Source: Trepn plug-in screen excerpts
Small changes can make a big difference in cellular radio usage
34. How to efficiently use the cellular radio
1. Connect less often – After you transmit the radio stays on for 10+ sec1
2. Push, don’t poll – Send packets and wait to see if they respond. Use
the Google Cloud Messaging system (GCM) API instead. Have it send you
data when things have changed. Specify how often items are delivered2
3. Don’t continuously scan1
1. Create timeouts appropriately when scanning for Wi-Fi networks or GPS signals
4. Offer ad-free versions – Apps without ads connect to the network much
less often
5. Use analytics wisely1
1. Capture data locally and group transmissions to your server. Extend the time
between transmissions
1 Source: AT&T “Tips to Increase Battery Life Handout” from AnDevCon 2013
2 Source: Google Developer Advocate Colt McAnlis at from “Efficient battery use on mobile” at “Perf Like a Pirate.”
35. Analytic and ad services vary greatly
Source: Data provided by Crittercism
Error rates and response times by top services
Findings
• Google Analytics has lowest error
rate (0.1%); error rate is percent of
errors per number of service calls
made
• Of top public services, Google
Analytics has lowest average latency
Takeaway
• Even top services like Google
Analytics and Facebook experience
latency and error rates
• Teams must manage every aspect of
mobile app performance, including
third-party services
36. Follow the leader(s)
BBC News App (23 SDKs) BBC website (38 SDKs)
Source: Data provided by MixRank
See which SDKs popular apps and sites use
Apache Commons ChartBeat
Simple Logging Façade for Java Facebook Open Graph
Android Volley Adobe Analytics/Omniture
OpenUDID Bing Webmaster Tools
Omniture Effective Measure
17,289 7,87329,386 46,675
12,475 4,47225,905 38,380
9,166 5,1414,285 13,451
3,296 1,3996,657 9,953
1,196 396794 1,990
Current installs Uninstalls Total installs Developers
Current installs Uninstalls Total installs Developers
Current installs Uninstalls Total installs Developers
Current installs Uninstalls Total installs Developers
Current installs Uninstalls Total installs Developers
36,641 189K Dec 4, 2013
5,880,253 402K
224,454 1M
813,284 109
8,735 975K
Websites Times Seen First Seen Last Seen
Websites Times Seen First Seen Last Seen
Websites Times Seen First Seen Last Seen
Websites Times Seen First Seen Last Seen
Websites Times Seen First Seen Last Seen
May 12, 2015
Jan 29, 2012 May 12, 2015
Jan 29, 2012 Apr 20, 2015
Apr 10, 2015
Apr 10, 2015
Jan 29, 2012
Jan 29, 2012
37. How to efficiently use the cellular radio
6. Don’t continuously stream – Download streams in chunks1
7. Use the JobScheduler APIs that are part of Android 5.02
1 Source: AT&T “Tips to Increase Battery Life Handout” from AnDevCon 2013
2 Google I/O 2014 - Introduction to Project Volta by (Meghan Desai and Matthew Jay Williams)
Before
After
38. Bundling traffic reduces overhead-to-data ratio
Source: The Smartphone Challenge: Signaling Congestion and Power Consumption - Gerardo Giaretta - Qualcomm
39. Use Battery Historian to view wakelocks & radio usage
One-time setup in order to run Battery Historian
1. Download and install Python 2.7 (if it’s not already installed)
2. Download battery-historian from GitHub
3. Extract “historian.py” from the zip file and copy it to the Python2.7 directory
Running Battery Historian
Type the following into the command prompt after connecting to an Android 5.x device:
40. How to efficiently use the cellular radio
6. Wait for the right connection – Avoid sending packets on slow
cellular connections. Wait until you are on Wi-Fi, if possible.
Some apps provide users with
the option to only upload when
charging. Choice is good.
Source: Microsoft OneDrive screen capture
41. Why should you wait for Wi-Fi?
Source: Qualcomm tests. Monsoon power measurement from a download of 3 apps
over a 1-2 bar 3G/4G cellular connection using a Verizon Galaxy Note 3
More power is consumed
• Power before download 723 mW
• Power during download 3279mW
• Radio power use: ~2556mW
• Downloading large files over
Wi-Fi consumes less than half
the power
• Estimated battery life dropped
from 15.8 hours to 5.1 hours
Mobile data wasted: 67.68MB
Time wasted: 11 minutes
Downloading data over a cellular radio with a
weak signal requires more power
43. How to tell if your app keeps the processor from
going to sleep?
Using Wakelock Detector (WLD) to identify processor sleep problems
CPU Wakelocks Wakeup Triggers
• A recent study found that 23% of
apps have problems with
wakelocks. This can drain the
battery of an inactive handset in as
little as 5 hours
• Wakelocks do have a place, because
your processor goes to sleep when
it’s idle. Apps need wakelocks for
alarms, GPS location and to wake
up the processor to check for new
messages.
44. An easy way to spot excess resource consumption
Processor stats can be viewed by going to Settings > Battery and
selecting your application
Source: Android 5.0 battery stats screenshots
If your app is not in the foreground, there should be a good reason why it’s keeping the processor awake and consuming data
45. How to avoid keeping the processor awake
1. Do not acquire PowerManager.Wakelocks unless you really need them
Battery life will be significantly affected by the use of this API
• Use the minimum levels needed
• Release wakelocks as soon as possible
2. Consider using AlarmManager in situations when you want to have your
application code run at a specific time
• Beginning with KitKat, the OS shifts alarms to minimize wakeups and
battery usage
3. For normal timeouts, it’s easier and more efficient to use Handler
46. Does your app manage the display in a power
efficient manner?
47. Managing display power efficiently
1. Full wakelocks keep your screen from turning off.
To keep the display lit when your app is in the
foreground, use FLAG_KEEP_SCREEN_ON
2. There is a direct correlation between screen
brightness and power consumption
3. Offer a dark theme option. Gray or black
backgrounds consume less than half the power of
a white background
Source: Qualcomm average power measurements using a Monsoon Power Monitor of the Google New & Weather app on a Samsung Galaxy Note 3 with the display at 50% screen brightness
Source: Qualcomm tests of Nexus 6 average power consumption using a Monsoon Power monitor
49. Some apps don’t use resources efficiently
Source: Trepn Profiler 5.0 screenshots
50. Is your app CPU bound or GPU bound?
Source: Trepn Profiler 5.0 screenshots
51. Does it use all available CPU cores?
Source: Trepn Profiler 5.0 screenshots
52. Heterogeneous computing is key
Run the right task on the right processing engine
Source: Qualcomm internal power tests using QEPM software eQualcomm SeeMore demo using the MARE SDK
a product of Qualcomm Technologies, Inc.
53. Qualcomm Multicore Asynchronous Runtime
Environment
MARE is a developer programming library, API and
runtime system for heterogeneous programming
55. Benefits of offloading to DSP
• Extends music playback time to 60 hours. A 50% increase.
• When batching sensor data, 8 hours of sleep tracking only
uses 10 to 20% of available battery life
• Running FastCV™ facial detection on DSP instead of the CPU
uses 32% less power
1. Audio playback done using a Nexus 5 using Bluetooth headphones and the display off.
2. Sensor batching done on Samsung Gear Live with Sleep as Android app
3. Power measured at the device battery. Source: Qualcomm Technologies Inc. internal measurements
57. How to save power when using the GPS
1. Make sure you don’t take a GPS fix when
it’s not needed
2. Use coarse GPS fixes when possible,
because they require less power
3. Let LocationManager find the best provider
4. Have a timeout if you can’t find a satellite
5. Disable GPS when your app sleeps to save
power
6. Make it easy for users to disable location
tracking without crippling their device
Source: Android 5.0 Location Settings on Samsung device
58. Perf Matters Too!
Use tools like these to confirm your perf hasn’t changed
•ARM Streamline, GameBench, Adreno Profiler, Trepn
Profiler, PerfMon, Intel INDE or Qualcomm® Snapdragon™
Profiler
Real-time or post-capture viewing
and analysis of a wide range of
system and app level power,
performance, thermal and
network usage metrics
Coming Soon: Snapdragon Profiler
Qualcomm Snapdragon and Qualcomm Adreno are products of Qualcomm Technologies, Inc.
59. Recap of power saving tips
• Use wakelocks only when necessary
• Close TCP sockets when done. Otherwise, you unnecessarily bring up the network just
to tear down. This simple fix can reduce network power up to 20%
• Group network activity when possible
• Keep performance headroom for additional power savings. Saves significantly in overall
system power.
- Optimize your app to run at 60fps, but then frame-rate limit it to lower rate (ideally
30fps). This cuts GPU, CPU and memory utilization and hence related power by 50%.
Also guarantees smooth consistent UX flow at same framerate
• Avoid rendering at full native display resolutions. This saves GPU power.
- Test rendering applications at lower resolutions
- Games should ideally render at 1080p or lower resolutions natively
61. Helpful mobile power-related links
• Software power measurement best practices – Rick Schwartz
• Hardware power measurement best practices – Rick Schwartz
• Battery Drain and Networking – Colt McAnlis
• What These Apps Did May Shock You - Doug Sillars
• Understanding Battery Drain on Android – Colt McAnlis
• How to power profile an app using hardware – Rick Schwartz
• Battery Drain and WakeLocks – Colt McAnlis
• AT&T Application Resource Optimizer demo - Doug Sillars
• Monsoon Power Monitor - Tips & Tricks – Rick Schwartz