Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fast App Launching for Mobile Devices Using Predictive User Context Tingxin Yan University of Massachusetts Amherst David Chu Microsoft Research Deepak.

Similar presentations


Presentation on theme: "Fast App Launching for Mobile Devices Using Predictive User Context Tingxin Yan University of Massachusetts Amherst David Chu Microsoft Research Deepak."— Presentation transcript:

1 Fast App Launching for Mobile Devices Using Predictive User Context Tingxin Yan University of Massachusetts Amherst David Chu Microsoft Research Deepak Ganesan University of Massachusetts Amherst Aman Kansal Microsoft Research Jie Liu Microsoft Research 1 The Peregrine Falcon is renowned for its speed, reaching over 322 km/h (200 mph) during its characteristic hunting stoop (high speed dive), making it the fastest member of the animal kingdom. MobiSys 2012 Low Wood Bay, Lake District, UK falcon

2 2 Mobile Apps… measured on Samsung Focus Windows Phone Top Apps in Marketplace Average loading time > 12s Loading Slowly

3 Slow Network Content Fetching 3 NewsSocial measured on iPhone 3GS Loading time > 10s in 3G

4 4 App Prelaunch with Context Challenges and Approaches What is Prelaunch? Prelaunch: Schedule an app to run before the user launches it Which app to prelaunch? Context clues indicate predictable app usage patterns Data insights shed light on informative context (3) Context clues indicate predictable app usage patterns Data insights shed light on informative context (3) At what cost and benefit? Cost: energy, memory Benefit: latency reduction Problem formulation efficiently provides optimal solution Cost: energy, memory Benefit: latency reduction Problem formulation efficiently provides optimal solution Requiring what systems support? FALCONs scheduling and memory management complement kernels Windows Phone OS mod prototype implementation FALCONs scheduling and memory management complement kernels Windows Phone OS mod prototype implementation inference optimization systems

5 5 Trigger Context Session Time News Game TriggerFollowers most popular triggers overallmost popular triggers for Angry Birds Trigger Context: given a trigger app, identify most likely follower apps [interpretation] Interruptions lead us to habitual routines [interpretation] Interruptions lead us to habitual routines

6 6 Location Context Cal Twitter Calendar Twitter Game Facebook Twitter Facebook Location Context: given a location (cluster id), identify most likely apps Productivity Work Social Outdoors Social Outdoors [interpretation] What we are doing depends on Where we are [interpretation] What we are doing depends on Where we are

7 7 Burst Context How long are bursts? Burst window Days Burst Context: detect and predict whether an app is bursting Apps exhibit bursts of popularity [interpretation] We get bored of stuff [interpretation] We get bored of stuff

8 8 Decision Engine, Step 1: Likelihood Estimation App Likelihood Estimation: Conditional probability on Likelihood Estimates used as ranking metric… baseline trigger +location +burst better Context: Trigger, Location, Burst Context: Trigger, Location, Burst

9 9 Decision Engine, Step 2: Cost-Benefit Analysis Likelihood Estimates Maximize Latency Reduction Subject to energy budget (e.g. 2%) Maximize Latency Reduction Subject to energy budget (e.g. 2%) Optimization Problem Knapsack Problem Top-K Greedy Approximation Knapsack Problem Top-K Greedy Approximation Potential Benefit: Latency reduction Potential Cost: Energy wasted Potential Cost: Energy wasted

10 Runtime Example 10 Phone SMS Angry Birds Weather Memory TriggerFollowerCost/Benefit Rank SMSWordsWithFriends1 SMSFacebook2 SMSAngryBirds3 SMSNeedForSpeed4 SMSTwitter5 Apps Current Location and Bursting WordsWithFriends AngryBirds Facebook NeedForSpeed … WordsW Friends Facebook Trigger Prelaunched Followers Decision Engine Energy Budget

11 11 FALCON Architecture & Prototype Date/Time Apps Used Geo Coords Context Source Manager … … Dispatcher Feature Extractors Decision Engine Launch Predictor Server-based Model Trainer Model Trainer Proc Tracker Kernel Memory Manager (not FALCON) … App1 App2 AppN User Kernel FALCON components shown Context Trigger Location Burst Context Trigger Location Burst Inference Cost-Benefit Analysis Inference Cost-Benefit Analysis FALCON UI Windows Phone 7.5 OS mod 2MB main memory; negligible processing & energy overhead see paper for details

12 12 Evaluation: FALCON vs. LRU Reduced from 9s to 6s Results for Games & Entertainment apps similar results for all apps Results for Games & Entertainment apps similar results for all apps

13 13 Evaluation: Time-Since-Last-Update Time-Since-Last-Update (minutes) Reduced from 30min to 3min FALCON outperforms polling most of the time FALCON Polling (30 mins) No Prefetching

14 14 Evaluation: Cost-Benefit Analysis 6s latency reduction for 2% energy budget

15 15 Conclusion FALCON: Fast App Launching with Context Which app to prelaunch? Context clues indicate predictable app usage patterns Data insights shed light on informative context Context clues indicate predictable app usage patterns Data insights shed light on informative context At what cost and benefit? Cost: energy, memory Benefit: latency reduction Problem formulation efficiently provides optimal solution Cost: energy, memory Benefit: latency reduction Problem formulation efficiently provides optimal solution Requiring what systems support? FALCONs scheduling and memory management complement kernels Windows Phone OS mod prototype implementation FALCONs scheduling and memory management complement kernels Windows Phone OS mod prototype implementation Insightful Context: Trigger, Location, Burst Cost-Benefit Decision Engine (see paper) inference optimization systems

16 Backup Slides 16

17 Evaluation: Micro-benchmarks 17 benefit: latency reduction if predictions always right cost: energy expenditure if predictions always wrong Popular & 1st Party Apps

18 Launch Predictor Bootstrap & Training 18

19 Context Acquisition Cost App History is free Trigger Context Burst Context Location can be cheap Coarse-grained location is cheap (base station id, Wi-Fi AP id) Location Service cache amortizes fine-grained location cost across apps 19


Download ppt "Fast App Launching for Mobile Devices Using Predictive User Context Tingxin Yan University of Massachusetts Amherst David Chu Microsoft Research Deepak."

Similar presentations


Ads by Google