Power aware heterogeneous MPSoC with dynamic task scheduling and increased data locality for multiple applications