Video description
In this Concurrent and Parallel Programming Concepts training course, expert author Martin Kalin will teach you everything you need to know to master concurrent and parallel programming. This course is designed for users that already a basic working knowledge of programming concepts.
You will start by learning about concurrency and parallelism, then jumping into learning the basics of multiprocessing. From there, Martin will teach you about multiprocessing through richer code examples, as well as multithreading through richer code examples. This video tutorial also covers thread-safety and high-level concurrent types in Java, options for thread synchronization and cooperation, and concurrency and non-blocking I/O. Finally, you will learn the basics of parallelism, parallelism and performance, and parallelism and distributed computing.
Once you have completed this computer based training course, you will have learned everything you need to know about concurrent and parallel programming. Working files are included, allowing you to follow along with the author throughout the lessons.
Table of contents
- Introduction
- Concurrency And Parallelism
-
Multiprocessing Basics
- Overview Of The First Multiprocessing Example - Unnamed Pipes In C
- Source Code For The First Multiprocessing Example
- Overview Of The Second Multiprocessing Example - Named Pipes In C
- Source Code For The Second Multiprocessing Example
- Multiprocessing The Nginx Web Server
- Overview Of Execing And Forking Options In Multiprocessing
- Source Code For The Execing Multiprocessing Example
- Process Tracking And Management
-
Multiprocessing Through Richer Code Examples
- Multiprocessing In Node JS
- Interprocess Communication Mechanisms - IPC
- Overview Of The Shared-Memory IPC Example
- Source Code For The Shared-Memory IPC Example
- The Nginx Web Server And Unicorn App Server Architecture
- Overview Of The Three Sample Web Servers
- The Multiprocessing Web Server
- Exercise - Which Process Prints What And Why?
- Upsides And Downsides Of Multiprocessing
- Multithreading Basics
-
Multithreading Through Richer Code Examples
- The Miser-Spendthrift Problem In C
- Fixing The Miser-Spendthrift Problem In C
- Overview Of The Miser-Spendthrift Problem In Java
- Miser-Spendthrift Examples In Java
- Thread Synchronization As Cooperation
- The Thread-Safe Stack Example In Java
- The Multithreading Web Server
- Chapter Review
- Exercise - Thread Pools And Thread Cooperation
- Race Condition Exercise
-
Thread-Safety And High-Level Concurrent Types In Java
- Thread Safety Through High-Level Thread-Safe Data Types
- Overview Of The BlockingQueue Example In Java
- The BlockingQueue Example - The Java Code
- Overview Of The Semaphores Example
- The Semaphore-Executor Code Example In Java
- Overview Of The Fork-Join Framework In Java
- The Filesearcher Example In Java
- Futures And Callables In Java - A Code Example
- Thread Safety Through Immutable Types And Pure Functions
- Chapter Review
- Exercise - A Producer-Consumer Program With Thread-Safe Channels
- Options For Thread Synchronization And Cooperation
-
Concurrency And Non-Blocking I-O
- What Exactly Is Non-Blocking I-O?
- Non-Blocking I-O As A Concurrency Mechanism
- Overview Of The Epoller Example In C
- The Epoller Code Modules In C
- Overview Of The Non-Blocking I-O Example In Java
- The Non-Blocking Server Code - Java
- The Non-Blocking Client Code - Java
- Overview Of The Polling Server Web Server
- The Code For The Polling Server
- Exercise - Polling Multiple Data Sources Using Non-Blocking I-O
-
Parallelism Basics
- Overview Of Parallelism Beyond Concurrency
- Flynn Taxonomy As A Starting Point
- A SIMD Auto Vectorization Code Example In C
- The Parallel Instructions Of The SIMD Example In The Assembly Code
- Timing The Performance Boost From Parallelism - A Code Example
- Overview Of The OpenMP Framework For Auto Vectorization
- OpenMP Basics In A Code Example
- The Miser-Spendthrift Problem In OpenMP
- SIMD Programming In OpenMP
- Wrap Up On Data Parallelism - SIMD Basics
- Parallelism And Performance
-
Parallelism And Distributed Computing
- Distributed Systems And Parallelism Overview
- Map-Reduce Overview
- Java 8 Support For Map-Reduce Operations
- Map-Reduce Code Example - The Book Index Program In Java
- OpenMPI Overview
- OpenMPI Example - MPI Basics
- OpenMPI Example - MPI Message Passing
- Wrap Up Of Distributed Systems And Parallelism
- Exercise - Code An OpenMPI Solution To The Book Index Map-Reduce Problem
- Conclusion
Product information
- Title: Concurrent and Parallel Programming Concepts
- Author(s):
- Release date: October 2015
- Publisher(s): Infinite Skills
- ISBN: 9781771375313
You might also like
video
Java Concurrency and Multithreading in Practice
Improve the performance of your application by using modern Java's multithreading features About This Video Increase …
book
C++ Concurrency in Action, Second Edition
This bestseller has been updated and revised to cover all the latest changes to C++ 14 …
book
Parallel and High Performance Computing
Complex calculations, like training deep learning models or running large-scale simulations, can take an extremely long …
video
Design Patterns (Clean Coders Video Series)
Overview Get ready for something very different. This ain't no screen cast. This ain't no talkin' …