Personal repo for "Parallel Programming" course on coursera
- week1: Parallel Programming (Parallel Box Blur Filter)
- week2: Basic Task Parallel Algorithms (Reductions and Prefix Sums)
- week3: Data-Parallelism (K-Means)
- week4: Data Structures for Parallel Computing (Barnes-Hut Simulation)
Install pre-requisites, clone the project, go to each week's folder and use sbt to run application and tests.
sbt run
sbt test
See next sections for details
- Java Development Kit
- Scala Build Tool
- A terminal/shell/command line (or a Scala IDE)
Using a terminal, go to the root folder of each week.
Use sbt to run.
sbt run
Note: Each week's project has multiple entry points/"main methods", so these will be listed when running with sbt. Just press the number relative to the "main" you want to execute and press enter.
- scalashop.HorizontalBoxBlurRunner - Scalameter tests
- scalashop.ScalaShop - Main GUI
- scalashop.VerticalBoxBlurRunner - Scalameter tests
- reductions.LineOfSightRunner - Scalameter tests
- reductions.ParallelCountChangeRunner - Scalameter tests
- reductions.ParallelParenthesesBalancingRunner - Scalameter tests
- kmeans.KMeansRunner - Scalameter tests
- kmeans.fun.ScalaShop - Main GUI
- barneshut.BarnesHut - Main GUI
- barneshut.conctrees.ConcBufferRunner - Scalameter tests
Using a terminal, go to the root folder of each week.
Use sbt to run the tests.
sbt test
If you want to step through the code, I recomend installing the Scala IDE.
Follow the instructions on the website on how to import and debug a project.