During tests, the main portion of the app's time is spent in user mode when polling is in effect. Currently, the idleness of given cpu is determined in comparision to all the possible states the cpu can be in. This makes it easier for third party processes to impact the idleness of the cpu (as it may be lowered via different kinds of loads). For instance, if target cpu suddenly sees spike in a system load (even up to 100%) it should not be relevant for the test where it's known that the app's polling utilized mainly user mode prior switching the scheduler. With that in mind, if the general idle check fails, lookup the raw samples matching the user mode and if the load is relatively low (<= 15%) consider this as a pass. Signed-off-by: Michal Berger <michallinuxstuff@gmail.com> Change-Id: I4ab260d8bcf20a69f2f0be10f0fd7be577682be3 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12909 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
||
---|---|---|
.. | ||
cgroups.sh | ||
common.sh | ||
governor.sh | ||
idle.sh | ||
interrupt.sh | ||
isolate_cores.sh | ||
load_balancing.sh | ||
rdmsr.pl | ||
scheduler.sh |