CptS 483/580 Concurrent
Programming
Fall 2002
(this document is on-line at
http://www.eecs.wsu.edu/~hauser/teaching/Concurrent-F02/Syllabus.html)
Course Objectives
Concepts and implementation of concurrent programs using shared memory and
message passing. Implementation of concurrency mechanisms.
This course has a significant hands-on programming component. The
programming projects are designed to both develop your skill in concurrent
programming and to stretch your understanding of issues in concurrent
programming.
Course Mechanics
Instructor: Carl Hauser, EME 53, 5-6470, mailto:hauser@eecs.wsu.edu
Office Hours: Monday and Wednesday 4-5PM or make an appointment
by e-mail
Teaching Assistant:
TA's Office Hours:
Class Meeting Time and Location: TTh 11:10-12:30, Sloan 32
Required Text Book: Gregory R. Andrews, Foundations of
Multithreaded, Parallel, and Distributed Programming
Additional Required Reading: Professor Sheldon has prepared a tutorial
(http://www.eecs.wsu.edu/~sheldon/ds/index.html) on logic and set theory and
placed it on the web. Review that material before the second class meeting.
Prerequisite: CptS 360 and permission of
instructor. Good knowledge of programming in C, C++ or Java.
Class Web Page: http://www.eecs.wsu.edu/~hauser/teaching/Concurrent-F02
Class Mailing List: cs483@eecs.wsu.edu.
It's important to be on the mailing list -- clarifications about projects and
homework and other announcements may be sent to the list between class
sessions.
Lab space: Computers in the SNIF Lab, ETRL 301 are available
for your use in programming assignments and projects. Your EECS computer
account is required for access to these computers. If you don't have an EECS
account you will need to get one. (Information
about EECS accounts). You will also need to visit the EECS Help Desk in
Sloan 358 to get the door access code for the lab. Of course, you are welcome
to use other EECS lab computers for your course work.
Requirements
You are responsible for all material presented in the lectures and for being
prepared for the problem discussions. Repeated absence from lectures or lack of
preparation may lead to dismissal from class. Your active participation in this
class is vital to its success. I expect you to own
your degree of success in this class. And, I expect you to contribute to
the success of others. Examples:
- If a lecture point is
unclear, ask a question, either in class, during office hours or by
e-mail. You are probably not alone in your confusion. I enjoy engaging in
technical conversations with students with the goal of helping them create
an accurate understanding of course material. Participating in such
conversations is very favorable for your class participation grade. I
hate talking about grades and how you can get a better one.
- If another student is
confused, help him or her out.
- If I am systematically doing
something that inhibits your learning, tell me.
Exams, Quizzes, Projects and Grading
The following is tentative and may be fine-tuned during the semester.
- One midterm, one final exam -
40%
- Two projects (three for
graduate students) - 40%
- Homework and homework-related
class participation - 20%
Work Calendar
There will be weekly homework assignments which we will discuss during
class. I will ask random class members to lead the discussions. Your
preparation for these discussions is a crucial part of learning the material in
this class, and of your grade.
Tentative dates. Each assignment will specify its official due date.
|
Assignment
|
Assigned
|
Due
|
|
Project 1
|
9/17
|
10/15
|
|
Test 1
|
10/3
|
--
|
|
Project 2
|
10/22
|
11/19
|
|
Grad/Extra Credit
Proj.
|
11/21
|
12/10
|
|
Final Exam
|
12/19 10:10-12:10
|
|
Subject Calendar
|
Topic
|
Approximate Time
Period
|
|
Shared Memory Concurrency
|
6 weeks
|
|
Communicating Sequential Processes
|
4 weeks
|
|
Concurrency patterns
|
3 weeks
|
|
Parallel programming
|
2 weeks
|
Policies and Expectations
- I expect you to demonstrate
critical thinking across the spectrum of course work. Adaptations of the
WSU Critical
Thinking Rubric will be used in grading some of the projects and
homework.
- I expect you to cooperate
with other students and to pull your share in class discussions. Respect
that different people in your group may have different ways of learning
and different strengths. Seek ways of taking advantage of those
differences.
- I expect you to engage in active
learning: speak up when you don't understand, question assumptions,
relate course material to your experience outside class, seek out
additional experience and reading related to the class. You must construct
your understanding of the material.
- I expect you to promptly
review feedback you receive from me, the TA, or other students; to
actively clarify the feedback if the material is still unclear; and to
incorporate the feedback in your future work.
- I expect you to spend
adequate time on the course. Adequate time includes getting enough rest so
that time you spend on course tasks is well-spent time. Adequate time
includes proofreading and reviewing your assignments before you hand them
in.
- I expect you to have high
expectations of yourself: set goals for yourself and try to do your very
best. Consciously think about the balance between what you do to earn a
grade and what you do to learn. (If I'm doing something that puts these in
opposition to each other please let me know.)
- You are expected to know and
observe the WSU Academic
Integrity Standards and the EECS Academic Integrity
Policy. Copying of other students' work, plagiarism of published
sources and other forms of academic dishonesty will result in zero credit
on the assignment for all students involved and a lower grade in the
class. A second offense (across the University) will result in an
automatic F in the course and exposes the violator to University sanctions
up to and including expulsion. All offenses will be reported to Student
Affairs.
- I will supply a folder in
which to keep your work. Please make sure that you collect all your graded
work in the folder and bring it with you to class or to any appointments
you have with me. I may ask you to turn in the folder from time to time
for my review and I will expect you to use it to check the final grade
sheet just prior to the end of the term.
- Reasonable accommodations are
available for students who have a documented disability. Please notify me
during the first week of class of any accommodations needed for the
course. Late notification may cause the requested accommodations to be
unavailable. All accommodations must be approved through the Disability
Resource Center (DRC) in Administration Annex room 205, 335-1566, mailto:drc@mail.wsu.edu.
Advice
- Don't wait until the last
minute to do homework or projects. The lab gets busy, computers break
down, people get sick. These are not sufficient excuses for an extension.
- Save early; save often!
- Come see me if you are
confused. Don't wait for office hours -- send email.
- Come see me anyway. I’d like
to know more about you.
- If you have trouble with
spelling and grammar, get and use and word processor that has spelling and
grammar flagging.