YoVDO

Parallel and Concurrent Programming with Java 2

Offered By: LinkedIn Learning

Tags

Java Courses Merge Sort Courses Parallel Programming Courses Concurrent Programming Courses Matrix Multiplication Courses

Course Description

Overview

Take a deeper dive into the key mechanisms for writing concurrent and parallel programs. Discover how to parallelize a sequential program.

Syllabus

Introduction
  • Learn parallel programming basics
  • What you should know
  • Exercise files
1. Synchronization
  • Condition variable
  • Condition variable: Java demo
  • Producer–consumer
  • Producer–consumer: Java demo
  • Semaphore
  • Semaphore: Java demo
2. Barriers
  • Race condition
  • Race condition: Java demo
  • Barrier
  • Barrier: Java demo
  • CountDownLatch: Java demo
3. Asynchronous Tasks
  • Computational graph
  • Thread pool
  • Thread pool: Java demo
  • Future
  • Future: Java demo
  • Divide and conquer
  • Divide and conquer: Java demo
4. Evaluating Parallel Performance
  • Speedup, latency, and throughput
  • Amdahl's law
  • Measure speedup
  • Measure speedup: Java demo
5. Designing Parallel Programs
  • Partitioning
  • Communication
  • Agglomeration
  • Mapping
6. Challenge Problems
  • Welcome to the challenges
  • Challenge: Matrix multiply in Java
  • Solution: Matrix multiply in Java
  • Challenge: Merge sort in Java
  • Solution: Merge sort in Java
  • Challenge: Download images in Java
  • Solution: Download images in Java
Conclusion
  • Next steps
  • Additional resources

Taught by

Olivia Chiu Stone and Barron Stone

Related Courses

Learn Sorting Algorithms with Python
Codecademy
Understanding Sorting Algorithms
freeCodeCamp
Python Parallel and Concurrent Programming Part 2
LinkedIn Learning
Web Portfolio Projects: Sortable Table and Arrays
LinkedIn Learning
Programming 102: Think Like a Computer Scientist
Raspberry Pi Foundation via FutureLearn