Presentation is loading. Please wait.

Presentation is loading. Please wait.

Informed Mobile Prefetching T.J. Giuli † Christopher Peplin † David Watson †‡ Brett Higgins Jason Flinn Brian Noble †‡

Similar presentations


Presentation on theme: "Informed Mobile Prefetching T.J. Giuli † Christopher Peplin † David Watson †‡ Brett Higgins Jason Flinn Brian Noble †‡"— Presentation transcript:

1 Informed Mobile Prefetching T.J. Giuli † Christopher Peplin † David Watson †‡ Brett Higgins Jason Flinn Brian Noble †‡

2 Prefetching + Mobile Networks Brett Higgins 2 Time, distance $#&*! ! Phone activity Read article Phone activity Slow fetch Prefetch Article loads instantly Sleeping

3 A Tale of Two Apps Brett Higgins 3 The Data HogThe Data Miser

4 A Tale of Two Apps Brett Higgins 4 Four hours later: Battery died hours ago Fetch time: INF Four hours later: Battery: 10% Fetch time: many seconds Scenario: 50% battery 4 hours until recharge We must conserve energy! (…no big surprise there.) ✖

5 A Tale of Two Apps Brett Higgins 5 One hour later: Battery: 5% (charging) Fetch time: << 1 second One hour later: Battery: 40% (charging) Fetch time: many seconds Scenario: 50% battery 1 hour until recharge It’s okay to spend resources… …if it will benefit the user. (And if we can spare the resources.) ✖

6 One more scenario: Reality The only scenario that matters Network conditions change rapidly User/app behavior changes too No one strategy is always best Even for two scenarios Mobile prefetching is complex. Must consider: Network availability/quality Network energy cost model Overall resource spending Time until resource replenishment Observed usefulness of prefetching… But the benefits could be great! Brett Higgins 6

7 So, who should deal with it? Users? Monitor resources, networks Adjust behavior Fiddle with app settings Brett Higgins 7 Developers? Monitor resources, networks Observe user behavior Adjust prefetch strategy

8 Informed Mobile Prefetching System support for prefetching on mobile networks Applications specify hints What & how to prefetch System decides when to prefetch Monitors network availability and quality Tracks resource spending over time Adjusts the importance of energy/data conservation Tracks how often the user consumes hinted data Brett Higgins 8

9 Roadmap Motivation IMP Design & Implementation Interface Prefetch decision algorithm Applications & Evaluation Summary Brett Higgins 9

10 IMP Interface App passes a Fetcher Callback to fetch data Size of data item Optional prefetch class IMP returns a Future Handle for future access get() invokes app fetch Intentional Networking Simple use of multiple networks Prioritize FG traffic over prefetches Application IMP Intentional Networking 10 Brett Higgins prefetch() get() fetch()

11 How to decide when to prefetch? Core: cost/benefit analysis Inspired by TIP (SOSP ‘95) Benefit: time savings Cost: energy, cellular data Prefetch when: Benefit > cost How to calculate? How to compare? Brett Higgins 11 HintsIMP Benefit Cost

12 How to decide when to prefetch? Network measurements Bandwidth, RTT, availability Benefit = future fetch time Cost = energy + data PowerTutor power model (CODES+ISSS ‘10) (Current cost) – (future cost) Future depends on user How often is data used? Brett Higgins 12 HintsIMP Benefit Cost Observations: Bandwidth RTT Power state

13 How to decide when to prefetch? API lets us track accuracy Fraction of hinted data used “Used” = get() “Not used” = cancel() Use accuracy in calculations e.g. benefit = time × accuracy Per-class accuracy estimate If app specifies classes Brett Higgins 13 HintsIMP Benefit Cost Observations: Bandwidth RTT Power state Accuracy of prefetch hints

14 How to decide when to prefetch? Budgeted resources Fixed, replenishable capacity Time period to spend Approach: Price is Right™ Spend close to budget But not over budget! Goal-directed adaptation Odyssey (TOCS ‘04) Measure resource spending Adjust resource importance Brett Higgins 14 HintsIMP Benefit Cost User Time Energy, Data Observations: Bandwidth RTT Power state Accuracy of prefetch hints

15 How to decide when to prefetch? Re-evaluation Outcome may change later Network conditions change Resource spending slows Periodically re-run analysis Batching Can amortize tail energy cost Evaluate all batch sizes Prefetch when benefit > cost For any batch size Brett Higgins 15 HintsIMP Benefit Cost User Time Energy, Data Observations: Bandwidth RTT Power state Accuracy of prefetch hints New batch, or wait a bit

16 Roadmap Motivation IMP Design & Implementation Interface Prefetch decision algorithm Applications & Evaluation Summary Brett Higgins 16

17 Applications K9 email client Popular Android email client Supported transparently via IMP-aware IMAP proxy Default: prefetch emails over 32KB OpenIntents News Reader Open-source Android Atom/RSS feed reader Added IMP support code Default: no article text/media prefetching (summary only) Brett Higgins 17

18 Evaluation: Methodology Gathered network trace in a moving vehicle Sprint 3G & open WiFi BW up/down, RTT Replayed in lab (trace map here) 18 Brett Higgins

19 Evaluation: Comparison Strategies Never prefetch Prefetch items under a size threshold App-specific threshold value Prefetch only over WiFi Always prefetch Common heuristics; simple to implement 19 Brett Higgins

20 Evaluation Results: Email 20 Brett Higgins

21 Evaluation Results: Email All resource goals met Much smaller fetch time Within 300ms of “always” 2-8x less than others Walking trace on campus Similar results 21 Brett Higgins

22 Evaluation Results: News 22 Brett Higgins

23 Evaluation Results: News 23 Brett Higgins All resource goals met Smaller fetch time Whenever other strategies meet the goals Walking trace on campus Similar results* * …with one exception.

24 Evaluation Results: News 24 Brett Higgins

25 Evaluation Results: News 25 Brett Higgins Effect of prefetch classes Lower average fetch time Meet goals more reliably Small developer effort Significant improvement

26 Summary Informed Mobile Prefetching App supplies prefetch hints System decides when to prefetch Manages budgeted resources “Price is Right” approach Tracks prefetch accuracy Avoids wasteful prefetching Meets all resource goals Improves average fetch time in most cases Compared to simple strategies that meet same goals Brett Higgins 26


Download ppt "Informed Mobile Prefetching T.J. Giuli † Christopher Peplin † David Watson †‡ Brett Higgins Jason Flinn Brian Noble †‡"

Similar presentations


Ads by Google