UBCO COSC370, BSPlib project: Resources
For studying materials, I suggest you first have a look at a primer on C. For instance, have a look at the following slides: http://www.cs.cornell.edu/courses/cs314/2005fa/tutorials/cforjava.pdf you can ignore enums and structs, but you should try to have a basic understanding of pointers.
The parallel library we use is based on the BSP model. You can find an, however a bit abstract, introduction to this model on Wikipedia: https://en.wikipedia.org/wiki/Bulk_synchronous_parallel
We will use the BSPlib API for parallel programming. The API is described in the following document: http://engineering.nyu.edu/~suel/papers/bspprop.ps but it is a tad bit heavy to read. For a more gentle introduction, I recommend the book "Parallel Scientific Computation: A Structured Approach using BSP and MPI" by Robert Bisseling. You can find it online. The introduction chapter is more than sufficient for our needs.
You can find a reference to the API here.
More specifically, I recommend that you use the BSPlib implementation called MulticoreBSP, which you can find here: http://www.multicorebsp.com/download/c/ It's documentation is helpful, see here: http://www.multicorebsp.com/documentation/ and notably the quickstart guide: http://www.multicorebsp.com/documentation/quickC/
Back to overview.