Chevron Left
Back to Parallel Programming in Java

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

4.6
stars
866 ratings
180 reviews

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

LG

Dec 13, 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.

SV

Aug 28, 2017

Great course. Introduces Parallel Programming in Java in a gentle way.\n\nKudos to Professor Vivek Sarkar for simplifying complex concepts and presenting them in an elegant manner.

Filter by:

126 - 150 of 178 Reviews for Parallel Programming in Java

By Sagnik D

May 26, 2020

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.

By Krishna K

Jun 19, 2018

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.

By Elias R

Jul 28, 2019

Very good and comprehensive video lectures! Sometimes the auto-grader results from Coursera fluctuate from one submission to the other, but overall it was a really interesting course.

By Valdas Z

Nov 07, 2017

Very useful course about parallel programming theory and practice.

Could be less examples with custom libraries instead of standard java features looking to practical usage at work.

By Vaibhav G

Jun 03, 2020

Very well structured, taught and paced course, I only wish it had a passing project which would have given us more hands on practice and insights to parallel programming.

By Sebastiaan V

Sep 24, 2018

The information found in this course is great. The first and second mini projects were of average difficulty, but the third and fourth mini projects were too trivial.

By Naveen K

Jul 05, 2020

Explanation of theory was best. But Assignments lacked clarity. For example, we might expect little more clarification about threads In order to use them effectively

By Mehmet A B

Jan 28, 2018

Instructor is awesome. However instead of sharing ready libraries for parallelism (like forall loop) in section 3, native codes should be used for forall loops etc.

By Sarvasva R

Aug 30, 2017

Introduction to theoretical concepts was good, but not very deep. The exercises didn't really contribute much to my understanding of the course material in general.

By yasmin

Feb 28, 2019

This course explain the concepts in a great way but the exercises

needs to be more rich with problems to enhance our understanding to the concepts.

By Thatiana F d O

Sep 05, 2017

A great course, but I think it would be even better if only the structures from Java 8 were used, and not the functons build by the Rice University.

By Akshat A

Sep 06, 2018

Great material, well arranged course flow, willing teacher, and nice project snippets. More coding samples and projects could have been included.

By Shady I

Sep 03, 2017

The courses covers broadly the new synchronization primitives in Java8. It is very clear and demonstrative. It is very shallow though.

By Vitalii D

Apr 19, 2019

Thank you for this course! Really interesting, but lacks the real world examples and has little number of tasks to complete.

By Marcin K

Nov 23, 2017

More details on concurrency would be a huge benefit to course and students (even as optional material)

By Johannes D

Sep 29, 2017

Good course that gave you a good overview. The code assignments code have been a little more advanced.

By Arun N

Sep 17, 2017

Simple delivery, very manageable work load, and still something tangible to take away from the course.

By Ivan K

Jan 16, 2019

It was useful and interesting course, however, I'd like to see more complicated practical tasks

By Xiao X

Jan 25, 2018

-1 star due to the too-easy homework.

I wish the homework can be harder and more challenging.

By Fu S W

Aug 14, 2017

it'll be perfect if mini projects can deeper test what we've learned in the class.

By Isaac A

Dec 27, 2018

Enjoyed this course a lot! Wished the projects were a little more substantial

By prabhakar k

May 28, 2020

thanks to coursera.to give a simple way to solve parallel programming

By Prabhakar k

May 28, 2020

i learn new way to do parallel programming in java.thanks to coursera

By Wei H

Jul 14, 2018

the lecturer should wear black shirt to make the video more readable.

By Vishal V

Mar 10, 2018

Great Learning and understanding the parallelism concepts in java