diff --git a/reframe/core/pipeline.py b/reframe/core/pipeline.py index 5bb21eeb3c..298ee257b8 100644 --- a/reframe/core/pipeline.py +++ b/reframe/core/pipeline.py @@ -1134,14 +1134,20 @@ def check_performance(self): "tag `%s' not resolved in references for `%s'" % (tag, self._current_partition.fullname)) - self._perfvalues[key] = (value, *self.reference[key]) + self._perfvalues[key] = (tag, value, *self.reference[key]) self._perf_logger.log_performance(logging.INFO, tag, value, *self.reference[key]) - for val, *reference in self._perfvalues.values(): - ref, low_thres, high_thres, *_ = reference + for values in self._perfvalues.values(): + tag, val, ref, low_thres, high_thres, *_ = values try: - evaluate(assert_reference(val, ref, low_thres, high_thres)) + evaluate( + assert_reference( + val, ref, low_thres, high_thres, + msg=('failed to meet reference: %s={0}, ' + 'expected {1} (l={2}, u={3})' % tag), + ) + ) except SanityError as e: raise PerformanceError(e) diff --git a/reframe/utility/sanity.py b/reframe/utility/sanity.py index 687edd7abb..d6048c7d0d 100644 --- a/reframe/utility/sanity.py +++ b/reframe/utility/sanity.py @@ -514,7 +514,7 @@ def calc_bound(thres): try: evaluate(assert_bounded(val, lower, upper)) except SanityError: - error_msg = '{0} is beyond reference value {1} (l={2}, u={3})' + error_msg = msg or '{0} is beyond reference value {1} (l={2}, u={3})' raise SanityError(_format(error_msg, val, ref, lower, upper)) else: return True