CS672 is a 3-credit course with CS571 as prerequisite. It introduces the main concepts and techniques needed to plan the capacity of computer systems, predict their future performance under different configurations, and design new applications that meet performance requirements. The course is mainly based on the use of analytic queuing network models of computer systems. These techniques are applied to study the performance of centralized, distributed, parallel, client/server systems, Web server and e-commerce site performance. The course also discusses performance measuring tools for operating systems such as Unix and Windows. The course provides the students with hands-on experience in performance evaluation through a project. The concept and applications of software performance engineering are also covered.
Grades are based on a midterm, a take-home final, and a project.
Grades will be numerical on the scale 0-100. Your final numerical grade,
G, is computed as:
G = 0.35* Midterm + 0.30 * Final + 0.35 * Project.
The following table is used to convert your numerical grade G to a letter grade:
G | letter grade |
---|---|
[97,100] | A+ |
[93,97) | A |
[88,93) | A- |
[85,88) | B+ |
[81,85) | B |
[77,81) | B- |
[65, 77) | C |
< 65 | F |
There is no curving. No extra credit assignments will be given after the semester is over to increase grades. The instructor may decide to give an extra-credit assignment during the semester. Everyone will be given the opportunity to do the extra-credit assignment. Several homeworks will be assigned during the semester but will not considered for the final grade. However, students who turn in all homeworks in time and get most of them correct may receive an upgrade in their letter grade if their numerical grade G is very close to the boundary between two letter grades.
Week 1: | Computer System Lifecycle and From Systems to Descriptive Models |
Week 2: | Quantifying Performance Models |
Weeks 3-4: | Performance Engineering Methodology and Case Study I: A Database Service |
Week 5: | Multiclass Open Queuing Network Models |
Weeks 6-7: | Case Study II: A Web Server and Multiclass Closed Queuing Network Models |
Week 8: | Midterm |
Week 9: | Case Study III: A Data Center |
Week 10: | Markov Models |
Week 11: | Case Study IV: An E-Business Service and Case Study V: A Help-Desk Service |
Week 12: | Queuing Networks with Load Dependent Devices. |
Week 13: | Non-Product Form Queuing Network Models |
Required readings:
Students will work individually in a project and will make a presentation (a final exhibition) to the whole class. Each student has to turn in a written report describing the performance problem being studied, the model built, the data collection procedures used, the various numerical results, and conclusions obtained. In order for projects to complete successfully, it is very important to plan all activities and to follow a schedule. Starting to work on a project a few days before it is due will very likely cause problems to its successful completion.
First Day of Classes | January 25, 2022. |
Project Proposal Due | March 8, 2022. |
Spring break - No classes | March 15, 2022. |
Midterm | March 22, 2022. |
Final exam available | April 26, 2022. |
Last day of classes | May 7, 2022. |
Project presentations | May 7, 2022. |
Final exam due date: | May 8, 2022. |
No collaboration is allowed among students in any of the individual exams. Students are allowed to discuss with other students the solution of homework assignments.
Last updated: December 14, 2022.