Parallel Programming by Michael Allen Barry Wilkinson