Об этом курсе
4.4
Оценки: 1,410
Рецензии: 226
Специализация

Курс 3 из 5 в программе

100% онлайн

100% онлайн

Начните сейчас и учитесь по собственному графику.
Гибкие сроки

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.
Промежуточный уровень

Промежуточный уровень

Часов на завершение

Прибл. 16 часа на выполнение

Предполагаемая нагрузка: 6 hours/week...
Доступные языки

Английский

Субтитры: Английский

Приобретаемые навыки

Data StructureParallel ComputingData ParallelismParallel Algorithm
Специализация

Курс 3 из 5 в программе

100% онлайн

100% онлайн

Начните сейчас и учитесь по собственному графику.
Гибкие сроки

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.
Промежуточный уровень

Промежуточный уровень

Часов на завершение

Прибл. 16 часа на выполнение

Предполагаемая нагрузка: 6 hours/week...
Доступные языки

Английский

Субтитры: Английский

Программа курса: что вы изучите

Неделя
1
Часов на завершение
12 ч. на завершение

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....
Reading
9 видео ((всего 106 мин.)), 5 материалов для самостоятельного изучения, 3 тестов
Video9 видео
Introduction to Parallel Computing15мин
Parallelism on the JVM I13мин
Parallelism on the JVM II8мин
Running Computations in Parallel13мин
Monte Carlo Method to Estimate Pi4мин
First-Class Tasks7мин
How Fast are Parallel Programs?24мин
Benchmarking Parallel Programs17мин
Reading5 материала для самостоятельного изучения
Tools Setup10мин
Eclipse Tutorial10мин
IntelliJ IDEA Tutorial10мин
Sbt Tutorial10мин
Submitting Solutions10мин
Неделя
2
Часов на завершение
8 ч. на завершение

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....
Reading
6 видео ((всего 100 мин.)), 2 тестов
Video6 видео
Data Operations and Parallel Mapping18мин
Parallel Fold (Reduce) Operation18мин
Associativity I14мин
Associativity II17мин
Parallel Scan (Prefix Sum) Operation24мин
Неделя
3
Часов на завершение
7 ч. на завершение

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....
Reading
5 видео ((всего 51 мин.)), 2 тестов
Video5 видео
Data-Parallel Operations I6мин
Data-Parallel Operations II8мин
Scala Parallel Collections15мин
Splitters and Combiners7мин
Неделя
4
Часов на завершение
7 ч. на завершение

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....
Reading
5 видео ((всего 57 мин.)), 2 тестов
Video5 видео
Parallel Two-phase Construction14мин
Conc-tree Data Structure14мин
Amortized, Constant-time Append Operation11мин
Conc-Tree Combiners4мин
4.4
Рецензии: 226Chevron Right
Формирование карьерного пути

24%

начал новую карьеру, пройдя эти курсы
Карьерные преимущества

22%

получил значимые преимущества в карьере благодаря этому курсу

Лучшие рецензии

автор: ALApr 24th 2018

The course is fairly advanced and you would need to review the materials many times to understand the concept. The assignments are definitely fun and not as straightforward as other courses.

автор: RCAug 25th 2017

Superb study material. Learnt a lot during this course. I am not much into mathematical stuff, but got a hang of how to break problems and improve efficiency through parallelism.

Преподавателя

Avatar

Prof. Viktor Kuncak

Associate Professor
School of Computer and Communication Sciences
Avatar

Dr. Aleksandar Prokopec

Principal Researcher
Oracle Labs

О École Polytechnique Fédérale de Lausanne

О специализации ''Functional Programming in Scala'

Discover how to write elegant code that works the first time it is run. This Specialization provides a hands-on introduction to functional programming using the widespread programming language, Scala. It begins from the basic building blocks of the functional paradigm, first showing how to use these blocks to solve small problems, before building up to combining these concepts to architect larger functional programs. You'll see how the functional paradigm facilitates parallel and distributed programming, and through a series of hands on examples and programming assignments, you'll learn how to analyze data sets small to large; from parallel programming on multicore architectures, to distributed programming on a cluster using Apache Spark. A final capstone project will allow you to apply the skills you learned by building a large data-intensive application using real-world data....
Functional Programming in Scala

Часто задаваемые вопросы

  • Зарегистрировавшись на сертификацию, вы получите доступ ко всем видео, тестам и заданиям по программированию (если они предусмотрены). Задания по взаимной оценке сокурсниками можно сдавать и проверять только после начала сессии. Если вы проходите курс без оплаты, некоторые задания могут быть недоступны.

  • Записавшись на курс, вы получите доступ ко всем курсам в специализации, а также возможность получить сертификат о его прохождении. После успешного прохождения курса на странице ваших достижений появится электронный сертификат. Оттуда его можно распечатать или прикрепить к профилю LinkedIn. Просто ознакомиться с содержанием курса можно бесплатно.

Остались вопросы? Посетите Центр поддержки учащихся.