CPS 104, Fall, 1999, Important Information
General Information
Name:
Office:
Phone:
|
Instructor
Dietolf Ramm
D226 LSRC
660-6532
|
Graduate TA
Satish Govindarajan
D208 LSRC
660-4008
|
Head UGrad TA
_______________
_______________
_______________
|
Hours:
| Mon 10:10, Thu 10:00
or by appointment.
| Mon 1:30, Tue 10:00
or by appointment.
| _______________
or by appointment.
|
| Email:
| ramm@cs.duke.edu
| gsat@cs.duke.edu
| _____@acpub.duke.edu>
|
Course Overview
This course naturally follows CPS 100 or CPS 100E. It will provide
the connection between the high level, C++ view of the machine
and the computer hardware. In some ways the course will try
to take the "magic" out. Everything that happens at the high level
should be traceable to low level machine actions.
Texts
- Required: Computer Organization and Design, The Hardware / Software
Interface, (2nd ed.)
Morgan Kaufmann, 1998, by David A Patterson and John L Hennessy
Reading
In general you should read the text in order to be prepared to ask and
answer questions in class. If you've looked at material before it's
discussed in class you'll get much more out of the class discussion.
This is especially true once class has been going for a while.
Computing
Sparc
Clusters are found in 106 Teer, 139 Hudson Hall, 133 Soc/Psych,
002CC Bio-Sci, and 125 Carr. All programs/projects will be
submitted electronically. You are responsible for ensuring that
all files are submitted on time.
Collaboration
On programming assignments, you may consult with
the TA's and the instructors as many times as you want
want but should limit collaboration otherwise to
one or two other students. This means you can discuss the
programs before writing code, and get help with debugging your program,
but you must write your own code. Writing one program and making
multiple copies of it is not acceptable! For each assignment and
program you are expected to include a list of the people with whom you
have consulted (including students, TA's, tutors, professors).
Finally, it's not a good idea to to work with the same students
all of the time. Get to know several people and the way they work and think!
Quizzes and Tests must be entirely your own work.
Newsgroup
You should regularly read the newsgroup duke.cs.cps104
as it may contain announcements, hints, and information relevant
to this class. The Introduction to the Public Unix Clusters
at Duke explains how to read newsgroups.
Grading
| Homework Assignments | 50%
|
| Midterm Exams (2) |
30%
|
| Final Exam |
20%
|
Grading is done on an absolute, but adjustable scale. This means that
there is no curve in the traditional sense. Anyone earning 90% or more
of the total number of
points available will receive a grade in the A range; 80% = B, 70% =
C, 60% = D. This scale may go down, but it will not go up.
However, note that to get an A+, you will have to do something
extra or extraordinary. Just routinely doing everything correctly
may get you 100%, but still not qualify you for an A+.
The tests and final exam will be closed-book.
Late Programming Assignments
Unless specified otherwise, all programming assignments
will be due on at midnight of the date specified on the assignment
(note that programming assignments are submitted electronically).
Late programming assignments
are penalized 10% for each day late.
After one week, late assignment may not be accepted for credit.
Getting Help
If you are having problems, please do NOT give up --- talk to
the instructors, and/or TAs, the earlier the better (it's hard to
do much to recover in the last week or two of classes).