Parallel programming : : for multicore and cluster systems - Rauber, Thomas; Rünger, Gadula (Springer, 2010)