Chevron Left
返回到 Parallel Programming in Java

学生对 莱斯大学 提供的 Parallel Programming in Java 的评价和反馈

4.6
1,128 个评分
241 条评论

课程概述

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

热门审阅

LG

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.

SV

Aug 27, 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.

筛选依据:

126 - Parallel Programming in Java 的 150 个评论(共 239 个)

创建者 Леонид С

Oct 8, 2020

Excellent course

创建者 Carlos A R

Oct 23, 2019

Really didactic!

创建者 chen x

Oct 15, 2017

Very impressive!

创建者 Sudharaka P

Nov 6, 2018

Great course!!!

创建者 Filipe S V

Aug 8, 2020

Learned a lot.

创建者 Guillermo D

Jan 2, 2019

Great Course!!

创建者 Вадим Д

Nov 9, 2020

Grate course!

创建者 José A X C

Nov 9, 2017

great course.

创建者 Russell G

Aug 14, 2017

Great course!

创建者 Naveenkumara J

Apr 21, 2021

good content

创建者 Light0617

Nov 1, 2018

wonderful!!!

创建者 vaibhav j

Sep 21, 2017

Great Course

创建者 Jasur A

Jun 6, 2020

It is clear

创建者 Мухин С А

Sep 25, 2018

Всё хорошо

创建者 s v s g

Apr 30, 2020

very good

创建者 Marcos N F

May 3, 2019

Excelente

创建者 ASTHA B

Sep 29, 2021

A​wesome

创建者 Jonathan H

Sep 27, 2018

awesome

创建者 Виталий Д

Nov 16, 2020

Good!

创建者 Burhan u H Z

Jan 21, 2021

Good

创建者 John A

Sep 2, 2020

A great course to learn the basics of thread-level parallel programming using the Java API. I had never used ForkJoin or other parallelism libraries which were recently added to the Java API before, and from taking this class I was able to gain both practical experience with these libraries and learn the theory behind their use. The lectures were well organized and effectively transitioned between examples and topics, making the content easy to understand. The quizzes were comprehensive enough to completely test your understanding of the material but still had a reasonable difficulty.

The weakest part of this class was probably the mini-projects. Some of them were too brief or trivial to get sufficient experience with the topics in this course. Solutions are also mainly evaluated based on execution time, which could vary significantly between trials of the same program -- enough that the same code could pass the autograder on some runs and fail on others.

In spite of this, I still would recommend this class to anyone who wants to learn about software parallelism. This course teaches a variety of ways to use parallelism to improve performance, as well as analyzing the challenges and obstacles in doing so. I have not taken the other two courses in this specialization yet, though I plan to soon.

创建者 Mike D

Nov 6, 2017

This course has a good combination of clear lectures, helpful textual summaries, reasonable/helpful quizes, and decent weekly projects. If anything, I wish that the projects were a little more challenging. The first three were fairly easy and I wish that we had been required to implement them from scratch rather than having the starting version which required only minor modifications. The last project assignment was a little tricky because the lectures didn't cover all the details of phasers in sufficient detail, so studying additional documentation was required. Overall, I learned a lot and it was time well spent.

创建者 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.

创建者 Toriola O

Nov 13, 2020

I enjoyed the course and hoping to finish the specialization. Conclusively, my understanding of Parallelism has improved further.

It would have been 5-stars but there wasn't enough emphasis on the effect of hardware on the mini projects which in most cases led to avoidable waste of time of the course assignments.

My Advice to all current and prospective students is to be agile by uploading assignment incrementally to Coursera grader.

创建者 Dipen L

Dec 28, 2020

Just the grader really, sometimes when iti's under heavy use then the results vary - but apart from that the videos are really special, you have to pay attention to detail when the videos are this compact - but that is what makes it really good. The assignments test what you've learnt and can sometimes be on the easy side - but that just means practicing on other things outside of course work. A truly wonderful learning experience.