15-857A: Analytical Performance Modeling & Design of Computer Systems
12 Units. Cross-listed with Tepper: 47-774 and 47-775.
Classes: M,W 1:30 - 2:50, Room: GHC 4307
Required Recitation: F 1:30 - 2:50, Room: GHC 4307
STARTS: MONDAY SEPTEMBER 10, 2012
(Warning: This course will not be offered again until Fall 2014)
- HW1: Due 5 p.m. Wednesday Sept 19 under my door (GHC 7207): 2.2, 2.3, 3.8, 3.12, 3.13, 3.14, 3.23, 3.24, 3.25
(recommended for practice: 2.1, 3.6, 3.19, 3.22, 3.26, 5.1)
- Recitation Notes from Sept 14 on Probability:
- HW2: Due 5 p.m. Thursday Sept 27 under my door (GHC 7207): 4.1, 6.2, 6.3, 6.4, 6.7, 7.1, 7.2, 7.3, 7.5.
- Recitation Notes from Sept 21 on Generating RVs:
- HW3: Due IN CLASS WEDNESDAY Oct 10: 8.4, 8.6, 9.3, 9.4, 9.7, 9.8, 9.9, 9.12, 9.13, 9.14, 9.16, 10.3. (Optional problem: 7.6).
- Recitation Notes from Sept 28 on Transforms:
- HW4: Due IN CLASS WEDNESDAY Oct 17: 10.1, 11.1, 11.4, 11.5, 11.6, 11.9, 11.12, 12.2, 25.2, 25.6.
Extra Credit: 10.7 (Note: the extra credit may require reading Section 10.3).
- HW5: Due IN CLASS WEDNESDAY Oct 24: 13.1, 13.5-13.7, 13.10, 13.11, 14.3 - 14.7, 25.9, 25.12.
- MIDTERM: OCT 25, 5 p.m. - 7 p.m., in GHC 4303. You can bring one 3x5 index card with writing on one side.
- HW6: Due IN CLASS FRIDAY Nov 2: 15.1 - 15.7, 15.10, 16.2, 17.1 - 17.3, 17.5.
- HW7: Due IN CLASS FRIDAY Nov 9: 18.2 - 18.4, 18.6, 19.1, 19.3, 20.1 - 20.3.
- HW8: Due IN CLASS MONDAY Nov 19: One of 21.3 or 21.8 ace; 21.2; 21.5; 21.6; 22.1; 23.3-23.5; 23.7; 23.9-23.11; 25.7; 25.8; 25.13; 25.14.
- Recitation Notes from Nov 16 on Transforms:
- THERE WILL BE NO HOMEWORK FROM Nov 19 - Nov 25. Happy Thanksgiving!
- HW9: Due IN CLASS MONDAY Dec 3: 24.2, 24.5, 24.6, 26.1, 26.3, 26.5, 27.1, 27.2 (see modification to 27.2 ), 27.3, 27.6, 29.2.
- HW10: Due IN CLASS WEDNESDAY Dec 5: 30.1 and 30.3.
- EXTRA OFFICE HOURS (MOR):
- FRI, DEC 7: 3 p.m. - 4 p.m.
- SAT, DEC 8: 4 p.m. - 5 p.m.
- SUN, DEC 9: 4 p.m. - 5 p.m.
- MON, DEC 10: 1 p.m. - 2 p.m.
- EXAM: TUESDAY, Dec. 11 5:30p.m.- 8:30p.m., GHC 4215. You are allowed one 3x5 index card front and back for notes. Exam will cover only material from Chpt 14 onwards.
We will closely follow my textbook "Performance Modeling and Design of Computer Systems." This book is not yet available on Amazon.com, but will be made available as a spiral-bound soft-copy for students in the class. To get a copy, stop by my office (GHC 7207) any time after August 27th.
In designing computer systems one is usually constrained by certain
performance requirements and limitations. For example, one might need
to guarantee a response time SLA or certain throughput requirement,
while at the same time staying within a power budget or cost budget.
On the other hand, one often has many choices: One fast disk, or two
slow ones? More memory, or a faster processor? A fair scheduler or
one that minimizes mean response time? For multi-server systems, one
can choose from a wide array of load balancing policies, a wide array
of migration policies, capacity provisioning schemes, power management
policies ... The possibilities are endless. The best choices are
often counter-intuitive. Ideally, one would like to have answers to
these questions before investing the time and money to build a system.
This class will introduce students to analytic stochastic modeling
with the aim of answering the above questions.
Topics covered include:
Throughout, the theory developed will be applied to a wide array of computer systems design problems including the design of efficient data centers, web servers, DBMS, disks, call centers, routers, and supercomputer centers.
- Operational Laws: Little's Law, response-time law, asymptotic bounds,
modification analysis, performance metrics;
- Markov Chain Theory: discrete-time Markov chains,
continuous-time Markov chains, renewal theory, time-reversibility;
Poisson Process: memorylessness, Bernoulli splitting, uniformity,
- Queueing Theory: open networks, closed networks, time-reversibility, Renewal-Reward, M/M/1, M/M/k, M/M/k/k, Burke's theorem, Jackson networks, classed networks,
load-dependent servers, BCMP result and proof, M/G/1 full analysis,
M/G/k, G/G/1, transform analysis (Laplace and z-transforms);
- Simulations: time averages versus ensemble averages,
generating random variables for simulation, Inspection
- Modeling Empirical Workloads: heavy-tailed property,
Pareto distributions, heavy-tailed distributions, understanding variability and
tail behavior, Matrix-analytic methods;
- Management of Server Farms: capacity provisioning, dynamic power management, routing policies;
- Analysis of Scheduling: FCFS, non-preemptive
priorities, preemptive priorities, PS, LCFS, FB, SJF, PSJF, SRPT, etc.
The techniques studied in this class are useful to students in
Computer Science, ECE, Mathematics, ACO, Tepper, Statistics, MLD, and Engineering.
This course is packed with open problems -- problems which if solved
are not just interesting theoretically, but which have huge
applicability to the design of computer systems today.
For a more detailed description see the
Table of Contents of the book.
We assume a reasonable background in probability, such as that covered in an Undergraduate Probability class.
Specifically, we assumes a knowledge of continuous and discrete
distributions, conditional probability, conditional expectation, and higher moments.
All the assumed material can be found in Chapter 3 of my book. You can pick up a free copy
of Chapter 3 of my book from my office (GHC 7207) at any time! Come over now!
There is an entrance exam for this
class. So make sure you've got the prerequisites.
- Weekly Homeworks -- worth 45% total.
- Midterm 1 -- 20% (somewhere after Chpt 14)
- Midterm 2 -- 20% (near the very end)
- One grading meeting during semester -- 5%.
- Class participation -- 10%.
- 10% BONUS if you solve an Open Problem.
COLLABORATING vs. CHEATING:
You will receive regular homework problems.
These will be difficult. Start immediately
so that you can take full advantage of office hours. You will find
office hours very helpful!
Some of these homework problems will
be repeated from previous years. The reason is that I have made up
all the problems myself and it takes a very long time to think up good
problems. Do not ask people who took this course in previous years to
help you with the homeworks. This is considered cheating and will be reported to the dean.
On the other hand, I strongly encourage you to collaborate with your
current classmates to solve the homework problems after you have tried
solving them by yourself. Each person must turn in a separate writeup. You should
note on your homework specifically which problems were a collaborative
effort and with whom.
In addition to the textbook for the class, there are additional sources available on this Booklist that you can borrow from my office: BOOK LIST.
PRIOR COURSE EVALUATIONS:
Prior course evaluations average 4.86/5.0 for "Course Overall" and 4.94/5.0 for "Instructor Overall."
To see all FCEs for the instructor Click Here .