Parallel Design Patterns and Stream Parallelism
Offered By: ACCU Conference via YouTube
Course Description
Overview
Explore parallel design patterns and stream parallelism in this ACCU 2018 conference talk. Dive into GrPPI (Generic and reusable Parallel Patterns Interface), an experimental library for expressing parallelism through patterns. Learn about stream parallelism, its applications in video processing and tweet sentiment analysis, and the composability of streaming patterns. Discover GrPPI's support for multiple back-ends, including sequential, OpenMP, IntelTBB, and ISO C++ threads. Gain insights into various parallel programming concepts, including data set patterns, sequence mapping, reductions, stencil patterns, divide-and-conquer algorithms, pipelines, farm patterns, and stream reduction. Examine real-world applications such as Brain MRI evaluation and performance metrics like frames per second. Access the open-source GrPPI library on GitHub to apply these concepts in your own projects.
Syllabus
Intro
Sequential Programming versus Parallel Programming
Software design
Adding two vectors
Example: Transforming a sequence
Execution model properties
A classification
Patterns on data sets
Single sequences mapping
Multiple sequences mapping
Heterogeneous mapping
Homogeneous reductions
Cannonical map reduce
Stencil pattern
Single sequence stencil
Divide conquer pattern
A patterned merge sort
Standalone pipeline
Generators
Nested pipelines
Nested pipelings
Piecewise pipelines
Farm pattern
Ordering
Queueing properties
Filter pattern
Stream reduction pattern
Windowed reductions
Performance: frames per second
Brain MRI (Magnetic Resonance Imaging)
MRI Evaluation
Taught by
ACCU Conference
Related Courses
Computer ArchitecturePrinceton University via Coursera High Performance Scientific Computing
University of Washington via Coursera Parallel Programming Concepts
openHPI Введение в параллельное программирование с использованием OpenMP и MPI
Tomsk State University via Coursera Parallel programming
École Polytechnique Fédérale de Lausanne via Coursera