diff --git a/reframe/frontend/executors/policies.py b/reframe/frontend/executors/policies.py index e0a5a7cbe8..9f25692112 100644 --- a/reframe/frontend/executors/policies.py +++ b/reframe/frontend/executors/policies.py @@ -19,6 +19,7 @@ RunOnlyRegressionTest) from reframe.frontend.executors import (ExecutionPolicy, RegressionTask, TaskEventListener, ABORT_REASONS) +from reframe.utility.osext import change_dir def _get_partition_name(task, phase='run'): @@ -41,14 +42,16 @@ def _cleanup_all(tasks, *args, **kwargs): def _print_perf(task): '''Get performance info of the current task.''' - - perfvars = task.testcase.check.perfvalues - for key, info in perfvars.items(): - name = key.split(':')[-1] - getlogger().info( - f'P: {name}: {info[0]} {info[4]} ' - f'(r:{info[1]}, l:{info[2]}, u:{info[3]})' - ) + + perfvars = task.testcase.check.perfvalues + if perfvars: + with change_dir(task.testcase.check.stagedir): + for key, info in perfvars.items(): + name = key.split(':')[-1] + getlogger().info( + f'P: {name}: {info[0]} {info[4]} ' + f'(r:{info[1]}, l:{info[2]}, u:{info[3]})' + ) class _PollController: