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

First Order Optical System Design
University of Colorado Boulder via Coursera
Arithmetic Circuit Complexity
Indian Institute of Technology Kanpur via Swayam
Introduction to Quantum Computing for Everyone
The University of Chicago via edX
Dynamic Programming, Greedy Algorithms
University of Colorado Boulder via Coursera
Linear Algebra
YouTube