The advent of multi/many cores is changing the scenario where parallel programming has to be used. We present some recent advances relative to the programming models and tools suitable to target shared memory multicores as well as many cores (GP-GPUs but also GP many cores such as Tilera Pro64). In particular, we discuss results relative to FastFlow (http://calvados.di.unipi.it/fastflow) and to macro data flow techniques supporting structured parallel programming.