TrueschoTruescho
All Courses
Parallel Programming with Scala 2
Coursera
Course
Unknown

Parallel Programming with Scala 2

École Polytechnique Fédérale de Lausanne

Learn parallel programming fundamentals using functional concepts in Scala, with practical examples including real-world data and algorithms like k-means clustering.

Unknown4 weeksKK, German, HI, RU

About this Course

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

What You'll Learn

  • Reason about task and data parallel programs
  • Express algorithms functionally and solve them in parallel
  • Conduct microbenchmarks on parallel code
  • Write programs using parallel collections for performance

Prerequisites

  • At least one year of programming experience
  • Basic familiarity with programming and command line usage
  • Preferred proficiency in Java, C#, or similar languages

Instructors

P

Prof. Viktor Kuncak

Associate Professor

D

Dr. Aleksandar Prokopec

Principal Researcher

Topics

Software Development
Computer Science
Algorithms
Machine Learning Algorithms
Distributed Computing
Performance Tuning
Scala Programming
Computer Programming
Data Structures
Performance Testing

Course Info

PlatformCoursera
LevelUnknown
PacingUnknown
PriceFree

Skills

تطوير البرمجيات
علوم الحاسوب
الخوارزميات
خوارزميات التعلم الآلي
الحوسبة الموزعة
تحسين الأداء
برمجة Scala
برمجة الحاسوب
Data Structures
Performance Testing

Start Learning Now