Main Page     Information on the Institution     Degree Programs     General Information for Students     Türkçe  

 DEGREE PROGRAMS


 Associate's Degree (Short Cycle)


 Bachelor’s Degree (First Cycle)


 Master’s Degree (Second Cycle)

  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