07-07-2012, 02:40 PM
Cost-Benefit Analysis of Cloud Computing versus Desktop Grids
Cost-Benefit Analysis.pdf (Size: 689.55 KB / Downloads: 24)
Abstract
Cloud Computing has taken commercial computing by
storm. However, adoption of cloud computing platforms
and services by the scientific community is in its infancy
as the performance and monetary cost-benefits for scientific
applications are not perfectly clear. This is especially
true for desktop grids (aka volunteer computing) applications.
We compare and contrast the performance and monetary
cost-benefits of clouds for desktop grid applications,
ranging in computational size and storage. We address the
following questions: (i) What are the performance tradeoffs
in using one platform over the other? (ii) What are the
specific resource requirements and monetary costs of creating
and deploying applications on each platform?
Introduction
Computational platforms have traditionally included
clusters, and computational Grids. Recently, two costefficient
and powerful platforms have emerged, namely
cloud and volunteer computing (aka desktop grids).
Cloud Computing has taken commercial computing by
storm. Cloud computing platforms provide easy access to
a company’s high-performance computing and storage infrastructure
through web services. With cloud computing,
the aim is to hide the complexity of IT infrastructure management
from its users. At the same time, cloud computing
platforms provide massive scalability, 99.999% reliability,
high performance, and specifiable configurability. These
capabilities are provided at relatively low costs compared
to dedicated infrastructures.
Related Work
In [23], the authors consider the Amazon data storage
service S3 for scientific data-intensive applications. They
conclude that monetary costs are high as the storage service
groups availability, durability, and access performance
together. By contrast, data-intensive applications often do
not always need all of these three features at once. In [28],
the authors determine the performance of MPI applications
over Amazon’s EC2. They find that the performance for
MPI distributed-memory parallel programs and OpenMP
shared-memory parallel programs over the cloud is significantly
worse than in "out-of-cloud" clusters. In [17], the
author conducts a general cost-benefit analysis of clouds.
However, no specific type of scientific application is considered.
In [9], the authors determine the cost of running a
scientific workflow over a cloud. They find that the computational
costs outweighed storage costs for their Montage
application. By contrast, for comparison, we consider
a different type of application (namely batches of embarrassingly
parallel and compute-intensive tasks) and costeffective
platform consisting of volunteered resources.
Cloud versus Volunteer Computing
Both cloud and volunteer computing have similar principles,
such as transparency. On both platforms, one submits
tasks without needing to know the exact resource on which
it will execute. For this reason, definitions of cloud computing
have included VC systems [30]. However, in practice,
the cloud computing infrastructures differ from volunteer
computing platforms throughout the hardware and software
stack. From the perspective of the user, there are two main
differences, namely configurability (and thus homogeneity),
and quality-of-service.
Volunteer Computing Project Costs
We detail the costs of maintaining large and small volunteer
computing projects. The main costs are due staff
salaries for the installation and programming of server software,
hardware maintenance, and recruitment and maintenance
of volunteers. There are also high start-up costs
for purchasing hardware. These costs could potentially be
subsumed or lowered by deploying a volunteer computing
project or service over a cloud. For example, the cost of
one full-time systems programmer could be amortized over
several VC project servers hosted on a cloud.
Listed below are the costs for a large project, namely
SETI@home, with about 318,380 active hosts. All costs
are in terms of USD.
Conclusions
We determined the cost-benefits of cloud computing versus
volunteer computing applications. We calculated VC
overheads for platform construction, application deployment,
compute rates, and completion times. We found that
in the best-case scenario, hosts register at a rate of 124 cloud
nodes per day. We found that the ratio of volunteer nodes
needed to achieve the compute power of a small EC2 instance
is about 2.83 active volunteer hosts to 1.
We detailed the specific costs of a large and small VC
project. We find that monthly VC project costs range between
5K-12K, and startup costs range from 4K to 43K. If
cloud computing systems are to replace VC platforms, payper-
use costs would have to decrease by at least an order of
magnitude.