The ParaPhrase Project: Parallel patterns for adaptive heterogeneous multicore systems