كلية الهندسة - جامعة عين شمس, الرئيسية
Parallel and Distributed Algorithms
What Will Learn?
-
Course AimsFrom smartphones to multi-core CPUs and GPUs, to the world's largest supercomputers, parallel processing is ubiquitous in modern computing. Upon completing this course, the student will have learned, through appropriate classroom and laboratory experiences, the following: - A deep understanding of the fundamental principles and engineering trade-offs involved in designing modern parallel and distributed computing systems. - The key machine performance characteristics, and how they affect software design. - The fundamentals of parallel and distributed programming. - The parallel programming techniques necessary to effectively utilize these machines. - The basic algorithmic, programming, and software engineering issues associated with the development of parallel and distributed applications. - Evaluating parallel programs and comparing the time complexity of parallel and sequential applications.
-
Course Goals
- Decent Work and Economic Growth
- Industry, Innovation and Infrastructure
- Sustainable Cities and Communities
Requirements
CSE362
Description
-
English Description
Introduction to the analysis, design and implementation of parallel and distributed algorithms. Different types of parallel algorithms, Distributed implementation techniques, Related communication protocols and infrastructure. Problems of synchronization. Timing. Agreements. Fault tolerance. Parallel graph algorithms. Analysis of parallel algorithms regarding computational and communication complexities. Different implementation techniques using GPUs, multi-core, multi-processors, and multi-computers. -
Arabic Description
Introduction to the analysis, design and implementation of parallel and distributed algorithms. Different types of parallel algorithms, Distributed implementation techniques, Related communication protocols and infrastructure. Problems of synchronization. Timing. Agreements. Fault tolerance. Parallel graph algorithms. Analysis of parallel algorithms regarding computational and communication complexities. Different implementation techniques using GPUs, multi-core, multi-processors, and multi-computers.
-
قسمهندسة الحاسبات والنظم
-
الساعات المعتمدة3
-
الدرجاتالإجمالي ( 100 ) = نصف العام (25) + tr.Major Assessment (30 = tr.Industry 15% , tr.Project 0% , tr.Self_learning 5% , tr.Seminar 15% ) + tr.Minor Assessment (5) + درجة الامتحان (40)
-
الساعاتساعات المحاضرة: 2, ساعات التعليم: 2, ساعات المعمل: 0
-
Required SWL100
-
Equivalent ECTS4
- - “Introduction to Parallel Computing: From Algorithms to Programming on State-of-the-Art Platforms”, by Roman Trobec, Boštjan Slivnik, Patricio Bulić, Borut Robič, (2018).
- - “An Introduction to Parallel Programming”, by Peter S. Pacheco, 2nd edition (2021).
- - “Introduction to Parallel Computing", Vipin Kumar, George Karypis, Anshul Gupta, Ananth Grama, Addison-wesley Professional, ISBN: 0201648652 (2003) - Introduction to Parallel Computing: From Algorithms to Programming on State-of-the-Art Platforms, by Roman Trobec, Boštjan Slivnik, Patricio Bulić, Borut Robič, (2018).