Parallel programming (Scala 2 version)
- Offered byCoursera
Parallel programming (Scala 2 version) at Coursera Overview
Duration | 33 hours |
Start from | Start Now |
Total fee | Free |
Mode of learning | Online |
Official Website | Explore Free Course |
Credential | Certificate |
Parallel programming (Scala 2 version) at Coursera Highlights
- Reset deadlines in accordance to your schedule.
- Earn a Certificate upon completion
- Start instantly and learn at your own schedule.
Parallel programming (Scala 2 version) at Coursera Course details
- 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
Parallel programming (Scala 2 version) at Coursera Curriculum
Parallel Programming
Course Overview
Introduction to Parallel Computing
Parallelism on the JVM I
Parallelism on the JVM II
Running Computations in Parallel
Monte Carlo Method to Estimate Pi
First-Class Tasks
How Fast are Parallel Programs?
Benchmarking Parallel Programs
Tools Setup (Please read)
IntelliJ IDEA Tutorial
Sbt Tutorial
Submitting Solutions
Basic Task Parallel Algorithms
Parallel Sorting
Data Operations and Parallel Mapping
Parallel Fold (Reduce) Operation
Associativity I
Associativity II
Parallel Scan (Prefix Sum) Operation
Data-Parallelism
Data-Parallel Programming
Data-Parallel Operations I
Data-Parallel Operations II
Scala Parallel Collections
Splitters and Combiners
Data Structures for Parallel Computing
Implementing Combiners
Parallel Two-phase Construction
Conc-tree Data Structure
Amortized, Constant-time Append Operation
Conc-Tree Combiners