Patterns For Parallel Programming by Timothy G. Mattson, Berna L. Massingill & Beverly A. Sanders