Previous | Next --- Slide 9 of 42
Back to Lecture Thumbnails

Some things that the app developer would get for free include parallelization of the iterations, and the switch between using a bottom-up or top-down algorithm based on the size of the data. So the developer only needs to worry about how to convert their app to use these 2 functions (edgemap and vertexmap), not about the details of the iterations and parallelism.


@huehue The app developer also needs to worry about synchronization. As someone mentioned in the lecture, this restricts us to shared memory model and prevents us from parallelizing across different nodes in the cluster


Regurgitating from lecture, things that developers for our assignment 3 won't get for free is that the library wouldn't automatically be parallelizable over different clusters. The main problem lies in how we implemented the synchronization. We assumed a shared memory space and we relied on functions like compare and swap, etc that are for synchronizations on a single machine.