12,303 research outputs found
The Network Effects of Prefetching
Prefetching has been shown to be an effective technique for reducing user perceived latency in distributed systems. In this paper we show that even when prefetching adds no extra traffic to the network, it can have serious negative performance effects. Straightforward approaches to prefetching increase the burstiness of individual sources, leading to increased average queue sizes in network switches. However, we also show that applications can avoid the undesirable queueing effects of prefetching. In fact, we show that applications employing prefetching can significantly improve network performance, to a level much better than that obtained without any prefetching at all. This is because prefetching offers increased opportunities for traffic shaping that are not available in the absence of prefetching. Using a simple transport rate control mechanism, a prefetching application can modify its behavior from a distinctly ON/OFF entity to one whose data transfer rate changes less abruptly, while still delivering all data in advance of the user's actual requests
Live Prefetching for Mobile Computation Offloading
The conventional designs of mobile computation offloading fetch user-specific
data to the cloud prior to computing, called offline prefetching. However, this
approach can potentially result in excessive fetching of large volumes of data
and cause heavy loads on radio-access networks. To solve this problem, the
novel technique of live prefetching is proposed in this paper that seamlessly
integrates the task-level computation prediction and prefetching within the
cloud-computing process of a large program with numerous tasks. The technique
avoids excessive fetching but retains the feature of leveraging prediction to
reduce the program runtime and mobile transmission energy. By modeling the
tasks in an offloaded program as a stochastic sequence, stochastic optimization
is applied to design fetching policies to minimize mobile energy consumption
under a deadline constraint. The policies enable real-time control of the
prefetched-data sizes of candidates for future tasks. For slow fading, the
optimal policy is derived and shown to have a threshold-based structure,
selecting candidate tasks for prefetching and controlling their prefetched data
based on their likelihoods. The result is extended to design close-to-optimal
prefetching policies to fast fading channels. Compared with fetching without
prediction, live prefetching is shown theoretically to always achieve reduction
on mobile energy consumption.Comment: To appear in IEEE Trans. on Wireless Communicatio
A performance model of speculative prefetching in distributed information systems
Previous studies in speculative prefetching focus on building and evaluating access models for the purpose of access prediction. This paper investigates a complementary area which has been largely ignored, that of performance modelling. We use improvement in access time as the performance metric, for which we derive a formula in terms of resource parameters (time available and time required for prefetching) and speculative parameters (probabilities for next access). The performance maximization problem is expressed as a stretch knapsack problem. We develop an algorithm to maximize the improvement in access time by solving the stretch knapsack problem, using theoretically proven apparatus to reduce the search space. Integration between speculative prefetching and caching is also investigated, albeit under the assumption of equal item sizes
Evaluation of vectorization potential of Graph500 on Intel's Xeon Phi
Graph500 is a data intensive application for high performance computing and it is an increasingly important workload because graphs are a core part of most analytic applications. So far there is no work that examines if Graph500 is suitable for vectorization mostly due a lack of vector memory instructions for irregular memory accesses. The Xeon Phi is a massively parallel processor recently released by Intel with new features such as a wide 512-bit vector unit and vector scatter/gather instructions. Thus, the Xeon Phi allows for more efficient parallelization of Graph500 that is combined with vectorization. In this paper we vectorize Graph500 and analyze the impact of vectorization and prefetching on the Xeon Phi. We also show that the combination of parallelization, vectorization and prefetching yields a speedup of 27% over a parallel version with prefetching that does not leverage the vector capabilities of the Xeon Phi.The research leading to these results has received funding from the
European Research Council under the European Unions 7th FP (FP/2007-
2013) / ERC GA n. 321253. It has been partially funded by the Spanish
Government (TIN2012-34557)Peer ReviewedPostprint (published version
Optimal Error Correcting Delivery Scheme for Coded Caching with Symmetric Batch Prefetching
Coded caching is used to reduce network congestion during peak hours. A
single server is connected to a set of users through a bottleneck link, which
generally is assumed to be error-free. During non-peak hours, all the users
have full access to the files and they fill their local cache with portions of
the files available. During delivery phase, each user requests a file and the
server delivers coded transmissions to meet the demands taking into
consideration their cache contents. In this paper we assume that the shared
link is error prone. A new delivery scheme is required to meet the demands of
each user even after receiving finite number of transmissions in error. We
characterize the minimum average rate and minimum peak rate for this problem.
We find closed form expressions of these rates for a particular caching scheme
namely \textit{symmetric batch prefetching}. We also propose an optimal error
correcting delivery scheme for coded caching problem with symmetric batch
prefetching.Comment: 9 pages and 4 figure
Leveraging Program Analysis to Reduce User-Perceived Latency in Mobile Applications
Reducing network latency in mobile applications is an effective way of
improving the mobile user experience and has tangible economic benefits. This
paper presents PALOMA, a novel client-centric technique for reducing the
network latency by prefetching HTTP requests in Android apps. Our work
leverages string analysis and callback control-flow analysis to automatically
instrument apps using PALOMA's rigorous formulation of scenarios that address
"what" and "when" to prefetch. PALOMA has been shown to incur significant
runtime savings (several hundred milliseconds per prefetchable HTTP request),
both when applied on a reusable evaluation benchmark we have developed and on
real applicationsComment: ICSE 201
- …
