diff options
-rw-r--r-- | TYDAL-CHANGE-LOG | 1 | ||||
-rw-r--r-- | documentation/man-pages/phoronix-test-suite.1 | 2 | ||||
-rw-r--r-- | documentation/pts_options.html | 17 | ||||
-rwxr-xr-x | phoronix-test-suite | 8 | ||||
-rw-r--r-- | pts-core/functions/pts-functions_tests.php | 4 | ||||
-rw-r--r-- | pts-core/objects/pts_Graph/pts_CandleStickGraph.php | 2 | ||||
-rw-r--r-- | pts-core/options/analyze_all_runs.php | 47 |
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 <To Run></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 <Saved Name></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 <Saved Name></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 <Saved Name></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."); + } + } +} + +?> |