Faculty of Computers and Information
Cairo University
Course Specification
Course Name: Parallel Processing
Course Code: CS471
I. Basic Course Information
Major or minor element of program: Both Major and Minor
Department offering the course: Computer Science Department
Academic level: 400 Level
Semester in which course is offered:Second (Spring) Semester
Course pre-requisite(s): Computer Architecture and Organization CS322
Credit Hours: 3
Contact Hours Through:
Lecture Tutorial* Practical* Total
2.5 0.0 1.5 4.0
*
1.5 hours for either Tutorial or Practical
Approval date of course specification: January 2015
II. Overall Aims of Course
This course is designed to teach concepts and practice of parallel processing. Topics
covered include Parallel Computing Architectures, Parallel system models, Parallel
programming languages and paradigms, and techniques for performance assessment
and optimization. Real life applications are used to practice the modeling and
programming of parallel systems.
III. Program ILOs covered by course
Program Intended Learning Outcomes (By Code)
Knowledge & General
Intellectual Skills Professional Skills
Understanding Skills
K5,K10,K18,K19 I6,I17,I19 P6,P8,P17 G2,G9
Parallel Processing 1
Faculty of Computers and Information
Cairo University
Course Specification
IV. Intended Learning Outcomes of Course (ILOs)
a. Knowledge and Understanding
On completing the course, students should be able to:
K.1 Identify the different parallel computing architectures.
K.2 Recognize different parallel programming languages.
K.3 Distinguish between parallelizable and non-parallelizable problems.
K.4 Explain the feasibility and unfeasibility of parallel computing.
b. Intellectual/Cognitive Skills
On completing the course, students should be able to:
I.1 Analyze and assess the performance of a parallel computing system.
I.2 Use parallel programming to modify performance for both better and worse.
I.3 Analyze the processing and communication effects of parallel programs on
performance.
c. Practical/Professional Skills
On completing the course, students should be able to:
P.1 Write, compile, and run parallel programs in MPI for cluster systems.
P.2 Write, compile, and run parallel programs in OpenMP for multi-core systems.
P.3 Design parallel solutions to abstract and practical problems.
d. General and Transferable Skills
On completing the course, students should be able to:
G.1 Gain Work and Time Organization Skills
G.2 Think in parallel for problem solving
V. Course Matrix Contents
Course ILOs Covered by Topic
Duration
Main Topics / Chapters (By ILO Code)
(Weeks)
K&U I.S. P.S. G.S.
Course introduction and
1- 1 K3,K4
motivation
Overview of Parallel
2- 2 All G2
Computing
Introductory parallel
3- 1 All I1,I3 P1 All
programming
Parallel applications,
4- 1 All All P1,P3 All
Numerical Integration
5- Collective Communications 3 All All P1,P3 All
6- Performance 1 All All P1,P3 All
7- OpenMP programming 1 All All All All
8- Parallel Algorithms 1 All All All All
9- Project 2 All All All All
Net Teaching Weeks 13
Parallel Processing 2
Faculty of Computers and Information
Cairo University
Course Specification
VI. Course Weekly Detailed Topics / hours / ILOs
Contact Hours
Week Total
Sub-Topics Theoretical Practical
No. Hours
Hours Hours*
1 Course introduction and motivation 2.5 2.5
2 Overview of Parallel Computing 4 2.5 4
3 Overview of Parallel Computing 4 2.5 4
4 Introductory parallel programming 4 2.5 4
Parallel applications, Numerical
5 4 2.5 4
Integration
Collective Communications (Broadcast
6 4 2.5 4
and Reduce)
7 Midterm Exam
Collective Communications (Scatter and
8 4 2.5 1.5
Gather)
Collective Communications (Data
9 4 2.5 1.5
grouping and communicators)
10 Performance 4 2.5 1.5
11 OpenMP programming 4 2.5 1.5
12 Pipelined computations 4 2.5 1.5
13 Parallel Algorithms 4 2.5 1.5
14 Project 4 2.5 1.5
15 Final Exam
Total Teaching Hours 51 33 18
*
No Practical/Tutorial during the first week of the semester
VII. Teaching and Learning Methods
Selected
Course ILOs Covered by Method (By ILO Code)
Method
Teaching/Learning
Method Intellectual Professional General
K&U
Skills Skills Skills
Lectures & Seminars * All All All All
Tutorials
Computer lab Sessions * All All All All
Practical lab Work
Reading Materials
Web-site Searches
Research & Reporting
Problem Solving /
Problem-based Learning
Projects
Independent Work * All All All
Group Work * All All All
Case Studies
Presentations
Simulation Analysis
Others (Specify): Electronic course notes and lab sheets
Parallel Processing 3
Faculty of Computers and Information
Cairo University
Course Specification
VIII. Assessment Methods, Schedule and Grade Distribution
Course ILOs Covered by Method
Selected
Method
(By ILO Code) Assessment
Assessment Week
Weight /
Method No.
K&U I.S. P.S. G.S. Percentage
Midterm Exam * All All PI,P2 10% 7
Final Exam * All All All 60% 15
Quizzes * All All All All 10%
Course Work * All P1 10%
Report Writing
Case Study
Analysis
Oral
Presentations
Practical
Group Project * All 10% 13
Individual Project
Others (Specify):
IX. List of References
Peter Pacheco: Parallel Programming with MPI, Morgan
Essential Text Books
Kaufmann Publishers Inc.
Additional material and internet searches are assigned for
Course notes
specific applications and additional tutorials
Michael Quinn: Parallel Programming in C with MPI and
Recommended books
OpenMP, McGraw-Hill
Periodicals, Web sites, A website for submission and grading is created plus
etc… recommendation of several parallel computing websites
X. Facilities required for teaching and learning
Computer Laboratories
Software (C compilers with MPI and OpenMP libraries)
Projector
Course coordinator: Dr. Ahmed Shawky
Head of Department: Prof. Abeer El Korany
Date: January 2015
Parallel Processing 4