parallel computing; games; patterns; data-flow; parameters; task graph; heterogeneous processing; work stealing; dynamic scheduling