Structured Parallel Programming by Michael McCool, James Reinders & Arch Robison