scispace - formally typeset
Search or ask a question
Author

Shuhui Zhang

Bio: Shuhui Zhang is an academic researcher from Peking University. The author has contributed to research in topics: Cache pollution & Cache. The author has an hindex of 1, co-authored 2 publications receiving 37 citations.

Papers
More filters
Proceedings ArticleDOI
18 May 2015
TL;DR: This paper builds a new cache analysis model and study the upper bound of how high percentage of resources could potentially be cached and how effective the caching works in practice, and identifies two major problems -- Redundant Transfer and Miscached Resource, which lead to unsatisfactory cache performance.
Abstract: The Web browser is a killer app on mobile devices such as smartphones. However, the user experience of mobile Web browsing is undesirable because of the slow resource loading. To improve the performance of Web resource loading, caching has been adopted as a key mechanism. However, the existing passive measurement studies cannot comprehensively characterize the performance of mobile Web caching. For example, most of these studies mainly focus on client-side implementations but not server-side configurations, suffer from biased user behaviors, and fail to study "miscached" resources. To address these issues, in this paper, we present a proactive approach for a comprehensive measurement study on mobile Web cache performance. The key idea of our approach is to proactively crawl resources from hundreds of websites periodically with a fine-grained time interval. Thus, we are able to uncover the resource update history and cache configurations at the server side, and analyze the cache performance in various time granularities. Based on our collected data, we build a new cache analysis model and study the upper bound of how high percentage of resources could potentially be cached and how effective the caching works in practice. We report detailed analysis results of different websites and various types of Web resources, and identify the problems caused by unsatisfactory cache performance. In particular, we identify two major problems -- Redundant Transfer and Miscached Resource, which lead to unsatisfactory cache performance. We investigate three main root causes: Same Content, Heuristic Expiration, and Conservative Expiration Time, and discuss what mobile Web developers can do to mitigate those problems.

42 citations

Proceedings ArticleDOI
17 Nov 2014
TL;DR: The results show that mobile Web cache is not so efficient, and redundant transfers are always there to waste data traffic and energy consumption no matter the client support is perfect or not.
Abstract: Web application is a key app on mobile devices. However, the performance of mobile Web applications is known to be poor. Resource loading is a key factor influencing Web applications performance. Cache is an effective mechanism to accelerate resource loading by enabling to access resources directly from local storage. In this paper, we make a quantitative study to characterize how mobile Web applications leverage cache to improve its performance. The results show that mobile Web cache is not so efficient. On one hand, redundant transfers are always there to waste data traffic and energy consumption no matter the client support is perfect or not. On the other hand, changed resources are not replaced from cache in time, leading to incorrect functions.

2 citations


Cited by
More filters
Journal ArticleDOI
Gang Huang1, Xuanzhe Liu1, Yun Ma1, Xuan Lu1, Ying Zhang1, Yingfei Xiong1 
TL;DR: This position article describes an Internetware-oriented approach to designing, developing, and deploying situational mobile Web apps, by synthesizing the resources and services of mobile and cloud using a novel Service-Model-View-Controller software model.
Abstract: Mobile Web applications (a.k.a., Web apps) stand for an important trend for next-generation Internet-based software. Currently popular mobile Web apps need to be adapted to various and ever-changing contexts and personalized user requirements. Based on our over-decade research experiences and practice on the Internetware paradigm, this position article describes an Internetware-oriented approach to designing, developing, and deploying situational mobile Web apps, by synthesizing the resources and services of mobile and cloud. Guided by a novel Service-Model-View-Controller (SMVC) software model, a mobile Web app is organized into a well-defined structure that facilitates adaptation including online/offline data access, computation offloading, user interface optimization, hybrid composition, etc. We provide efficient runtime support spanning mobile and cloud to make mobile Web apps more flexibly adaptive. The proof-of-concept evaluation demonstrates that our approach can benefit end-users with optimized user experience of mobile Web apps.

70 citations

Proceedings ArticleDOI
23 Oct 2015
TL;DR: This paper presents MemoizeIt, a dynamic analysis that identifies methods that repeatedly perform the same computation, a technique called memoization, which leads to statistically significant speedups by factors between 1.04x and 12.93x.
Abstract: Performance bugs are a prevalent problem and recent research proposes various techniques to identify such bugs. This paper addresses a kind of performance problem that often is easy to address but difficult to identify: redundant computations that may be avoided by reusing already computed results for particular inputs, a technique called memoization. To help developers find and use memoization opportunities, we present MemoizeIt, a dynamic analysis that identifies methods that repeatedly perform the same computation. The key idea is to compare inputs and outputs of method calls in a scalable yet precise way. To avoid the overhead of comparing objects at all method invocations in detail, MemoizeIt first compares objects without following any references and iteratively increases the depth of exploration while shrinking the set of considered methods. After each iteration, the approach ignores methods that cannot benefit from memoization, allowing it to analyze calls to the remaining methods in more detail. For every memoization opportunity that MemoizeIt detects, it provides hints on how to implement memoization, making it easy for the developer to fix the performance issue. Applying MemoizeIt to eleven real-world Java programs reveals nine profitable memoization opportunities, most of which are missed by traditional CPU time profilers, conservative compiler optimizations, and other existing approaches for finding performance bugs. Adding memoization as proposed by MemoizeIt leads to statistically significant speedups by factors between 1.04x and 12.93x.

