Chevron Left
Retour à Parallel Programming in Java

Avis et commentaires pour l'étudiant pour Parallel Programming in Java par Université de Rice

4.6
676 notes
136 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 :

76 - 100 sur 136 Examens pour Parallel Programming in Java

par Qingbo Z

Nov 15, 2019

This course has lots of invaluable insights, in-depth materials from high level concepts to practice. I highly recommend this course to all programmers who want to familiarize themselves with Java parallel programming.

par Ivan K

Jan 16, 2019

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

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

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

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

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

par Rhijul M

Dec 23, 2018

Although this was a very excellent course to understand various API's and methods that are exposed by Java SDK's (RecursiveTasks, Fork/Join Framework etc) and touched on very important multi-core parallelism aspects, I was left wanting for more fundamental explanations regarding how parallelism works under the hood (How the thread works, how the signalling between barrier synchronisation happens etc). Thanks, none the less. Looking forward to next course.

par Isaac A

Dec 27, 2018

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

par vini g

Apr 06, 2019

Would like more assignments and examples.

par Wei H

Jul 14, 2018

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

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

par 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!

par Marcin K

Nov 23, 2017

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

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

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

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

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

par Alexander S

Nov 12, 2017

Good course but very easy assignments

par Johannes D

Sep 29, 2017

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

par Arun N

Sep 17, 2017

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

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

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

par Vishal V

Mar 10, 2018

Great Learning and understanding the parallelism concepts in java

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 Андрей С

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.