Chevron Left
Back to Parallel Programming in Java

Learner Reviews & Feedback for Parallel Programming in Java by Rice University

1,137 ratings

About the Course

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. Why take this course? • All computers are multicore computers, so it is important for you to learn how to extend your knowledge of sequential Java programming to multicore parallelism. • Java 7 and Java 8 have introduced new frameworks for parallelism (ForkJoin, Stream) that have significantly changed the paradigms for parallel programming since the early days of Java. • Each of the four modules in the course includes an assigned mini-project that will provide you with the necessary hands-on experience to use the concepts learned in the course on your own, after the course ends. • During the course, you will have online access to the instructor and the mentors to get individualized answers to your questions posted on forums. The desired learning outcomes of this course are as follows: • Theory of parallelism: computation graphs, work, span, ideal parallelism, parallel speedup, Amdahl's Law, data races, and determinism • Task parallelism using Java’s ForkJoin framework • Functional parallelism using Java’s Future and Stream frameworks • Loop-level parallelism with extensions for barriers and iteration grouping (chunking) • Dataflow parallelism using the Phaser framework and data-driven tasks Mastery of these concepts will enable you to immediately apply them in the context of multicore Java programs, and will also provide the foundation for mastering other parallel programming systems that you may encounter in the future (e.g., C++11, OpenMP, .Net Task Parallel Library)....

Top reviews


Dec 12, 2017

This is a great course in parallel programming. The videos were very clear, summaries reinforced the video material and the programming projects and quizzes were challenging but not overwhelming.


Aug 27, 2017

Great course. Introduces Parallel Programming in Java in a gentle way.

Kudos to Professor Vivek Sarkar for simplifying complex concepts and presenting them in an elegant manner.

Filter by:

1 - 25 of 240 Reviews for Parallel Programming in Java

By Felipe R

Mar 11, 2018

By Pavel B

Nov 18, 2017

By Oleksandr V

Mar 15, 2019

By Rongpeng L

Nov 12, 2018

By Roman H

Oct 24, 2021

By Pratik S

Apr 15, 2021

By Talgat Q

Apr 21, 2018

By Julie L

Dec 14, 2019

By Nikita S

Mar 4, 2022

By Pushkar S

May 3, 2021

By Manmeet D

Jan 30, 2022


Jul 20, 2021

By Vladislav L

Mar 18, 2021

By Riccardo P

Jul 26, 2019

By David L

Aug 27, 2017

By Ryan B

Sep 18, 2017

By Santiago M Z O

May 30, 2020

By Fernando L C

Feb 6, 2020

By Raymond S

Nov 16, 2021

By Trilobiet I

Mar 7, 2019

By Josh S

Feb 9, 2018

By Sonu M

Dec 3, 2018

By 남그롬간서치

Feb 8, 2019

By Hannah V S (

Jun 28, 2018

By Prathamesh B

Nov 22, 2020