High Performance Computing and the Art of Parallel Programming by Stan Openshaw & Ian Turton