Comp150CPA: Clouds and Power-Aware Computing
Classroom Exercise 6
Elasticity and deployment
Spring 2011

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.

  1. 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 scheduling.

  2. 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.
  3. 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?

  4. 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.

  5. (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"?