Chevron Left
Parallel Programming in Java に戻る

ライス大学(Rice University) による Parallel Programming in Java の受講者のレビューおよびフィードバック

4.6
842件の評価
172件のレビュー

コースについて

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)....

人気のレビュー

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.

SP

May 17, 2020

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.

フィルター:

Parallel Programming in Java: 101 - 125 / 170 レビュー

by lowell s

Feb 28, 2019

Excellent lectures and provides good understanding of some theory behind Parallel Programming. The professor is a good lecturer and has a great format. Some assignments are very difficult due to the confusion between lecture notes which have errors and differences between the lecture and the notes. But well worth taking the course and understanding how to take advantage of multi-core processing.

by Syed A u R

Nov 05, 2017

Having come from Python world, i have learned valuable concepts in parallel programming and related Java APIs, surely the APIs are much more elegant and powerful in Java. i was disappointed by Week's 3 and 4's assignment task, they were too easy, nevertheless learned a great lot of information. Excellent course for someone who is looking to get into parallel programming!

by Krishna A

Apr 04, 2018

Learnt a lot about parallel programming and the facilities offered in Java for the same. The best part is the videos are short and nice. However, I'm echoing some of the common sentiment, that the assignments (barring assignment 2) are too trivial, and sometimes are not clear what to do. They can be surely improved, so that students can deepen their understanding.

by Андрей С

Oct 28, 2017

This course is a good introduction to parallel programming,

but i noticed a number of shortcomings.

Some themes are not reflected in mini-projects:

- memoization in week 1;

- data flow and pipeline parallelism.

The mini-project for week 3 is too easy.

Some questions in the quiz in week 4 does not match the contents of the course.

by Ashwin K

Jun 12, 2020

I feel the course can have more theoretical foundations included as well. And the assignments should be more challenging and more explanatory as well to reinforce concepts in a better way. But otherwise, really good course to get started understanding async programming constructs. Helped me clear a lot of doubts that I had.

by Mitrofanov P

Nov 12, 2017

Tasks are too simple. All the information isn't covered in depth, so consider this course as a sort of introduction to the theory of parallel programming as well as many important Java language features. It gives you a basic idea and points you to the right direction in case you're interested in this complex topic.

by Diogene N

Oct 24, 2018

This course is a very nice introduction to parallel programming in Java. It highlights the key libraries to explores for production use. On thing I didn't like is that the programming assignments are a copy paste of the demonstration videos in the course. All in all I enjoyed taking this course!

by Antonio J M G

May 04, 2018

Great content, thank you very much for putting this together. I have enjoyed reviewing the fundamentals and learn more about the Phaser's API. My only suggestion will be to add more exercises, even if they are optional, so people can practice more the concepts introduced.

by Benjamin G J

Aug 06, 2018

The exercises are just a little short and I'd like to see, maybe, twice as many quizzes with a better connection to lecture notes, but the lectures are very enlightening, the subject matter is very interesting, and the exercises, though excessively sparse, are helpful.

by Alban D

Apr 15, 2019

Very interesting content: it is definitely useful to get into that topic. Mini projects are sometimes a bit light: what has to be done is so simple that it can be frustrating... or misleading (I would expect to have more than a single line to change sometimes).

by Saifuddin M

Oct 15, 2017

I liked the course. It introduced some of the concepts in parallel programming very well. I would suggest if it focuses more on Java implementations from the java.util.concurrent package like Countdown Latches and Cyclic Barriers it would be more helpful.

by Anton O

Dec 17, 2017

Good course. I've expected less theory and more practice, but all in all I'm happy with the course. Block about parallel streams was the most useful for me. On the other hand part about array multiplication was quiet useless from practical point of view.

by Abid A S

Apr 18, 2020

Was quite helpful... cleared many basic concepts in parallel programming ... but you should come up more industry oriented examples .. code samples uses rice university's own package in some examples..these could be done with regular java libraries

by Artur G

Aug 04, 2017

This course is quite a shot one. The lectures are condense and programming assignments are purely academic. However I still would suggest to take it if one wants to learn about high level abstraction upon parallel computing in Java.

by Cyril A

Jan 22, 2019

Materials are informative. Instructor is good. Good to have programming assignments to practice the material learned. Assignments after assignment 2 were a little light though. The first two assignments were at a good level though.

by erdem o

Dec 10, 2017

It was a useful course, but last two homeworks were exactly same as professor explained in demo implementations. I would expect them to take a bit more time and having a variety of easy/difficult tasks in each homework.

by Donghe X

Mar 17, 2019

Thanks for the course materials! I'm getting a lot of new knowledges from the course for cs fundamentals. I'd like to suggest to have more concrete examples to explain many concepts like SPAN, signal and put, etc.

by Jimmy C C

Jun 26, 2020

Great introduction to parallel programming. Lectures were clear, summaries were helpful, quizzes were not trivial, discussion forum is good, but the assignments' grading system could be improved.

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 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.