CS 410 Top: Computer Performance Evaluation

Credit Hours: 4
Course Coordinator: N/A
Course Description: This course provides an introduction to some of the state-of-the-art analytic modeling techniques that are important in the design and performance prediction of computer systems and capacity planning. Analytic techniques to be covered include Little's law, asymptotic bounds analysis, elementary queueing theory, and an introduction to mean-value-analysis. These techniques have been used to aid the design in many computer systems, such as modern communication networks, job scheduling policies, and parallel computer architecture.
Prerequisites: A first course in Calclus, Probability and Statistics. A first course in Operating Systems would be helpful but not required.
Goals: The objective of this course is to prepare students for more advanced graduate research in the system area, and to provide students with necessary background for working as system performance analysts in computer industries.

Upon the successful completion of this course students will be able to:

  1. Apply Little's laws and several other fundamental laws to derive system performance measures of interest from other observed measures (e.g., compute average job response time from system throughput and average number of jobs).
  2. Apply fundamental laws and simple asymptotic bounds to identify the bottleneck component in multi-component systems.
  3. Evaluate alternative plans for computer component upgrades.
  4. Compute performance measures (mean time, mean residual time, and coefficient of variation, etc.) of the variable.
  5. Construct functional form distribution to model observed data and write a report for the results.
  6. Analyze M/M/c/k queueing systems.
  7. Apply Mean Value Analysis techniques to analyze queueing systems.
  8. Use matlab as a tool to analyze both raw data and functional form data.
Textbooks: [1] E. D. Lazowska, J. Zahorjan, G. S. Graham, K. C. Sevcik, Quantitative System Performance, Prentice Hall, 1984. (This text is out of print, but it is available online at http://www.cs.washington.edu/homes/lazowska/qsp/). [2] K.S. Trivedi, Probability and Statistics with Reliability, Queueing, and Computer Science Applications, Willey Interscience.
References: [1] A. M. Law and W. D. Kelton, Simulation Modeling & Analysis, McGraw-Hill

[2] R. W. Wolff, Stochastic Modeling and the Theory of Queues, Prentice-Hall, 1989

[3] L. Kleinrock, Queueing Systems Volume I: Theory, Wiley Interscience, 1975.

[4} R. Jain, The Art of Comuter Systems Performance Analysis: Techniques for Experimental Design, Measurement, Simulation, and Modeling, John Wiley & Sons, 1991.

[5} A.O. Allen, Probability, Statistics, and Queueing Theory with Computer Science Applications, Second Edition, Academic Press, 1990.

Major Topics: Little's law
Asymptotic bounds analysis
Elementary queueing theory
Mean value analysis
Laboratory Exercises: One - two projects.

CAC Category Credits Core Advanced
Data Structures
Algorithms
Software Design 0.4
Computer Architecture
Programming Languages

Oral and Written Communications: Every student is required to submit at least 1 written report (not including exams, quizzes, or commented programs) of typically 1-3 pages.
Social and Ethical Issues: None.
Theoretical Content: 50% for the elementary queueing theory
25% for Little's law, asymptotic bounds analysis, and mean value analysis
25% for the probability and statistics theory
Problem Analysis: Homework assignments (4-5) require the students to analyze and solve the problems using probability, statistics, and queueing theory.
Solution Design: The lab projects (1-2) require the students to apply the class techniques in the design of the software programs.