|
|
| |
|
|
| |
|
Description
|
|
This course provides an introduction to techniques and tools
needed to construct and evaluate models of computer systems
and applications. The focus of the course is on analytical
and simulation methods and corresponding case studies,
which are important in computer
systems design, capacity planning, performance and reliability
evaluation, and decision making. Such techniques have been used
in the design of the Internet, peer-to-peer systems, database
systems, multimedia systems, OS scheduling policies, parallel and
distributed systems, and many more.
|
| |
|
Who should take this course?
|
|
Any student interested in computer and/or communication systems
as well as their applications and the related performance issues,
especially those interested in networking, distributed systems,
databases, multimedia systems, AI, and operating systems. The
intent of the course is to provide the tools necessary for
evaluating designs of such systems, making decisions in such
systems, as well as for gaining insights that can be obtained.
|
| |
|
Objectives
|
The course objectives are:
- Introduce students to fundamentals of probabilistic and
stochastic analysis, in the context of both analytical
approaches and simulations.
- Teach students how to apply these techniques
to modeling of computer systems and applications.
- Teach students how to apply modeling and simulation
tools to design and evaluation of computer systems
and applications.
- Illustrate application and utility of such techniques
through a set of case studies covering a number of
computer science areas, such as operating systems,
networking, software engineering, databases,
artificial intelligence, etc.
|
| |
|
Tentative Topics Covered
|
We will cover the following topics:
- Modeling fundementals:
- Math tune-up: combinatorics
- Basic probability
- Conditional probabilities and Bayes rule
- Random variables (discrete, continuous)
- Joint random variables
- Expected values
- Simulations, statistical inference
- Confidence intervals, parameter estimation
- The Poisson process
- PASTA and the M/M/1 queue
- Discrete time Markov chains
- Continuous time Markov chains
- Markov chains applications
- Network of queues: open and closed models
- Fundamental laws: Little's law, flow balance equations, etc.
- Asymptotic bounds analysis and applications
- Case Studies:
- Processor scheduling
- Memory management
- Software architecture design
- Computer networks
- Artificial intelligence
- Databases
|
| |
|
Text Books and References
|
|
Required textbooks are:
|
| |
|
Workload
|
|
There will be a number of homework assignments and two simulation/case study
projects.
The homeworks might also involve the use of tools,
such as CSIM, MATLAB, and so on. The projects will involve
the use of CSIM.
Two exams will be given.
Any schedule conflicts involving exam dates must be reported to
the instructor within one week of the announcement of the exam date.
|
| |
|
Academic Integrity Policy
|
|
Please make sure you read the Academic
Integrity Policy of this course.
|
| |
|
Grading (Tentative)
|
- Homeworks: 15%
- Projects (2): 25%
- Exam 1: 25%
- Exam 2: 35%
The weights are approximate and may change by up to 5%.
|
| |
|