Informações sobre o curso
32,761 visualizações recentes

100% online

Comece imediatamente e aprenda em seu próprio cronograma.

Prazos flexíveis

Redefinir os prazos de acordo com sua programação.

Nível intermediário

Aprox. 15 horas para completar

Sugerido: Four weeks of study, 4-8 hours/week depending on past experience with sequential programming in Java...

Inglês

Legendas: Inglês

Habilidades que você terá

DataflowParallel ComputingJava ConcurrencyData Parallelism

100% online

Comece imediatamente e aprenda em seu próprio cronograma.

Prazos flexíveis

Redefinir os prazos de acordo com sua programação.

Nível intermediário

Aprox. 15 horas para completar

Sugerido: Four weeks of study, 4-8 hours/week depending on past experience with sequential programming in Java...

Inglês

Legendas: Inglês

Programa - O que você aprenderá com este curso

Semana
1
1 hora para concluir

Welcome to the Course!

1 vídeo (Total 1 mín.), 5 leituras, 1 teste
1 vídeos
5 leituras
General Course Info5min
Course Icon Legend5min
Discussion Forum Guidelines5min
Pre-Course Survey10min
Mini Project 0: Setup10min
4 horas para concluir

Task Parallelism

7 vídeos (Total 42 mín.), 6 leituras, 2 testes
7 videos
1.2 Tasks in Java's Fork/Join Framework5min
1.3 Computation Graphs, Work, Span7min
1.4 Multiprocessor Scheduling, Parallel Speedup8min
1.5 Amdahl's Law5min
ReciprocalArraySum using Async-Finish (Demo)4min
ReciprocalArraySum using RecursiveAction's in Java's Fork/Join Framework (Demo)5min
6 leituras
1.1 Lecture Summary5min
1.2 Lecture Summary5min
1.3 Lecture Summary5min
1.4 Lecture Summary5min
1.5 Lecture Summary5min
Mini Project 1: Reciprocal-Array-Sum using the Java Fork/Join Framework10min
1 exercício prático
Module 1 Quiz30min
Semana
2
4 horas para concluir

Functional Parallelism

7 vídeos (Total 40 mín.), 6 leituras, 2 testes
7 videos
2.2 Futures in Java's Fork/Join Framework5min
2.3 Memoization6min
2.4 Java Streams5min
2.5 Data Races and Determinism9min
ReciprocalArraySum using RecursiveTask's in Java's Fork/Join Framework (Demo)3min
Parallel List Processing Using Java Streams (Demo)4min
6 leituras
2.1 Lecture Summary10min
2.2 Lecture Summary10min
2.3 Lecture Summary10min
2.4 Lecture Summary10min
2.5 Lecture Summary10min
Mini Project 2: Analyzing Student Statistics Using Java Parallel Streams10min
1 exercício prático
Module 2 Quiz30min
23 minutos para concluir

Talking to Two Sigma: Using it in the Field

2 vídeos (Total 13 mín.), 1 leitura
2 videos
Industry Professionals on Parallelism - Jake Kornblau and Margaret Kelley, Software Engineers6min
1 leituras
About these Talks10min
Semana
3
4 horas para concluir

Loop Parallelism

7 vídeos (Total 41 mín.), 6 leituras, 2 testes
7 videos
3.2 Parallel Matrix Multiplication4min
3.3 Barriers in Parallel Loops5min
3.4 Parallel One-Dimensional Iterative Averaging8min
3.5 Iteration Grouping/Chunking in Parallel Loops6min
Parallel Matrix Multiplication (Demo)4min
Parallel One-Dimensional Iterative Averaging (Demo)5min
6 leituras
3.1 Lecture Summary10min
3.2 Lecture Summary10min
3.3 Lecture Summary10min
3.4 Lecture Summary10min
3.5 Lecture Summary10min
Mini Project 3: Parallelizing Matrix-Matrix Multiply Using Loop Parallelism10min
1 exercício prático
Module 3 Quiz30min
Semana
4
5 horas para concluir

Data flow Synchronization and Pipelining

