Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ehsanmok/scala-parallel-programming
coursera
https://github.com/ehsanmok/scala-parallel-programming
coursera parallel parallel-algorithm parallel-computing scala
Last synced: 16 days ago
JSON representation
coursera
- Host: GitHub
- URL: https://github.com/ehsanmok/scala-parallel-programming
- Owner: ehsanmok
- Created: 2016-05-28T03:03:17.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-06-23T05:33:56.000Z (over 8 years ago)
- Last Synced: 2024-12-02T08:47:04.313Z (20 days ago)
- Topics: coursera, parallel, parallel-algorithm, parallel-computing, scala
- Language: Jupyter Notebook
- Homepage: https://www.coursera.org/learn/parprog1
- Size: 29.3 KB
- Stars: 18
- Watchers: 7
- Forks: 13
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Scala-Parallel-Programming
This repo contains my weekly notes for coursera [Parallel Programming in Scala](https://www.coursera.org/learn/parprog1) course offered by [Viktor Kuncak](http://lara.epfl.ch/~kuncak/) and [Aleksandar Prokopec](http://axel22.github.io/).
Some useful code snippets of the course released by Aleksandar Prokopec is available [here](https://github.com/axel22/parprog-snippets).
[Jupyter-notebook with scala 2.10 kernel](https://github.com/alexarchambault/jupyter-scala) is used to generate the notebooks!
## NOTE:
Please see the notebooks in [Nbviewer](http://nbviewer.jupyter.org/) for better display in the following links:
* [Week 1](http://nbviewer.jupyter.org/github/ehsanmok/Scala-Parallel-Programming/blob/master/week1_summary.ipynb)
* [Week 2](http://nbviewer.jupyter.org/github/ehsanmok/Scala-Parallel-Programming/blob/master/week2_summary.ipynb)
* [Week 3](http://nbviewer.jupyter.org/github/ehsanmok/Scala-Parallel-Programming/blob/master/week3_summary.ipynb)
* [Week 4](http://nbviewer.jupyter.org/github/ehsanmok/Scala-Parallel-Programming/blob/master/week4_summary.ipynb)
More to learn (Aleksandar Prokopec's suggests):
1. Classic: [Purely functional data structures by Okasaki](https://www.amazon.ca/Purely-Functional-Structures-Chris-Okasaki/dp/0521663504)
2. Overview of computer architectures and their effect on performance: [What Every Programmer Should Know About Memory](https://people.freebsd.org/~lstewart/articles/cpumemory.pdf)
3. General purpose computing on GPUs (not covered in course): [CUDA by example](http://developer.download.nvidia.com/books/cuda-by-example/cuda-by-example-sample.pdf)
4. [Structured Parallel Programming: Patterns for Efficient Computation](https://www.amazon.ca/Structured-Parallel-Programming-Efficient-Computation/dp/0124159931)
5. The instructor's book: [Learning Concurrent Programming in Scala by Aleksandar Prokopec](https://www.packtpub.com/application-development/learning-concurrent-programming-scala)
6. More theoretical approach to concurrent programming: [Art of Multiprocessor Programming](https://www.amazon.ca/Art-Multiprocessor-Programming-Revised-Reprint/dp/0123973376)
7. Fundamentals of distributed computing: [Distributed Algorithms by Nancy Lynch](https://www.amazon.com/Distributed-Algorithms-Kaufmann-Management-Systems/dp/1558603484) and [Introduction to Reliable Distributed Computing](https://www.amazon.com/Introduction-Reliable-Secure-Distributed-Programming/dp/3642152597)