PARALLEL PROGRAMMING FOR MULTICORE AND CLUSTER SYSTEMS - RAUBER THOMAS