Syllabus
Table of contents
Meeting places & times
- Class time: R234 (
9:009:10-12:00 on Thursdays) - Class location: EDB27
E3 forum
Please make good use of the E3 forum as a place for course communication. Discussing course material, asking questions about difficult concepts or homeworks, pointing out interesting current events that link to our classroom topics, and sharing useful material are just a few of the things you can do.
Prerequisites
This course assumes that you write good code in C/C++ and are familiar with the Linux environment. You will write a lot of C/C++ code running on remote Linux machines, and also use profiling tools to analyze the performance of programs.
Requirements:
- You have taken a C/C++ course or have a fair amount of practical experience with C/C++ programming. For those who are not familiar with C++, you may need to study it by yourself.
- You know how to connect to remote machines with
ssh
,scp
, etc. - You know how to work on Linux systems (i.e., basic commands such as
cd
,rm
, and running executables and GNU tools such asmake
andgcc
).
Textbook
Peter Pacheco, An Introduction to Parallel Programming, Morgan Kaufmann; 1 edition (January 21, 2011).
Course Project
See here for details.
Grading
Grades will be assigned based on
- Homework assignments (70%)
- Final project and presentation (30%)
These weights are subject to minor variation.
Statements on plagiarism
Homework assignments must be individual work. While you are allowed (and encouraged) to work together in understanding the concepts of the course, sharing of algorithms or code is NOT ALLOWED
. Searching for solutions is considered plagiarism. Copying posted solutions on the web will be counted as CHEATING
.