CS/CSE 6236 and CS 4230
Parallel and Distributed Simulation
Fall Semester, 2007
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Drop
Date: 10/12/07
Instructor
Richard
Fujimoto, fujimoto (at) cc (dot)
gatech (dot) edu 404/894-5615
Office hours: TuTh 10:00-11:30 AM or by appointment
(1320A KACB)
Teaching
Assistant
TBD
Office hours: TBD
Class
Time and Location
TuTh 1:35-2:55 PM, 2247 Klaus Advanced Computing
Building
Textbook
R. Fujimoto, Parallel and Distributed Simulation
Systems. John Wiley & Sons, 2000 (required).
Additional Readings:
[Ad Hoc] R. M. Fujimoto, M. Hunter, J. Sirichoke,
M. Palekar, H.-K. Kim, W. Suh, “Ad Hoc Distributed Simulations,” Principles
of Advanced and Distributed Simulation, June 2007 [pdf].
[Aurora] A. Park, R. M. Fujimoto, “Aurora: An
Approach to High Throughput Parallel Simulation,” Principles of Advanced
and Distributed Simulation, May 2006 [pdf].
[Cloning] M. Hybinette and R. M. Fujimoto “Cloning
Parallel Simulations,” ACM Transactions on Modeling and Computer Simulation,
Vol. 11, No. 3, pp. 378-407, October 2001 [pdf].
[Reverse] C. D. Carothers, K. Perumalla, R. M.
Fujimoto, "Efficient Optimistic Parallel Simulation Using Reverse
Computation, ACM Transactions on Modeling and Computer Simulation,
Vol. 9, No. 3, pp. 224-253, October 1999 [pdf].
A
general background in operating systems (processes, concurrency issues,
semaphores, etc.) is assumed. An
undergraduate course in operating systems should suffice. Programming assignments and projects
will require software development in C and/or C++. No prior knowledge of simulation or parallel or distributed
computing is assumed.
Required
work includes (1) homework assignments (2) a course project, (3) two in-class
exams and a final examination. Each of the exams will count
for 20% of the final grade, the project will count
for 30%, and the homework count for the remaining 10%. A list of possible projects will be
distributed, or you are free to come up with your own (which must be approved
in advance).
Computer
accounts will be needed to complete the homework assignments and project. You
should have access to the CoC Cluster and various desktop machines.
This
course is concerned with the realization of simulations on parallel
or distributed computing systems for analytic or virtual environment
applications. The emphasis will
be on discrete event simulations. After some introductory materials, the course
is
roughly divided into two parts.
The first is concerned with parallel and distributed execution of
analytic simulations, e.g., for system evaluation. The second is concerned with the execution of simulations
on
distributed computers to create virtual environments, e.g., for training or
gaming applications.