You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

73 lines
2.5 KiB

From 49bc120dcaeb68e2a870e7d92cf3f217e3487fe5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Thu, 2 Jul 2015 11:15:28 +0200
Subject: [PATCH] Benchmark.t: remove CPU-speed-sensitive test
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This is upstream commit ported to 5.16.3:
commit 9eba9e102c2f8c2ec41a50f4bbe6b09a64dddd31
Author: David Mitchell <davem@iabyn.com>
Date: Fri Jul 19 23:10:50 2013 +0100
Benchmark.t: remove CPU-speed-sensitive test
Benchmark.t has been randomly failing test 15 in smokes for ages.
This is the one that checks that a loop run 3*N times burns approximately
3 times more CPU than when run just N times.
For the last month the test has included a calibration loop and test,
which does much the same thing, but without using any code from
Benchmark.pm. This has failed just as much, which confirms that its an
issue with the smoke host (such as a variable speed CPU or whatever),
rather than any flaw in the Benchmark.pm library logic.
So just remove the calibration loop and the dodgy test.
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
lib/Benchmark.t | 19 +------------------
1 file changed, 1 insertion(+), 18 deletions(-)
diff --git a/lib/Benchmark.t b/lib/Benchmark.t
index 004092e..62bc1a6 100644
--- a/lib/Benchmark.t
+++ b/lib/Benchmark.t
@@ -8,7 +8,7 @@ BEGIN {
use warnings;
use strict;
use vars qw($foo $bar $baz $ballast);
-use Test::More tests => 196;
+use Test::More tests => 195;
use Benchmark qw(:all);
@@ -86,23 +86,6 @@ my $in_onesec_adj = $in_onesec;
$in_onesec_adj *= (1/$cpu1); # adjust because may not have run for exactly 1s
print "# in_onesec_adj=$in_onesec_adj adjusted iterations\n";
-{
- my $difference = $in_onesec_adj - $estimate;
- my $actual = abs ($difference / $in_onesec_adj);
- cmp_ok($actual, '<=', $delta, "is $in_onesec_adj within $delta of estimate ($estimate)")
- or do {
- diag(" in_threesecs = $in_threesecs");
- diag(" in_threesecs_adj = $in_threesecs_adj");
- diag(" cpu3 = $cpu3");
- diag(" sys3 = $sys3");
- diag(" estimate = $estimate");
- diag(" in_onesec = $in_onesec");
- diag(" in_onesec_adj = $in_onesec_adj");
- diag(" cpu1 = $cpu1");
- diag(" sys1 = $sys1");
- };
-}
-
# I found that the eval'ed version was 3 times faster than the coderef.
# (now it has a different ballast value)
$baz = 0;
--
2.4.3