Syllabus
Southern
Department
of Computer Science
CS
582 High Performance Computing
Prerequisite:
Data Structures or Equivalent
Instructor: Dan Harvey
Room: Computer Science Building #CS224
Phone: 552-6149
E-mail: harveyd@sou.edu
Office Hours: Monday
10:00-11:00
Wednesday: 10:00-11:00,
2:00-3:00
Thursday: 10:00-11:00, 2:00-3:00
Friday 10:00-11:00
Web Site: http://www.sou.edu/cs/harvey
The web
site is available for quiz results, lab assignments, weekly handouts, current grade
status, and contact with class members. Click on the appropriate class, and
then select the desired option.
Monday,
Wednesday, (CS224)
1.
Java in Distributed Systems, Marko Boger, John Wiley & Sons, LTD, 2001,ISBN 0-471-49838-6
2.
Measuring Computer Performance: A
Practitioner's Guide, David J. Lilja,
Till date, most programmers
implement High Performance Applications with either C or FORTRAN. However, the
Java programming language is drawing much attention from the research community
because of its built-in characteristics that make it an attractive possible
alternative. Java programs are highly portable so that programs easily transfer
between platforms with minimal development costs. Java also has built in
thread, socket, and remote method invocation capabilities that can form the
basis for implementations of "Grand Challenge" projects. However,
speed issues and the lack of debugging/profiling tools are hindrances that need
to be addressed. This class explores the question as to whether the Java
programming language is sufficient for implementing High Performance projects.
We will introduce and experiment with various Java Related paradigms that have
been proposed. These paradigms include mpiJava, Jomp, HPJava, Aglets, JavaSpaces, TSpaces, Soap, and
XML-RPC. We will also utilize methods, metrics, and benchmark tools that
introduce students to the field of computer performance analysis.
Week Topics
1 Introduction
to High Performance Computing
Sockets and Threads, Metrics of
Performance
2 Parallel
Programming Techniques, Benchmark Programs
Java RMI and CORBA
3 Performance
Analysis Statistical Concepts, mpiJAVA
4 Measurement
Tools and Techniques, JOMP
5 Simulations,
HPJava
6 HPJava, Comparing Alternatives
7 Aglets,
Design of Experiments
8 Debugging
and Profiling Tools, TSpaces
9 Mid-Term
Examination, JINI and JavaSpaces
10 XML-RPC, Soap, Grids, Other Java-Based
Paradigms
11 Presentations
Course
Grading
As a graduate-only course, we emphasize research oriented projects.
Each student will choose a project that focuses on evaluating Java's
performance. The project will utilize one of the paradigms that we introduce
and evaluate it using an appropriate benchmark. The purpose of this work is to
answer the research question: Can the Java language be effective for high
performance computing applications? The answer to this question must be clearly
justified. Students give a formal presentation at the end of the quarter
discussing their findings. We'll discuss these requirements in detail in class.
Shorter presentations during the quarter give students opportunities to discuss
their projects and get on-going feedback. Students must maintain journals of
their work; journaling is essential for research so that results can be
repeated and verified. The quarter project will count for 50% of the final
grade. Factors such as quality of the project, the presentations, the
journaling, and the results will contribute to the grade.
Short project assignments give students some experience with each Java paradigm
that we cover. These shorter projects will count for 25% of the final grade.
There will be a midterm exam, but no final. The midterm will cover the
material discussed in class up to that point. The midterm exam is worth 25% of
the final grade.
Grade
Breakdown: 93-100% A 90-92% A-
88-89% B+
82-87 B 80-81% B-
78-79% C+
72-77 C 70-71% C-
68-69% D+
62-67 D 60-61% D-
Under 60 F
Disabilities
If
you are in need of support because of a documented disability (whether it be
learning, mobility, psychiatric, health-related, or sensory) you may be
eligible for academic or other accommodations through Disability Services for
Students. Contact Margaret Dibb, Director DSS at dibbm@sou.edu or by calling 541-552-6213; or
schedule an appointment in person at the