This course teaches learners (industry professionals and students) the fundamental concepts of parallel programming in the context of Java 8. Parallel programming enables developers to use multicore computers to make their applications run faster by using multiple processors at the same time. By the end of this course, you will learn how to use popular parallel Java frameworks (such as ForkJoin, Stream, and Phaser) to write parallel programs for a wide range of multicore platforms including servers, desktops, or mobile devices, while also learning about their theoretical foundations including computation graphs, ideal parallelism, parallel speedup, Amdahl's Law, data races, and determinism.
This course is part of the Parallel, Concurrent, and Distributed Programming in Java Specialization
Offered By

About this Course
Could your company benefit from training employees on in-demand skills?
Try Coursera for BusinessSkills you will gain
- Dataflow
- Parallel Computing
- Java Concurrency
- Data Parallelism
Could your company benefit from training employees on in-demand skills?
Try Coursera for BusinessOffered by
Syllabus - What you will learn from this course
Welcome to the Course!
Task Parallelism
Functional Parallelism
Talking to Two Sigma: Using it in the Field
Loop Parallelism
Data flow Synchronization and Pipelining
Continue Your Journey with the Specialization "Parallel, Concurrent, and Distributed Programming in Java"
Reviews
- 5 stars68.90%
- 4 stars23.02%
- 3 stars6.52%
- 2 stars1.11%
- 1 star0.42%
TOP REVIEWS FROM PARALLEL PROGRAMMING IN JAVA
I found this course very useful. I can see the utilisation of parallel computing in many fields of software development industry. So it's really useful for developers.
Excellent Course.I always wanted a good course on java concurrency and parallel programming.And finish->async, isolated, forAsync constructs are awesome.I have learnt much from this course.
Very relevant concepts, explained beautifully by a very experienced professor. The assignments were good, but they could involve more programming for more practice!
I found the explanation of how to precisely code phasors lacking as the Thread stuff was already provided in sample code and never explained. Quite satisfied with the rest of the course though.
About the Parallel, Concurrent, and Distributed Programming in Java Specialization

Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
More questions? Visit the Learner Help Center.