7 vídeos (Total 38 mín.), 7 leituras, 2 testes
7 videos
4.2 Point-to-Point Sychronization with Phasers4min
4.3 One-Dimensional Iterative Averaging with Phasers4min
4.4 Pipeline Parallelism5min
4.5 Data Flow Parallelism5min
Phaser Examples6min
Pipeline & Data Flow Parallelism7min
7 leituras
4.1 Lecture Summary10min
4.2 Lecture Summary10min
4.3 Lecture Summary10min
4.4 Lecture Summary10min
4.5 Lecture Summary10min
Mini Project 4: Using Phasers to Optimize Data-Parallel Applications10min
Exit Survey10min
1 exercício prático
Module 4 Quiz30min
20 minutos para concluir

Continue Your Journey with the Specialization "Parallel, Concurrent, and Distributed Programming in Java"

2 vídeos (Total 10 mín.), 1 leitura
2 videos
Industry Professional on Distribution - Dr. Eric Allen, Senior Vice President, Two Sigma6min
1 leituras
Our Other Course Offerings10min
4.6
129 avaliaçõesChevron Right

25%

comecei uma nova carreira após concluir estes cursos

12%

consegui um benefício significativo de carreira com este curso

Principais avaliações do Parallel Programming in Java

por LGDec 13th 2017

This is a great course in parallel programming. The videos were very clear, summaries reinforced the video material and the programming projects and quizzes were challenging but not overwhelming.

por SVAug 28th 2017

Great course. Introduces Parallel Programming in Java in a gentle way.\n\nKudos to Professor Vivek Sarkar for simplifying complex concepts and presenting them in an elegant manner.

Instrutores

Avatar

Vivek Sarkar

Professor
Department of Computer Science

Sobre Universidade Rice

Rice University is consistently ranked among the top 20 universities in the U.S. and the top 100 in the world. Rice has highly respected schools of Architecture, Business, Continuing Studies, Engineering, Humanities, Music, Natural Sciences and Social Sciences and is home to the Baker Institute for Public Policy....

Sobre Programa de cursos integrados Parallel, Concurrent, and Distributed Programming in Java

Parallel, concurrent, and distributed programming underlies software in multiple domains, ranging from biomedical research to financial services. This specialization is intended for anyone with a basic knowledge of sequential programming in Java, who is motivated to learn how to write parallel, concurrent and distributed programs. Through a collection of three courses (which may be taken in any order or separately), you will learn foundational topics in Parallelism, Concurrency, and Distribution. These courses will prepare you for multithreaded and distributed programming for a wide range of computer platforms, from mobile devices to cloud computing servers. To see an overview video for this Specialization, click here! For an interview with two early-career software engineers on the relevance of parallel computing to their jobs, click here. Acknowledgments The instructor, Prof. Vivek Sarkar, would like to thank Dr. Max Grossman for his contributions to the mini-projects and other course material, Dr. Zoran Budimlic for his contributions to the quizzes, Dr. Max Grossman and Dr. Shams Imam for their contributions to the pedagogic PCDP library used in some of the mini-projects, and all members of the Rice Online team who contributed to the development of the course content (including Martin Calvi, Annette Howe, Seth Tyger, and Chong Zhou)....
Parallel, Concurrent, and Distributed Programming in Java

Perguntas Frequentes – FAQ

  • Ao se inscrever para um Certificado, você terá acesso a todos os vídeos, testes e tarefas de programação (se aplicável). Tarefas avaliadas pelos colegas apenas podem ser enviadas e avaliadas após o início da sessão. Caso escolha explorar o curso sem adquiri-lo, talvez você não consiga acessar certas tarefas.

  • Quando você se inscreve no curso, tem acesso a todos os cursos na Especialização e pode obter um certificado quando concluir o trabalho. Seu Certificado eletrônico será adicionado à sua página de Participações e você poderá imprimi-lo ou adicioná-lo ao seu perfil no LinkedIn. Se quiser apenas ler e assistir o conteúdo do curso, você poderá frequentá-lo como ouvinte sem custo.

Mais dúvidas? Visite o Central de Ajuda ao Aprendiz.