Chevron Left
Retour à Parallel Programming in Java

Avis et commentaires pour d'étudiants pour Parallel Programming in Java par Université de Rice

4.6
étoiles
899 évaluations
190 avis

À propos du cours

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

Meilleurs avis

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.

Filtrer par :

151 - 175 sur 188 Avis pour Parallel Programming in Java

par Arun N

Sep 17, 2017

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

par Ivan K

Jan 16, 2019

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

par Xiao X

Jan 25, 2018

-1 star due to the too-easy homework.

I wish the homework can be harder and more challenging.

par Fu S W

Aug 14, 2017

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

par Isaac A

Dec 27, 2018

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

par prabhakar k

May 28, 2020

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

par Prabhakar k

May 28, 2020

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

par Wei H

Jul 14, 2018

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

par Vishal V

Mar 10, 2018

Great Learning and understanding the parallelism concepts in java

par satwik b

May 01, 2020

please be more elaborate regarding programming assignments

par Prasanth R

Feb 10, 2018

The homework was too simple, could use better examples.

par Cong X

Oct 16, 2017

Overall informative but way too easy on the projects...

par Xiao L

May 30, 2020

Programming assignments are a bit too easy

par vini g

Apr 06, 2019

Would like more assignments and examples.

par Alexander S

Nov 12, 2017

Good course but very easy assignments

par Ping G

Sep 21, 2019

great course, learn a lot!

par TAHA K

Aug 18, 2020

Good course !

par Moturu N

Dec 09, 2019

Nice course

par Divam K

Oct 12, 2019

Ok

par Anton M

Apr 18, 2020

While i've definitely learned something new, there are some frustration points:

> Material presentation and abuse of pseudo code. Some concepts presented at very high abstraction level without going into details of implementation. Part of course relay heavily on custom parallel programming library, writing in java while other parts are given in built-in Java framework. In lecture summary code is presented as pseudo code, so there are not way to run and see that it does.

> Length of the course. Most of weeks has about 30 minutes of videos in total.

> Issues with grader. Grader is not reliable, you can find that same code sent twice will result in fail and pass. Also, when running test locally, it may fail, while passing when send for real (in my case it was because test code from assignment incorrectly gave number of processes when hyper-threading is enabled)

> Easy exercises. Apart from grader issues, assignment itself do not gave any challenge. Assignment of one week can be passed by just changing signature of method to right one (literally just few characters change)

par Marcos N A

Jun 14, 2020

Too much abstract pseudocode for a Java course. In the third test, I had implemented my own solution because no documentation given for that "pcdp framework", also, my implementation run faster, so I have some doubts about that "framework".

The grader is not accurate, I spent some hours trying to find the way to improve the code in the last miniproject because the one I uploaded failed the 4 cores test, but I uploaded the same again and passed the test...

I suggest to improve examples about Phasers, maybe it would be better to introduce low complexity problems in the examples and a step by step explanation on how it works and... where did the threads came from? They never explain threads in this course.

Definitively, this course can't be called a "specialization" but it is a good course for starters.

par Samuele M

Apr 12, 2018

Course is interesting, but lacks in contents: just few patterns are explained, and few concepts about parallelism, and there are very little details about further algorithms. Assignments, projects in particular, are quite useless or incredibly easy, or need usage or knowledge of libraries not explained/used in course, and included in "optional readings". Lessons are really clear (bravo! to the Professor), but quite short, since whole course doesn't reach 2 hours of lesson. I definitively think that course can be improved with more contents.

par Helge S

Feb 05, 2020

Interesting, but the presentations, support materials and programming exercises have some issues.

I'm not fond of the usage of pseudo code, when this is a Java course. I want the example to use existing Java libraries, preferably from the standard Java JDK.

For the exercises, in addition to unit tests that test the performance of the code, it would be valuable to have tests that run quickly, and test that the code computes correctly. For the Week 4, the only provided test took some 9 minutes to run. A unit test should take a second at most.

par Dhiresh A J

Dec 30, 2017

Lectures were adequate to understand the basic concepts/syntax and where and how to use them, but did not go deep into the underlying working.

The mini projects weren't that helpful since the assignments were the same examples as shown in the lecture, and the TODOs were generally just a couple of lines, leaving us with with little to do.

By the end of the course, I got to know the different Java util classes to use to for parallelism.

par Daniel B

Apr 17, 2020

Helpful course but could be much improved by a bit longer lectures and programming exercises covering more Java material, avoiding mixing in so much on proprietary library concepts and focusing on standard Java parallel programming concepts instead as well as making source code demonstrations in a bit larger font to be able to view on a phone