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.
이 강좌는 Functional Programming in Scala 특화 과정의 일부입니다.
제공자:

이 강좌에 대하여
귀하가 습득할 기술
- Data Structure
- Parallel Computing
- Data Parallelism
- Parallel Algorithm
제공자:
강의 계획표 - 이 강좌에서 배울 내용
Parallel Programming
We motivate parallel programming and introduce the basic constructs for building parallel programs on JVM and Scala. Examples such as array norm and Monte Carlo computations illustrate these concepts. We show how to estimate work and depth of parallel programs as well as how to benchmark the implementations.
Basic Task Parallel Algorithms
We continue with examples of parallel algorithms by presenting a parallel merge sort. We then explain how operations such as map, reduce, and scan can be computed in parallel. We present associativity as the key condition enabling parallel implementation of reduce and scan.
Data-Parallelism
We show how data parallel operations enable the development of elegant data-parallel code in Scala. We give an overview of the parallel collections hierarchy, including the traits of splitters and combiners that complement iterators and builders from the sequential case.
Data Structures for Parallel Computing
We give a glimpse of the internals of data structures for parallel computing, which helps us understand what is happening under the hood of parallel collections.
검토
- 5 stars59.81%
- 4 stars28.36%
- 3 stars9.18%
- 2 stars1.92%
- 1 star0.71%
병렬 프로그래밍의 최상위 리뷰
The assignment could be optimized and avoid to be more academic since it may make student lost focus and spend too much time on the question itself rather than the parallel programming
Really good course covering some of the fundamentals of parallel programming, though for me I was hoping it would go into some of the Scala specifics a little more
At its begining, this training doesn't look as polished and refined as the previous ones animated by Martin Odersky, but it quickly catch up with very efficient lessons and great practice exercises.
Very challenging course, the assignments are more about practising using parallel programming, would be better to design an assignment to implement the parallel programming.
Functional Programming in Scala 특화 과정 정보
Discover how to write elegant code that works the first time it is run.

자주 묻는 질문
강의 및 과제를 언제 이용할 수 있게 되나요?
이 전문 분야를 구독하면 무엇을 이용할 수 있나요?
재정 지원을 받을 수 있나요?
궁금한 점이 더 있으신가요? 학습자 도움말 센터를 방문해 보세요.