|
Course Description |
|
Course Name |
: |
Multiprocessor Architectures |
|
Course Code |
: |
CENG-544 |
|
Course Type |
: |
Optional |
|
Level of Course |
: |
Second Cycle |
|
Year of Study |
: |
1 |
|
Course Semester |
: |
Spring (16 Weeks) |
|
ECTS |
: |
6 |
|
Name of Lecturer(s) |
: |
Asst.Prof.Dr. MEHMET FATİH AKAY |
|
Learning Outcomes of the Course |
: |
Defines terminology commonly used in parallel computing Describes different parallel architectures, inter-connect networks, programming models, and algorithms for common operations such as matrix-vector multiplication. Given a parallel algorithm, analyzes its time complexity as a function of the problem size and number of processors.
|
|
Mode of Delivery |
: |
Face-to-Face |
|
Prerequisites and Co-Prerequisites |
: |
None |
|
Recommended Optional Programme Components |
: |
None |
|
Aim(s) of Course |
: |
The goal of this course is to provide a deep understanding of the fundamental principles and engineering tradeoffs involved in designing modern parallel computers as well as the programming techniques to effectively utilized these machines. |
|
Course Contents |
: |
Introduction, why parallel architecture?, fundamental design issues, shared memory multiprocessors, cache coherence, memory consistency, directory-based cache coherence, scalable cache coherence, directory-based approaches, memory-based directory protocols, cache-based directory protocols, interconnection network design, definitions, interconnection topologies, routing, switch design, flow control |
|
Language of Instruction |
: |
English |
|
Work Place |
: |
Classroom |
|
|
Course Outline /Schedule (Weekly) Planned Learning Activities |
| Week | Subject | Student's Preliminary Work | Learning Activities and Teaching Methods |
|
1 |
Course Presentation |
Chapter 1 |
Lecture and Demonstration |
|
2 |
Introduction |
Chapter 1 |
Lecture and Demonstration |
|
3 |
Amdahl´s Law |
Chapter 1 |
Lecture and Demonstration |
|
4 |
Cache Coherence I: Concept |
Chapter 2 |
Lecture and Demonstration |
|
5 |
Cache Coherence II: Snoopy Protocols I |
Chapter 2 |
Lecture and Demonstration |
|
6 |
Cache Coherence III: Snoopy Protocols II |
Chapter 2 |
Lecture and Demonstration |
|
7 |
Cache Coherence IV: Directory Protocols |
Chapter 2 |
Lecture and Demonstration |
|
8 |
Synchronization I: Concept |
Chapter 3 |
Lecture and Demonstration |
|
9 |
Synchronization II: Implementation |
Chapter 3 |
Lecture and Demonstration |
|
10 |
Memory Consistency I: Concept |
Chapter 4 |
Lecture and Demonstration |
|
11 |
Memory Consistency II: Classes |
Chapter 4 |
Lecture and Demonstration |
|
12 |
Memory Consistency III: Implementation |
Chapter 4 |
Lecture and Demonstration |
|
13 |
Interconnects |
Chapter 5 |
Lecture and Demonstration |
|
14 |
Power-Aware Parallel Computing |
Chapter 5 |
Lecture and Demonstration |
|
15 |
Final Exam |
n/a |
n/a |
|
16/17 |
Final Exam |
n/a |
n/a |
|
|
|
Required Course Resources |
| Resource Type | Resource Name |
| Recommended Course Material(s) |
Parallel Computer Architecture: A Hardware/Software Approach David Culler , J.P. Singh , Anoop Gupta
|
| |
| Required Course Material(s) | |
|
|
|
Assessment Methods and Assessment Criteria |
|
Semester/Year Assessments |
Number |
Contribution Percentage |
|
Mid-term Exams (Written, Oral, etc.) |
0 |
0 |
|
Homeworks/Projects/Others |
10 |
100 |
|
Total |
100 |
|
Rate of Semester/Year Assessments to Success |
40 |
|
|
Final Assessments
|
100 |
|
Rate of Final Assessments to Success
|
60 |
|
Total |
100 |
|
|
| Contribution of the Course to Key Learning Outcomes |
| # | Key Learning Outcome | Contribution* |
|
1 |
Reaches wide and deep knowledge through scientific research in the field of computer engineering, evaluates, implements, and comments. |
5 |
|
2 |
Describes and uses information hidden in limited or missing data in the field of computer engineering by using scientific methods and integrates it with information from various disciplines. |
5 |
|
3 |
Follows new and emerging applications of computer engineering profession, if necessary, examines and learns them |
5 |
|
4 |
Develops methods and applies innovative approaches in order to formulate and solve problems in computer engineering. |
5 |
|
5 |
Proposes new and/or original ideas and methods in the field of computer engineering in developing innovative solutions for designing systems, components or processes. |
5 |
|
6 |
Designs and implements analytical modeling and experimental research and solves the complex situations encountered in this process in the field of Computer Engineering |
4 |
|
7 |
works in multi disciplinary teams and takes a leading role and responsibility. |
3 |
|
8 |
Learns at least one foreign language at the European Language Portfolio B2 level to communicate orally and written |
4 |
|
9 |
Presents his/her research findings systematically and clearly in oral and written forms in national and international meetings. |
0 |
|
10 |
Describes social and environmental implications of engineering practice. |
4 |
|
11 |
Considers social, scientific and ethical values in collection, interpretation and announcement of data. |
0 |
|
12 |
Acquires a comprehensive knowledge about methods and tools of computer engineering and their limitations. |
5 |
| * Contribution levels are between 0 (not) and 5 (maximum). |
|
|
| Student Workload - ECTS |
| Works | Number | Time (Hour) | Total Workload (Hour) |
| Course Related Works |
|
Class Time (Exam weeks are excluded) |
14 |
3 |
42 |
|
Out of Class Study (Preliminary Work, Practice) |
14 |
2 |
28 |
| Assesment Related Works |
|
Homeworks, Projects, Others |
10 |
5 |
50 |
|
Mid-term Exams (Written, Oral, etc.) |
0 |
0 |
0 |
|
Final Exam |
1 |
25 |
25 |
|
Total Workload: | 145 |
| Total Workload / 25 (h): | 5.8 |
| ECTS Credit: | 6 |
|
|
|