Parallel Programming in a Nutshell
DescriptionParallel Programming has become ubiquitous in the modern computing landscape. Whether it is speeding up the runtime of a simple loop by using multiple threads or using multiple processors for computations across a network, some kind of parallel programming is being used to speed up computations and/or optimize modern algorithms. Because Parallel Programming has become so prevalent in the area of computing, understanding how to develop software that takes advantage of parallelism is an extremely important skill for computer scientists. This presentation introduces the topic of Parallel Programming, giving a high-level overview of the different kinds of parallel programs (e.g. shared vs. distributed memory) and the most important things to consider when programming in parallel. We will discuss some common pitfalls of parallel programming in order to understand when it should and should not be used for a particular algorithm. The presentation concludes with a demonstration of parallel implementations of several common algorithms.
Event Type
TimeFriday, September 20th1:30pm - 2:30pm PDT