Skip to content

lisa.tests.scheduler.eas_behaviour: Increase big tasks util

Darryl Green requested to merge github/fork/pierregondois/rb5_2big3small into master

Created by: pierregondois

On a rb5, the first OPPs of the little CPUs are less energy efficient than the first OPPs of the big CPUs: little CPUs: freq=300000 power=28864 capa=59 power/capa=489.22 freq=403200 power=38774 capa=79 power/capa=490.81 freq=480000 power=46183 capa=95 power/capa=486.13 freq=576000 power=55419 capa=114 power/capa=486.13 freq=652800 power=62732 capa=129 power/capa=486.29 freq=748800 power=71968 capa=148 power/capa=486.27 freq=825600 power=82719 capa=163 power/capa=507.47 <- [3] freq=902400 power=94168 capa=178 power/capa=529.03 freq=979200 power=113400 capa=194 power/capa=584.53 freq=1056000 power=114700 capa=209 power/capa=548.80 freq=1132800 power=126190 capa=224 power/capa=563.34 [...] BIG CPUs: freq=825600 power=133030 capa=301 power/capa=441.96 freq=902400 power=151283 capa=329 power/capa=459.82 freq=979200 power=168490 capa=357 power/capa=471.96 <- [1] freq=1056000 power=188799 capa=385 power/capa=490.38 <- [2] freq=1209600 power=224387 capa=441 power/capa=508.81 freq=1286400 power=244608 capa=469 power/capa=521.55 freq=1363200 power=275303 capa=497 power/capa=553.92 freq=1459200 power=305249 capa=533 power/capa=572.69 freq=1536000 power=340314 capa=561 power/capa=606.62 freq=1612800 power=381776 capa=589 power/capa=648.17 [...]

When running the TwoBigThreeSmall test, the big task has a utilization such as the task cannot fit on the little CPUs. util~=290 so that 290 * 1.2 = 348. The capacity of the little CPUs is 350. The small task will run at 50% of the maximum capacity of the little CPUs, so util=174. The big CPUs will run at the OPP [1], which is more energy efficient than all the little CPUs' OPPs. Now if the big CPU utilization jumps to [2], the little CPUs' OPPs below [3] become more energy efficient.

Thus, it appears that for the rb5, the utilization chosen for the big tasks makes the big CPUs either attractive or repulsive for the small tasks, and this for a range of 20 util. This makes the TwoBigThreeSmall test for rb5 unstable.

Check that the utilization chosen for the big tasks makes the big CPUs repulsive for the small tasks, and if no, increase the big tasks' utilization.

Signed-off-by: Pierre Gondois pierre.gondois@arm.com

Merge request reports