Algorithms and parallel computing - Gebali, Fayez (Wiley series on parallel and distributed computing, 2011)