SETI@home: an experiment in public-resource computing
Communications of the ACM
A Genetic Algorithm for Multiprocessor Scheduling
IEEE Transactions on Parallel and Distributed Systems
Mobile Distributed Information Retrieval for Highly-Partitioned Networks
ICNP '03 Proceedings of the 11th IEEE International Conference on Network Protocols
Multi-processor scheduling to minimize flow time with ε resource augmentation
STOC '04 Proceedings of the thirty-sixth annual ACM symposium on Theory of computing
Routing in a delay tolerant network
Proceedings of the 2004 conference on Applications, technologies, architectures, and protocols for computer communications
Modeling mobility for vehicular ad-hoc networks
Proceedings of the 1st ACM international workshop on Vehicular ad hoc networks
BOINC: A System for Public-Resource Computing and Storage
GRID '04 Proceedings of the 5th IEEE/ACM International Workshop on Grid Computing
An integrated experimental environment for distributed systems and networks
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Distributed computing in practice: the Condor experience: Research Articles
Concurrency and Computation: Practice & Experience - Grid Performance
Communications of the ACM - Supporting exploratory search
EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
Simplifying cyber foraging for mobile devices
Proceedings of the 5th international conference on Mobile systems, applications and services
MapReduce: simplified data processing on large clusters
Communications of the ACM - 50th anniversary issue: 1958 - 2008
Folding@home: Lessons from eight years of volunteer distributed computing
IPDPS '09 Proceedings of the 2009 IEEE International Symposium on Parallel&Distributed Processing
The Case for VM-Based Cloudlets in Mobile Computing
IEEE Pervasive Computing
MAUI: making smartphones last longer with code offload
Proceedings of the 8th international conference on Mobile systems, applications, and services
Pi: a practical incentive protocol for delay tolerant networks
IEEE Transactions on Wireless Communications
CODES/ISSS '10 Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
Pervasive Service Computing: Visions and Challenges
CIT '10 Proceedings of the 2010 10th IEEE International Conference on Computer and Information Technology
CloneCloud: elastic execution between mobile device and cloud
Proceedings of the sixth conference on Computer systems
Computing in cirrus clouds: the challenge of intermittent connectivity
Proceedings of the first edition of the MCC workshop on Mobile cloud computing
Towards resource sharing in mobile device clouds: power balancing across mobile devices
Proceedings of the second ACM SIGCOMM workshop on Mobile cloud computing
Energy-efficient fault-tolerant data storage & processing in dynamic networks
Proceedings of the fourteenth ACM international symposium on Mobile ad hoc networking and computing
Personal cloudlets for privacy and resource efficiency in mobile in-app advertising
Proceedings of the first international workshop on Mobile cloud computing & networking
Making the case for computational offloading in mobile device clouds
Proceedings of the 19th annual international conference on Mobile computing & networking
Go this way: navigation for better access quality in mobile networks
Proceedings of the eighth ACM international workshop on Mobility in the evolving internet architecture
Hi-index | 0.00 |
Mobile devices are increasingly being relied on for services that go beyond simple connectivity and require more complex processing. Fortunately, a mobile device encounters, possibly intermittently, many entities capable of lending it computational resources. At one extreme is the traditional cloud-computing context where a mobile device is connected to remote cloud resources maintained by a service provider with which it has an established relationship. In this paper we consider the other extreme, where a mobile device's contacts are only with other mobile devices, where both the computation initiator and the remote computational resources are mobile, and where intermittent connectivity among these entities is the norm. We present the design and implementation of a system, Serendipity, that enables a mobile computation initiator to use remote computational resources available in other mobile systems in its environment to speedup computing and conserve energy. We propose a simple but powerful job structure that is suitable for such a system. Serendipity relies on the collaboration among mobile devices for task allocation and task progress monitoring functions. We develop algorithms that are designed to disseminate tasks among mobile devices by accounting for the specific properties of the available connectivity. We also undertake an extensive evaluation of our system, including experience with a prototype, that demonstrates Serendipity's performance.