Comp150CPA: Clouds and Power-Aware Computing
Classroom Exercise 6
Elasticity and deployment
group member 1: ____________________________ login: ______________
group member 2: ____________________________ login: ______________
group member 3: ____________________________ login: ______________
group member 4: ____________________________ login: ______________
group member 5: ____________________________ login: ______________
In class we have studied the linkage between service
elasticity and speed of deployment. Let's explore that issue
in more detail.
- Suppose that a service request makes one read request of the
cloud, tcloud is three times tserver, and
tserver happens entirely after tcloud, which
happens first (simulating a lookup of the session context). Give a
time-space diagram with time on X and three simultaneously arriving
requests on Y, that demonstrates how the requests are processed by one
application instance (with a single CPU) via latency hiding. For each
instance, distinguish between time spent waiting for the cloud,
waiting for CPU time, and using the CPU. Ignore effects of process
- Let P(k) represent the worst-case performance for simultaneous
arrival of k identical requests in problem 1. Using the above
diagram, compute P(3) in terms of tserver and
tnetwork. Hint: tcloud = 3*tserver,
so tcloud can be removed.
- Let P(k) be the general solution to problem 2 and let M be the
number of server instances. Suppose that requests are equally
distributed to instances by a (flowless) switch. Suppose that
PSLA is the required response time according to an SLA.
What conditions on M will prevent an SLA violation? Why?
- Give an example of a plot of P against time (with
Pminimum, Psafe, and PSLA depicted as
horizontal lines) that causes the simple algorithm for service
elasticity given in class to provision more resources for a service,
even though it would not have violated its SLA even if no change in
provisioning were requested.
- (Advanced) In class we went over a detailed estimation of
Psafe for an application instance, in terms of
PSLA and tdeployment. How would one go about
estimating the acceptable performance bound tsufficient
that determines how fast is "good enough"?