70 citations

Proceedings ArticleDOI
Duc Hoang Bui1, Yunxin Liu2, Hyosu Kim1, Insik Shin1, Feng Zhao2 
07 Sep 2015
TL;DR: This work aims to reduce the energy consumed to load web pages on smartphones, preferably without increasing page load time and compromising user experience, and derives general design principles for energy-efficient web page loading, and applies these principles to the open-source Chromium browser.
Abstract: Web browsing is a key application on mobile devices. However, mobile browsers are largely optimized for performance, imposing a significant burden on power-hungry mobile devices. In this work, we aim to reduce the energy consumed to load web pages on smartphones, preferably without increasing page load time and compromising user experience. To this end, we first study the internals of web page loading on smartphones and identify its energy-inefficient behaviors. Based on our findings, we then derive general design principles for energy-efficient web page loading, and apply these principles to the open-source Chromium browser and implement our techniques on commercial smartphones. Experimental results show that our techniques are able to achieve a 24.4% average system energy saving for Chromium on a latest-generation big.LITTLE smartphone using WiFi (a 22.5% saving when using 3G), while not increasing average page load time. We also show that our proposed techniques can bring a 10.5% system energy saving on average with a small 1.69\% increase in page load time for mobile Firefox web browser. User study results indicate that such a small increase in page load time is hardly perceivable.

65 citations

Journal ArticleDOI
TL;DR: A proactive approach to making a comprehensive measurement study on client-side cache performance of mobile web browsing by proactively crawling resources from hundreds of websites periodically with a fine-grained time interval, which identifies two major problems - Redundant Transfer and Miscached Resource, which lead to unsatisfactory cache performance.
Abstract: The web browser is one of the most significant applications on mobile devices such as smartphones. However, the user experience of mobile web browsing is undesirable because of the slow resource loading. To improve the performance of web resource loading, client-side cache has been adopted as a key mechanism. However, the existing passive measurement studies cannot comprehensively characterize the “ client-side ” cache performance of mobile web browsing. For example, most of these studies mainly focus on client-side implementations but not server-side configurations, suffer from biased user behaviors, and fail to study “ miscached ” resources. To address these issues, in this article, we present a proactive approach to making a comprehensive measurement study on client-side cache performance. The key idea of our approach is to proactively crawl resources from hundreds of websites periodically with a fine-grained time interval. Thus, we are able to uncover the resource update history and cache configurations at the server side, and analyze the cache performance in various time granularities. Based on our collected data, we build a new cache analysis model and study the upper bound of how high percentage of resources could potentially be cached and how effectively the caching works in practice. We report detailed analysis results of different websites and various types of web resources, and identify the problems caused by unsatisfactory cache performance. In particular, we identify two major problems— Redundant Transfer and Miscached Resource , which lead to unsatisfactory cache performance. We investigate three main root causes: Same Content , Heuristic Expiration , and Conservative Expiration Time , and discuss what mobile web developers can do to mitigate those problems.

31 citations

Proceedings ArticleDOI
27 Jun 2015
TL;DR: This paper characterize the performance differences between native apps and Web apps on realizing Restful Web services including GET, DELETE, PUT & POST, in terms of number of network connections, response time, and data drain, given the same functional features.
Abstract: The burst of Web-based Restful services brings us a number of facilities in our life and work We are used to take smartphones to access these Web services, like location-based services, weather search, mapping, social networking, et al On smartphones, we have two options of service consumers, aka, Native apps and Web apps Despite the platform-independence, Web apps are claimed to provide the same features and comparable user experiences with native apps However, one fact is that more and more people prefer native apps rather than Web apps In this paper, we make an empirical study on characterizing the performance disparity of native apps and Web apps Given the same functionalities provided by the same service providers, we explore the Restful Web services that are used by native apps and Web apps With HTTP-level trace analysis, we demystify the workflows on how native apps and Web apps use Web services and summarize different service usage patterns from architectural style perspective Then we characterize the performance differences between native apps and Web apps on realizing Restful Web services including GET, DELETE, PUT a POST, in terms of number of network connections, response time, and data drain, given the same functional features Our observations reveal that Web apps do not always perform worse than native apps using Restful Web services under the same context We further propose some implications to improve both native apps and Web apps on smartphones

25 citations