Slide 1

Slide 1 text

Reducing User-Perceived Latency in Mobile Applications via Prefetching and Caching Yixue Zhao Advisor: Nenad Medvidović Computing Innovation Fellow (CIFellow) University of Massachusetts Amherst

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Latency!

Slide 5

Slide 5 text

Latency Problem Angry Users Sales Loss 5

Slide 6

Slide 6 text

Main Cause: Network Transfer Network round trip Mobile App Remote Server Main cause of user-perceived latency is network transfer since mobile apps spend most time fetching data from remote servers. [Ravindranath et al. OSDI’12] 6

Slide 7

Slide 7 text

Effective Solution! Problem: Annoying loading wheel L Solution: Prefetching and Caching 7

Slide 8

Slide 8 text

Prefetching and Caching local cache on the phone immediate response! 8

Slide 9

Slide 9 text

Prefetching and Caching 9 ? But how?

Slide 10

Slide 10 text

10 Literature Study Techniques Testing

Slide 11

Slide 11 text

1. Two categories Literature Study Techniques Testing 11

Slide 12

Slide 12 text

Two Categories q Content-based q No existing solution q Call for novel idea q History-based q Applicable existing solution q Adapt to mobile domain 12

Slide 13

Slide 13 text

q Content-based q No existing solution q Call for novel idea q History-based q Applicable existing solution q Adapt to mobile domain 13 Techniques Two Categories

Slide 14

Slide 14 text

14 2. Is it a good idea? Literature Study Techniques Testing

Slide 15

Slide 15 text

15 Literature Study Techniques Testing 2. Is it a good idea?

Slide 16

Slide 16 text

16 3a. Content-based (first work) Literature Study Techniques Testing

Slide 17

Slide 17 text

Content-based: PALOMA Key Insights q App’s code has all we need q “User think time” provides opportunities 17

Slide 18

Slide 18 text

PALOMA at a High Level Code Analysis App Rewriting Optimized App 18

Slide 19

Slide 19 text

PALOMA at a High Level 19 Automatic No other information required 99% latency reduction! Code Analysis App Rewriting Optimized App

Slide 20

Slide 20 text

20 Literature Study Techniques Testing 3b. History-based (practical solution)

Slide 21

Slide 21 text

History-based: HiPHarness 21 Existing Solutions HiPHarness q Large prediction models q Big cost q Privacy issues

Slide 22

Slide 22 text

History-based: HiPHarness 22 Existing Solutions HiPHarness q Large prediction models q Big cost q Privacy issues q Small prediction models! q Good training data q Enough training data

Slide 23

Slide 23 text

History-based: HiPHarness 23 Existing Solutions HiPHarness q Large prediction models q Big cost q Privacy issues q Small prediction models! q Good training data q Enough training data 94% smaller!

Slide 24

Slide 24 text

HiPHarness Dataset q 10,000+ mobile users q 15+ million network requests q 7+ million prediction models 24

Slide 25

Slide 25 text

q Small prediction models work great! q Win-win (reduce size AND improve accuracy) q Challenged prior conclusion q Re-opened this area HiPHarness Takeaways 25 Less is More!

Slide 26

Slide 26 text

26 Literature Study Techniques Testing 4. Which is better?

Slide 27

Slide 27 text

Challenges in Testing q Testing prefetching and caching techniques is very expensive q Require real-user traces (i.e., “usage-based test”) q hire participants q obtain permission q provide guidelines q provide compensation q … 27

Slide 28

Slide 28 text

Challenges in Testing q Testing prefetching and caching techniques is very expensive q Require real-user traces (i.e., “usage-based test”) q hire participants q obtain permission q provide guidelines q provide compensation q … 28 I need this!

Slide 29

Slide 29 text

Usage-based Test Background q Emerging research area in Software Testing (since 2018) q State-of-the-art research: test-reuse techniques 29

Slide 30

Slide 30 text

FrUITeR at a High Level q Goal: find out who’s better q Reproduce existing techniques q Establish standard pipeline q Fair comparison in the same way A Framework for Evaluating UI Test Reuse 30

Slide 31

Slide 31 text

Challenges in Practice Discuss with authors 31 Study implementation Modify implementation Establish benchmark Construct ground truths

Slide 32

Slide 32 text

Reproducibility Crisis 32 Common Theme q “It’s hard to (re)use other research tools” q “They don’t have documentation” q “It’s hard to run a research tool on my own apps” q …

Slide 33

Slide 33 text

33 FrUITeR’s Open Science Contribution FrUITeR’s Website: https://felicitia.github.io/FrUITeR/

Slide 34

Slide 34 text

v Prefetching & caching is good idea J encouraged more techniques Recap Dissertation Contributions 34

Slide 35

Slide 35 text

v Prefetching & caching is good idea J encouraged more techniques v First content-based (PALOMA) inspired follow-up work Recap Dissertation Contributions 35

Slide 36

Slide 36 text

v Prefetching & caching is good idea J encouraged more techniques v First content-based (PALOMA) inspired follow-up work v Make history-based practical (HiPHarness) challenged prior conclusion & re-opened this area Recap Dissertation Contributions 36

Slide 37

Slide 37 text

v Prefetching & caching is good idea J encouraged more techniques v First content-based (PALOMA) inspired follow-up work v Make history-based practical (HiPHarness) challenged prior conclusion & re-opened this area v Test which is better (FrUITeR) set standards for a fair playground Recap Dissertation Contributions 37

Slide 38

Slide 38 text

4. Which is better? (FrUITeR) Dissertation & Beyond Mobile-App Performance 38 Software Testing Open Science

Slide 39

Slide 39 text

Dissertation Publications v Literature Review & Empirical Study [ASE 2018] v Prefetching & Caching Techniques [MOBILESoft 2017 SRC ICSE 2018, MOBILESoft 2021] v Software Testing [ESEC/FSE 2020] v Open Science [MOBILESoft 2019 Visions, ICSE 2019 Doctoral Symposium] 39

Slide 40

Slide 40 text

Dissertation Publications v Literature Review & Empirical Study [ASE 2018] v Prefetching & Caching Techniques [MOBILESoft 2017 SRC ICSE 2018, MOBILESoft 2021] v Software Testing [ESEC/FSE 2020] v Open Science [MOBILESoft 2019 Visions, ICSE 2019 Doctoral Symposium] 40 https://tinyurl.com/yixuedissertation https://tinyurl.com/yixuetalks

Slide 41

Slide 41 text

Thank you! 41