RiseUpp Logo
Educator Logo

Parallel Programming (Scala 2 version)

Master parallel programming in Scala: Learn task and data parallelism, functional concepts, and performance optimization.

Master parallel programming in Scala: Learn task and data parallelism, functional concepts, and performance optimization.

This intermediate-level course explores the fundamentals of parallel programming using Scala 2. Students will learn to leverage multi-core processors for improved performance, focusing on both task and data parallelism. The course covers essential concepts such as parallel collections, algorithms like parallel merge sort, and operations including map, reduce, and scan. Participants will gain hands-on experience through programming assignments, analyzing real-world data with algorithms like k-means clustering. By the end, students will be able to design, implement, and benchmark efficient parallel programs using Scala's parallel collections library.

English

21 languages available

Powered by

Provider Logo
Parallel Programming (Scala 2 version)

This course includes

32 Hours

Of Self-paced video lessons

Intermediate Level

Completion Certificate

awarded on course completion

2,435

What you'll learn

  • Understand and implement task and data parallel programs

  • Apply functional programming concepts to parallel scenarios

  • Design and analyze parallel algorithms such as merge sort and scan

  • Use Scala's parallel collections library effectively

  • Implement parallel versions of map, reduce, and fold operations

  • Develop skills in microbenchmarking parallel code

Skills you'll gain

parallel programming
Scala
task parallelism
data parallelism
parallel algorithms
functional programming
performance optimization
parallel collections

This course includes:

5 Hours PreRecorded video

9 programming assignments

Access on Mobile, Tablet, Desktop

FullTime access

Shareable certificate

Closed caption

Get a Completion Certificate

Share your certificate with prospective employers and your professional network on LinkedIn.

Certificate

Top companies offer this course to their employees

Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.

icon-0icon-1icon-2icon-3icon-4

There are 4 modules in this course

This course provides a comprehensive introduction to parallel programming using Scala 2. Students will learn to harness the power of multi-core processors through both task and data parallelism. The curriculum covers fundamental concepts such as parallel collections, algorithms, and operations, with a focus on applying functional programming ideas to parallel scenarios. Through hands-on programming assignments, students will implement and analyze parallel versions of algorithms like merge sort, k-means clustering, and Barnes-Hut simulation. The course emphasizes practical skills in designing, implementing, and benchmarking parallel programs, preparing students to write efficient parallel code for real-world applications.

Parallel Programming

Module 1 · 11 Hours to complete

Basic Task Parallel Algorithms

Module 2 · 7 Hours to complete

Data-Parallelism

Module 3 · 6 Hours to complete

Data Structures for Parallel Computing

Module 4 · 6 Hours to complete

Fee Structure

Payment options

Financial Aid

Instructors

Dr. Aleksandar Prokopec
Dr. Aleksandar Prokopec

4.5 rating

46 Reviews

60,635 Students

2 Courses

Principal researcher

Dr. Aleksandar Prokopec is a software developer and a concurrent and distributed programming researcher, working at Oracle Labs. He obtained a PhD in Computer Science from the Ecole Polytechnique Federale de Lausanne, Switzerland. As a doctoral assistant and member of the Scala team at EPFL, he actively contributed to the Scala programming language, and has worked on programming abstractions for concurrency, data-parallel programming support, and concurrent data structures for Scala. He created the Scala Parallel Collections framework, which is a library for high-level data-parallel programming in Scala, and participated in working groups for Scala concurrency libraries. He previously worked at Google.

Prof. Viktor Kuncak
Prof. Viktor Kuncak

4.5 rating

46 Reviews

60,951 Students

2 Courses

Associate Professor

Viktor Kuncak is an associate professor at the École Polytechnique Fédérale de Lausanne (EPFL), where he has been leading the Laboratory for Automated Reasoning and Analysis since 2007. His research focuses on formal methods, particularly in developing algorithms and tools for program verification and synthesis, including the Leon tool for Scala programs. Kuncak has contributed significantly to the academic community, co-chairing several key conferences and leading initiatives to standardize verification formats. He holds a PhD from the Massachusetts Institute of Technology (MIT) and has received funding from the European Research Council for his work on Implicit Programming, which aims to align human goals with computational processes.

Parallel Programming (Scala 2 version)

This course includes

32 Hours

Of Self-paced video lessons

Intermediate Level

Completion Certificate

awarded on course completion

2,435

Testimonials

Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.

Frequently asked questions

Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.