Preparation
Always make sure to pull/clone/download the latest 101simplejava repo.
See the instructions here:
https://github.com/101companies/101simplejava/blob/master/README.md
Starting point
Contribution:javaMultithreading
Objective
Experiment with Java threads and measure performance.
Task
Improve the performance of Contribution:javaMultithreading by using multithreading (task parallelism) more carefully.
Hint
For instance, you may apply the idea as discussed in the lecture. (Apply Runnable-based computation only for the top-level departments as opposed to the further nested departments.)
Testing
Show that your parallel execution produces the same results as the existing parallel execution. In addition, measure run times and show whether you actually improved the runtime. (It may be that your optimization is not shining, in which case it is Ok to show just that.)