О курсе

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm. We'll start the nuts and bolts how to effectively parallelize familiar collections operations, and we'll build up to parallel collections, a production-ready data parallel collections library available in the Scala standard library. Throughout, we'll apply these concepts through several hands-on examples that analyze real-world data, such as popular algorithms like k-means clustering.
Learning Outcomes. By the end of this course you will be able to:
- reason about task and data parallel programs,
- express common algorithms in a functional style and solve them in parallel,
- competently microbenchmark parallel code,
- write programs that effectively use parallel collections to achieve performance
Recommended background: You should have at least one year programming experience. Proficiency with Java or C# is ideal, but experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient. You should have some familiarity using the command line. This course is intended to be taken after Functional Program Design in Scala: https://www.coursera.org/learn/progfun2....

Лучшие рецензии

AL

Apr 24, 2018

Filled StarFilled StarFilled StarFilled StarFilled Star

The course is fairly advanced and you would need to review the materials many times to understand the concept. The assignments are definitely fun and not as straightforward as other courses.

RC

Aug 25, 2017

Filled StarFilled StarFilled StarFilled StarFilled Star

Superb study material. Learnt a lot during this course. I am not much into mathematical stuff, but got a hang of how to break problems and improve efficiency through parallelism.

Фильтр по:

101–125 из 228 отзывов о курсе Параллельное программирование

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: ravi c

•

Aug 25, 2017

Superb study material. Learnt a lot during this course. I am not much into mathematical stuff, but got a hang of how to break problems and improve efficiency through parallelism.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Xiongchu W

•

Dec 07, 2016

Force students to develop the assignment code by TDD, which is very good. All the assignments are not just toy problems, which is excellent as well. If you want to learn some parallel programming algorithms, you do choose this course. The drawbacks may be that some of the concepts or expression in the lectures are obscured. Although the assignments cover almost all the important algorithms and data structures, like UpSweep, DownSweep, reducing tree and combiners, the exercises on these things are not enough.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: hcy

•

Mar 14, 2017

very great lecture, but some homework is too easy.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Artur R

•

May 24, 2018

This is one of the most dense and solid courses on Coursera and I really enjoyed tackling it

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Damien F

•

Dec 03, 2016

Great material.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: murmelssonic

•

Aug 15, 2016

Good course. The only thing I would suggest to improve is in the Assignments, the error messages are not always sufficient information to recreate the bug that caused the error, so it is hard to correct the bug (since if you don't recreate the bug, you don't find the root cause). On the other hand it's understandable, that giving away too much info from the grader makes it easier to "workaround" the failed test without necessarily providing a good solution. Tricky trade-off.

Anyway, both the lecturers do a very good job of explaining fairly complex stuff in ways that non-computer-science students can understand.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Deniss M

•

Oct 30, 2016

Спасибо! Thank you!

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Kovalenko S

•

Jul 20, 2017

Классный курс

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: IURII B

•

Aug 03, 2017

Thanks!

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Bruno F

•

Aug 20, 2017

Great course -- I learned a lot.

Parts of it were very heavy too, and not all of the lecture material was examined.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Aliaksandr P

•

Jul 16, 2016

I like the course. I learned some nice ideas for parallel computations, not just Scala specific API.

To polish: sometime lectures and tasks contain many complicated but not significant details. And some important ideas are not emphasized. I had to filter the content carefully.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Animesh K

•

Aug 09, 2017

Cool course

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Tri N

•

Dec 12, 2016

Excellent course. There is no books about Scala that can teach Parallel Computing as well as this course. Code sample of exercises in lecture is supplied on GitHub. Excellent video quality, especially the overlay annotation by the teacher with nice hand drawing. The assignments are very interesting, showing real world concrete problems, add a nice application to the concepts we learnt in the course.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: William H

•

Aug 13, 2017

The 3rd part in the set of scala specialization courses falls into place. This course is an introduction to the challenges of big data sets and the parallel computing solutions available to tackle it.

An excellent course.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: David G

•

Sep 19, 2017

I liked it a lot!

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: yassine a

•

Nov 13, 2017

very good, but need to focus a little bit on how to create tasks and threads

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Joël V

•

Apr 22, 2019

This course introduces an elegant and practical alternative to purely lock based parallelism by exploiting data & task parallelism intrinsic to many problems. It also emphasizes the mathematical requirements to use such tooling. The course slides/videos provide an good theoretical introduction with short code examples. The (fun ;-) )ctional exercises greatly echo the theoretical course with problems which appear almost effortless to parallelize.

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: 李帅鹏

•

Apr 30, 2019

Perfect! Learning Parallel Programming, I can learn more about Spark and Flink. Thanks

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Artem B

•

May 23, 2019

Great course with very entertaining exercises!

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Leonardo L e C

•

Jun 21, 2019

Very good!

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Santiago A

•

Jul 30, 2019

Unbelievable. This course is a must for those who are looking to work in depth with data parallel intensive applications like Spark and want to understand the mathematics underlying the parallel computing. Thank you very much Viktor and Aleksandar!

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: Sanjeev R

•

Aug 26, 2019

Excellent

Filled StarFilled StarFilled StarFilled StarFilled Star

автор: G. U M

•

Aug 25, 2019

best course

Filled StarFilled StarFilled StarFilled StarStar

автор: Anton B

•

Dec 10, 2018

it would be great to have a few more pointers how to debug code in parallel