Parallel Programming

$79.00

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread.g read more…

Level

Rating

Duration

Language

Subtitle

Feature

,

,

,

,

,

Description

What you'll learn

Parallel Programming

Basic Task Parallel Algorithms

Data-Parallelism

Data Structures for Parallel Computing

Description

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.

Requirements

Access to a computer or mobile device with an internet connection.

Motivation to learn!

There are no special materials or prerequisite knowledge required for this course.

Who this course is for

Students who are already familiar with this field

Students willing to put in a couple hours to learn about Parallel Programming

Advanced students wanting to add another skill to their portfolio

Content Creator

Prof. Viktor Kuncak – Associate Professor – School of Computer and Communication Science

Dr. Aleksandar Prokopec – Principal Researcher – Oracle Labs

This course includes

Participation Confirmation/Certificate

Option for learning at your own pace

Videos and reading material about the course

Practice tests

Assessed tasks with feedback from other course participants

Evaluated tests with feedback

Evaluated programming tasks

Discussions

Got something to discuss?