This project explores Parallel, Concurrent and Distributed programming in Java based on Coursera.
-
Parallel Programming In Java
- Task Parallelism - Imperative Fork/Join framework, Amdahl’s Law, Computation Graph
- Functional Parallelism - Functional FJ framework, Stream API, Data Races and Determinism
- Loop Parallelism - Parallelize for Matrix Multiplication and One-Dimensional Iterative Averaging
- Data flow Synchronization and Pipelining - Optimization with Phaser, Data Pipeline Parallelism
-
Distributed Programming In Java
- Distributed Map Reduce - Hadoop, Spark, RDD, PageRank
- Client-Server Programming -
- Message Passing -
- Combining Distribution and Multithreading -
-
Concurrent Programming In Java