summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--TYDAL-CHANGE-LOG1
-rw-r--r--documentation/man-pages/phoronix-test-suite.12
-rw-r--r--documentation/pts_options.html17
-rwxr-xr-xphoronix-test-suite8
-rw-r--r--pts-core/functions/pts-functions_tests.php4
-rw-r--r--pts-core/objects/pts_Graph/pts_CandleStickGraph.php2
-rw-r--r--pts-core/options/analyze_all_runs.php47
7 files changed, 75 insertions, 6 deletions
diff --git a/TYDAL-CHANGE-LOG b/TYDAL-CHANGE-LOG
index 279da05..53ed25a 100644
--- a/TYDAL-CHANGE-LOG
+++ b/TYDAL-CHANGE-LOG
@@ -11,6 +11,7 @@ Phoronix Test Suite (Git)
- pts-core: Fix reporting erroneous motherboard string (Found on QEMU virtualized system)
- pts-core: Add and implement RawString to XML results specification for storing raw result values from all trial runs
- pts-core: Rename analyze option to analyze-batch
+- pts-core: Add analyze-all-runs option to generate a candlestick graph showing the distribution of results from all trial runs
- tandem_XmlReader: Major performance improvements and optimizations
- bilde_renderer: New PTS-spawned abstracted image rendering interface that supports SVG and PNG rendering with a standard API
- pts_Graph: Various changes to the graphing object
diff --git a/documentation/man-pages/phoronix-test-suite.1 b/documentation/man-pages/phoronix-test-suite.1
index f65d46e..3e1cdf3 100644
--- a/documentation/man-pages/phoronix-test-suite.1
+++ b/documentation/man-pages/phoronix-test-suite.1
@@ -68,6 +68,8 @@ This command will install (if needed) and then proceed to run all tests within t
.TP
.B analyze-batch <Saved Name>
.TP
+.B analyze-all-runs <Saved Name>
+.TP
.B list-installed-tests
.TP
.B list-test-usage
diff --git a/documentation/pts_options.html b/documentation/pts_options.html
index 4c99bd2..87ab525 100644
--- a/documentation/pts_options.html
+++ b/documentation/pts_options.html
@@ -71,10 +71,6 @@ will be run in the Phoronix Test Suite batch mode.</p>
<p><strong>batch-benchmark &lt;To Run&gt;</strong></p>
<p>This option and its arguments are equivalent to the benchmark option, but the
process will be run in the Phoronix Test Suite batch mode.</p>
-<p><strong>analyze-batch &lt;Saved Name&gt;</strong></p>
-<p>This option will analyze a batch results file and plot out the performance impact
-from the different options onto a line graph (i.e. to see the impact that changing the video
-resolution has on the system's performance).</p>
<h2>Test Options</h2>
<p><strong>list-tests</strong></p>
<p>This option will list all available tests. The name, title, status, and license
@@ -129,6 +125,19 @@ be supplied or the Phoronix Global ID or saved local file name.</p>
<p>This option allows you to log-in to your Phoronix Global account and will store
this information automatically. A new Phoronix Global account can be created (for free)
at http://global.phoronix-test-suite.com/.</p>
+<h2>Analytical Options</h2>
+<p><strong>analyze-batch &lt;Saved Name&gt;</strong></p>
+<p>This option will analyze a batch results file and plot out the performance impact
+from the different options onto a line graph (i.e. to see the impact that changing the video
+resolution has on the system's performance).</p>
+<p><strong>analyze-all-runs &lt;Saved Name&gt;</strong></p>
+<p>This option will generate a candlestick graph showing the distribution of results from all trial runs. The
+candlestick graph is similar to the Japanese candlestick charts used by the financial industry, except instead of representing
+stock data it's numerical result data from all trial runs.</p>
+<p>The tip of the upper-wick represents the highest value of the test runs with the tip of the lower-wick representing the lowest value of
+all test runs. The upper-edge of the candle body represents the first or last run value and the lower-edge represents the first or last run value.
+Lastly, if the last run value is less than the first run value, the candle body is the same color as the graph background, otherwise the last run value
+is greater.</p>
<h2>Module Options</h2>
<p><strong>list-modules</strong></p>
<p>This option will list all modules that are installed / present in the <em>pts-core/modules/</em> directory.
diff --git a/phoronix-test-suite b/phoronix-test-suite
index 2618af9..9f8e8a2 100755
--- a/phoronix-test-suite
+++ b/phoronix-test-suite
@@ -117,6 +117,9 @@ case "$1" in
"analyze-batch")
$PHP_BIN pts-core/phoronix-test-suite.php ANALYZE_BATCH $OPTION_ARG $3
;;
+"analyze-all-runs")
+ $PHP_BIN pts-core/phoronix-test-suite.php ANALYZE_ALL_RUNS $OPTION_ARG
+ ;;
"remove-result")
$PHP_BIN pts-core/phoronix-test-suite.php REMOVE_RESULT $OPTION_ARG
;;
@@ -228,7 +231,6 @@ Batch Testing Options:
batch-setup: Setup the batch mode options
batch-run <suite OR test>: Run the specified test(s) in batch mode
batch-benchmark <suite OR test OR saved file>: Install and run the test(s) in batch mode
- analyze-batch <suite / test / saved file / Global ID>: Provide an analysis of the results generated from a batch run
Result Viewing Options:
list-results: List all saved results
@@ -239,6 +241,10 @@ Result Viewing Options:
upload-results <saved name>: Upload a saved set of results to Phoronix Global
login: Enter your Phoronix Global log-in information for uploading results
+Analytical Options:
+ analyze-batch <saved name>: Provide an analysis of the results generated from a batch run
+ analyze-all-runs <saved name>: Generate a candlestick graph showing the distribution of results from all trial runs
+
Module Options:
list-modules: List all installed/available PTS modules
module-info: Show detailed information on a PTS module
diff --git a/pts-core/functions/pts-functions_tests.php b/pts-core/functions/pts-functions_tests.php
index c0c5993..5b3553f 100644
--- a/pts-core/functions/pts-functions_tests.php
+++ b/pts-core/functions/pts-functions_tests.php
@@ -114,6 +114,10 @@ function pts_save_result($save_to = null, $save_results = null)
{
$t = new pts_MultiPassFailGraph($results_name[$i], $results_attributes[$i], $results_scale[$i]);
}
+ else if(pts_read_assignment("GRAPH_RENDER_TYPE") == "CANDLESTICK")
+ {
+ $t = new pts_CandleStickGraph($results_name[$i], $results_attributes[$i], $results_scale[$i]);
+ }
else
{
$t = new pts_BarGraph($results_name[$i], $results_attributes[$i], $results_scale[$i]);
diff --git a/pts-core/objects/pts_Graph/pts_CandleStickGraph.php b/pts-core/objects/pts_Graph/pts_CandleStickGraph.php
index 2449f8d..5b10322 100644
--- a/pts-core/objects/pts_Graph/pts_CandleStickGraph.php
+++ b/pts-core/objects/pts_Graph/pts_CandleStickGraph.php
@@ -5,7 +5,7 @@
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008, Phoronix Media
Copyright (C) 2008, Michael Larabel
- pts_BarGraph.php: The bar graph object that extends pts_Graph.php.
+ pts_CandleStickGraph.php: Models a Japanese Candlestick chart
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/pts-core/options/analyze_all_runs.php b/pts-core/options/analyze_all_runs.php
new file mode 100644
index 0000000..44e9772
--- /dev/null
+++ b/pts-core/options/analyze_all_runs.php
@@ -0,0 +1,47 @@
+<?php
+
+/*
+ Phoronix Test Suite
+ URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
+ Copyright (C) 2008, Phoronix Media
+ Copyright (C) 2008, Michael Larabel
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+class analyze_all_runs
+{
+ public static function run($r)
+ {
+ $identifier = $r[0];
+
+ if(is_file(SAVE_RESULTS_DIR . $identifier . "/composite.xml"))
+ {
+ $composite_xml = file_get_contents(SAVE_RESULTS_DIR . $identifier . "/composite.xml");
+
+ pts_set_assignment("GRAPH_RENDER_TYPE", "CANDLESTICK");
+ if(pts_save_result($identifier . "/composite.xml", $composite_xml))
+ {
+ echo "\n" . $identifier . " has been re-rendered to show all test runs.\n";
+ pts_display_web_browser(SAVE_RESULTS_DIR . $identifier . "/composite.xml");
+ }
+ }
+ else
+ {
+ echo pts_string_header($identifier . " was not found.");
+ }
+ }
+}
+
+?>