Variability-tolerant run-time workload allocation for MPSoC energy minimization under real-time constraints