Skip to content

Commit b3866c2

Browse files
committed
Add comparison between last two results on table
1 parent a0486a5 commit b3866c2

File tree

3 files changed

+36
-15
lines changed

3 files changed

+36
-15
lines changed

benchmark.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,5 +85,5 @@ done
8585
if [ "$init_benchmark" = true ]; then
8686
sh ./base/hello_world.sh
8787
echo ''
88-
php ./libs/show_results_table.php
88+
bash results.sh
8989
fi

libs/build_table.php

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22

3-
function build_table($results, $header = true)
3+
function build_table($res1, $res2 = null, $header = true)
44
{
55
$table = '';
66

@@ -9,25 +9,41 @@ function build_table($results, $header = true)
99
$table .= '|-------------------|------------------------:|-------------:|----------:|-------------:|' . "\n";
1010
}
1111

12-
if (!$results) {
12+
if (!$res1) {
1313
$text = 'Table is empty!';
1414
$lLen = 87;
15-
$lELen = ($lLen - strlen($text))/2;
16-
17-
$table .= sprintf("|%".$lELen."s%".strlen($text)."s%".$lELen."s|\n", '', $text, '');
15+
$lELen = ($lLen - strlen($text)) / 2;
16+
17+
$table .= sprintf("|%" . $lELen . "s%" . strlen($text) . "s%" . $lELen . "s|\n", '', $text, '');
1818
return $table;
1919
}
20-
21-
foreach ($results as $fw => $result) {
20+
21+
foreach ($res1 as $fw => $result) {
22+
$comp['rps'] = '(-)';
23+
$comp['memory'] = '(-)';
24+
if (!empty($res2[$fw])) {
25+
$comp['rps'] = '(' . culc_percentage($result['rps'], $res2[$fw]['rps']) . '%)';
26+
$comp['memory'] = '(' . culc_percentage($result['memory'], $res2[$fw]['memory']) . '%)';
27+
}
28+
2229
$table .= sprintf(
2330
"|%-19s|%25s|%14s|%11s|%14s|\n",
2431
$fw,
25-
number_format($result['rps'], 2),
32+
number_format($result['rps'], 2) . ' ' . @$comp['rps'],
2633
number_format($result['rps_relative'], 1),
27-
number_format($result['memory'], 2),
34+
number_format($result['memory'], 2) . ' ' . @$comp['memory'],
2835
number_format($result['memory_relative'], 1)
2936
);
3037
}
3138

3239
return $table;
3340
}
41+
42+
function culc_percentage($targetNumber, $baseNumber)
43+
{
44+
$diff = $targetNumber - $baseNumber;
45+
$percentage = ($diff / $baseNumber) * 100;
46+
if ($percentage==0)
47+
return 0;
48+
return number_format($percentage, 1);
49+
}

libs/show_results_table.php

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,19 @@
88
rsort($results);
99

1010
$index = 0;
11-
if (!empty($argv[1]) && $argv[1]<count($results)) {
12-
$index = $argv[1];
11+
if (!empty($argv[1]) && $argv[1] < count($results)) {
12+
$index = intval($argv[1]);
1313
}
1414

1515
if (preg_match("/output\/(\S+)/", @$results[$index], $match)) {
16-
echo "Results: ".@$match[1].PHP_EOL;
16+
echo "Results: " . @$match[1] . PHP_EOL;
1717
}
1818

19-
$pr = parse_results(@$results[$index].'/results.log');
19+
$pr = parse_results(@$results[$index] . '/results.log');
2020

21-
echo build_table($pr);
21+
if ($index + 1 >= count($results)) {
22+
echo build_table($pr);
23+
} else {
24+
$prComp = parse_results(@$results[$index+1] . '/results.log');
25+
echo build_table($pr, $prComp);
26+
}

0 commit comments

Comments
 (0)