Parallel and distributed computing is a type of computation in which many calculations are performed simultaneously, as opposed to sequentially (one after the other). Understanding of the fundamental principles and engineering trade-offs involved in designing modern parallel computing systems is necessary to effectively utilize such systems.
To study Parallelism and Distributed Systems, students need to have proficiency in Computer Programming and knowledge in Computer Systems
Stanford University
Winter 2023
This advanced course delves into the complexities of programming concurrent and reactive systems. It provides a firm theoretical foundation for understanding temporal logics like LTL and CTL, and the main verification techniques including deductive and algorithmic. The course necessitates a background in mathematical logic and familiarity with Algol-like languages.
No concepts data
+ 5 more conceptsUC Berkeley
Winter 2013
This course provides basic theoretical and practical foundations of distributed systems. Students learn about system models, safety and liveness of protocols, different failure models, reliable group communication abstractions, and more. It utilizes a textbook and additional research paper-based lectures.
No concepts data
+ 17 more conceptsUC Berkeley
Spring 2020
The course addresses programming parallel computers to solve complex scientific and engineering problems. It covers an array of parallelization strategies for numerical simulation, data analysis, and machine learning, and provides experience with popular parallel programming tools.
No concepts data
+ 36 more conceptsStanford University
Fall 2022
This course explores advanced topics in supercomputer programming, with a focus on tasking runtimes. It offers a survey of programming models, supercomputer architectures, and in-depth lessons on tasking. Students will gain hands-on experience in cuNumeric and Regent programming languages. While it doesn't assume extensive background, good programming skills are required.
No concepts data
+ 16 more conceptsStanford University
Fall 2022
Focused on principles and trade-offs in designing modern parallel computing systems, this course also teaches parallel programming techniques. It is intended for students looking to understand both parallel hardware and software design. Prerequisite knowledge in computer systems is required.
No concepts data
+ 45 more concepts