Parallel programming - Michael Allen (Pearson Education, 2005)