Compare commits

...

2493 Commits

Author SHA1 Message Date
Michael Larabel
e4c5ca1aeb Prep for Phoronix Test Suite 8.2 M2 2018-08-15 14:02:46 -05:00
Michael Larabel
4c03aae195 pts_Graph: Tweaks to text sizing on vertical bar graphs 2018-08-15 13:08:23 -05:00
Michael Larabel
3d0e276743 pts-core: Fix "version" being stripped from (PTE) Inversion. 2018-08-14 13:14:40 -05:00
Michael Larabel
1a9f2b7016 phodevi: Reporting of L1TF / Level 1 Terminal Fault vulnerability 2018-08-14 12:46:15 -05:00
Michael Larabel
1e37a3ef06 pts-core: Allow comparing dynamic in-line result comparisons against local results when no Internet results matching or Internet not available 2018-08-12 18:23:12 -05:00
Michael Larabel
6de34d532c pts-core: Be clearer when no search results found on search sub-command 2018-08-12 17:41:18 -05:00
Michael Larabel
a6ab934444 pts-core: Allow stress-run to be triggered from interactive mode 2018-08-12 17:36:15 -05:00
Michael Larabel
67d35e72dc pts-core: Show "popular tests" in the invalid command helper 2018-08-12 16:26:43 -05:00
Michael Larabel
ad38824cbd pts-core: Rework list-recommended-tests to make use of download count information exposed via OB index repository data rather than needing to make fresh web query 2018-08-12 15:42:34 -05:00
Michael Larabel
847cfe2822 pts-core: Tweaks to shell sensor output 2018-08-12 13:45:23 -05:00
Michael Larabel
d3b2442fc0 pts-core: When Internet is not available and running list-tests, only show tests that are available via caches unless list-all-tests is run 2018-08-12 13:36:26 -05:00
Michael Larabel
edb57ebea0 pts-core: Fix possible alignment issue with value/spacer on outputting text-based result graphs 2018-08-09 19:20:34 -04:00
Michael Larabel
db224c251f pts-core: Readline improvement 2018-08-09 16:20:13 -05:00
Michael Larabel
6feb535eff pts-core: Few result output tweaks 2018-08-07 09:41:28 -05:00
Michael Larabel
ae96d87c5e pts-core: Clear up some PHP 7.3 warnings 2018-08-06 08:18:42 -05:00
Michael Larabel
0223dd4890 pts-core: Optional support with PHP 7.3+ to also obtain network info using net_get_interfaces() 2018-08-06 07:18:05 -05:00
Michael Larabel
096b18aca9 pts-core: Fix pts_logger warning 2018-08-04 17:59:47 -05:00
Michael Larabel
26a45e0a53 pts-core: Set LANG default to "en_US.utf8" 2018-08-01 15:03:26 -05:00
Michael Larabel
90436b882a pts-core: Add some possible missing dependencies on some configurations
From https://github.com/phoronix-test-suite/phoronix-test-suite/issues/279
2018-07-29 13:52:43 -05:00
Michael Larabel
31d7ee84bd pts-core: Alert the user when the test install directory is on a file-system mounted with 'noexec'
Suggested by https://github.com/phoronix-test-suite/phoronix-test-suite/issues/283
2018-07-29 13:48:45 -05:00
Michael Larabel
f371e1e7ed pts-core: Add libevent as possible external dependency 2018-07-29 12:48:41 -05:00
Michael Larabel
e50629c231 pts-core: Bump for previous commit the core version 2018-07-29 12:38:42 -05:00
Michael Larabel
08bf9d4e57 pts-core: Add DivideResultDivisor to result parser 2018-07-29 12:36:10 -05:00
Michael Larabel
fc9157fbf5 pts-core: Ubuntu package update for libtool 2018-07-28 19:33:51 -05:00
Michael Larabel
3073e04dee Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-07-28 18:32:44 -05:00
Michael Larabel
e5daa542df pts-core: Minor updates 2018-07-28 18:32:35 -05:00
Michael Larabel
95fdf3527f pts-core: Better handling when no files are downloaded due to no URLs being specified, a.k.a. files need to be manually downloaded or placed in cache by user. 2018-07-28 14:21:22 -04:00
Michael Larabel
f70020785d pts-core: Fix in result parser generation 2018-07-28 13:36:09 -04:00
Michael Larabel
a235986a30 pts-core: Add readline to detected PTS functions desired 2018-07-21 10:10:35 -05:00
Michael Larabel
7124b0454a Phoronix Test Suite 8.2 M1 prep 2018-07-21 08:56:20 -05:00
Michael Larabel
24ecd03a93 pts-core: Just another readline tweak 2018-07-20 14:31:01 -05:00
Michael Larabel
6ddfbb587d system_monitor: default to 1 sec frequency 2018-07-20 13:05:04 -05:00
Michael Larabel
affdba821b pts-core: Add autocompletion support for result file identifier based on installed software/hardware 2018-07-20 08:38:56 -05:00
Michael Larabel
6ccebe9f36 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-07-19 12:50:11 -05:00
Michael Larabel
443ad9ab31 pgo: Enforce make serial on second build too 2018-07-19 12:49:46 -05:00
Michael Larabel
6e69b1e00c pts-core: Ignore blank unknown tests 2018-07-19 11:59:19 -05:00
Michael Larabel
808981640a pts-core: Metadata improvements 2018-07-19 11:37:35 -04:00
Michael Larabel
a15df82d88 Appdata update... 2018-07-19 11:19:30 -04:00
Michael Larabel
29ccdced61 pts-core: Fix for previous commit 2018-07-19 09:08:36 -05:00
Michael Larabel
e12923c068 pts-core: Add support for overriding environment variables exposed to test scripts 2018-07-19 08:57:54 -05:00
Michael Larabel
a70649dfc7 pgo: Couple improvements... 2018-07-19 09:42:53 -04:00
Michael Larabel
4f0db42e09 pgo: Add a PGO module to make it super simple/easy to do PGO testing with PTS 2018-07-18 20:29:02 -04:00
Michael Larabel
53067f4e7a pts-core: Use array keys for OB IDs on shell auto completion 2018-07-18 17:52:32 -05:00
Michael Larabel
0f6e12600e pts-core: Auto-completion fix for Windows 2018-07-18 17:49:50 -05:00
Michael Larabel
651da1d84d Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-07-18 17:05:57 -05:00
Michael Larabel
3346e597cd pts-core: More Shell improvements 2018-07-18 17:05:41 -05:00
Michael Larabel
e1c6ca4dee pts-core: Various improvements to the Shell sub-command functionality, including auto-completion support 2018-07-18 16:58:58 -05:00
Michael Larabel
c6afe38549 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-07-18 13:49:46 -04:00
Michael Larabel
6ac2703f33 pts-core: Tweaks for landing PGO module soon 2018-07-18 13:49:22 -04:00
Michael Larabel
fe2ec09d16 pts-core: Windows external dependency updates 2018-07-18 12:33:28 -05:00
Michael Larabel
b87abf9bc4 phodevi: Another fix for prev commit 2018-07-18 07:02:42 -05:00
Michael Larabel
d655229fe4 phodevi: Adjust previous commit 2018-07-18 07:00:36 -05:00
Michael Larabel
dfb81b475d phodevi: Improve Linux multi-socket CPU detection when lscpu is not present 2018-07-18 06:58:47 -05:00
Michael Larabel
22e630d5e1 phodevi: overlayfs detection improvement 2018-07-18 06:54:43 -05:00
Michael Larabel
9f88c84d31 phodevi: Avoid lscpu warning when not present 2018-07-18 06:52:52 -05:00
Michael Larabel
6d24536e3c phodevi: Further adjust previous commit 2018-07-18 06:51:11 -05:00
Michael Larabel
7ffc816cc8 phodevi: Improve upon previous commit 2018-07-18 06:49:59 -05:00
Michael Larabel
105f47a17a phodevi: Fix for ps process detection when using busybox where command is unrecognized 2018-07-18 06:46:21 -05:00
Michael Larabel
cdd771dbb0 phoronix-test-suite: Drop some outdated php5 references in helper outputs 2018-07-18 06:43:04 -05:00
Michael Larabel
2f9e34edfb pts-core: Add initial qt5-development external dependency handling 2018-07-15 17:32:56 -05:00
Michael Larabel
7ef2be2de9 pts-core: Validation for result parser DisplayFormat 2018-07-15 13:58:39 -05:00
Michael Larabel
904e02041e pts-core: Allow specifying PASS_FAIL / DisplayFormat via result parser 2018-07-15 12:29:17 -04:00
Michael Larabel
08c24a4ad1 pts-core: Add mongodb to external dependencies 2018-07-14 19:53:17 -05:00
Michael Larabel
2f26c0a93f pts-core: Add readline-based autocompletion support for the result file save name for trying to match existing result file identifiers 2018-07-14 10:48:23 -05:00
Michael Larabel
f7884463ff pts-core: Add readline-based autocompletion support for text-based menu selection lists 2018-07-14 10:41:15 -05:00
Michael Larabel
1a6b8403ad phodevi: Improved multi CPU socket reporting on Windows
devi: Improved multi CPU socket reporting on Windows
y
2018-07-10 17:14:13 -07:00
Michael Larabel
a1adf66b72 PTS Windows: don't try cygwin php build right now since pcntl ended up being removed it appears 2018-07-06 14:39:49 -05:00
Michael Larabel
49b8f6d82b PTS Windows: see if cygwin php build available 2018-07-06 14:27:43 -05:00
Michael Larabel
5eaafaa9b1 phodevi: Fix for previous commit 2018-07-06 14:16:42 -05:00
Michael Larabel
5581622977 phodevi: Unit reporting for Windows battery 2018-07-06 14:15:16 -05:00
Michael Larabel
dc4c82a7f7 phodevi: Windows battery reporting discharge rate support 2018-07-06 14:14:15 -05:00
Michael Larabel
09bab0797d phodevi: Don't report Windows virtual network adapters 2018-07-06 13:54:07 -05:00
Michael Larabel
841082197d Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-07-03 12:59:56 -05:00
Michael Larabel
8d6d9ccc58 phoromatic: Drop the first network on failure check since eventually (after more attempts) it will then hit the secondary check and reboot if still having network issues further into the process 2018-07-03 12:59:14 -05:00
Michael Larabel
e091126310 Open RAKKESTAD for development 2018-07-03 12:58:37 -05:00
Michael Larabel
e4f402d161 pts-core: Kill pts_test_profile_downloads_writer 2018-07-01 16:15:01 -05:00
Michael Larabel
aa3a2535e9 pts-core: Kill pts_test_profile_writer 2018-07-01 16:04:25 -05:00
Michael Larabel
42f4393b40 pts-core: XML generation should be working correctly now from XSD 2018-07-01 15:58:03 -05:00
Michael Larabel
d17e99b093 Merge pull request #274 from FabioLolix/Arch_pacman
install-arch-packages.sh: Add --asdeps option
2018-07-01 06:49:17 -04:00
Michael Larabel
e3e49a95b8 Merge pull request #275 from FabioLolix/Arch_deps
pts-core: Arch deps, fixed zlib name, add freeimage, removed double mesa-demos
2018-07-01 06:48:49 -04:00
FabioLolix
f535953155 pts-core: Arch deps, fixed zlib name, add freeimage, removed double
common-dependencies is already added (mesa-demos + unzip)
freeimage is required by universe-x
nothing complained about zlib but name is not zlib1
2018-06-30 23:33:04 +02:00
FabioLolix
d2de17243a install-arch-packages.sh: Add --asdeps option
With this option installed packages will result as 'orphan' for an easy removal when no more needed, this option is already added in the three AUR pkgbuilds
2018-06-30 22:48:48 +02:00
Michael Larabel
9fb1641f24 pts-core: WIP on validation/XSD generation improvements 2018-06-30 11:06:38 -05:00
Michael Larabel
f660a20b46 phoromatic: Fix for previous commit 2018-06-30 09:40:31 -05:00
Michael Larabel
3affaad204 phoromatic: From rootadmin allow the rootadmin to override/reset a user account password 2018-06-30 09:34:08 -05:00
Michael Larabel
acd397cc7e pts-core: Strengthen GD check in result-file-to-pdf
https://github.com/phoronix-test-suite/phoronix-test-suite/issues/117#issuecomment-400772902
2018-06-27 13:03:04 -05:00
Michael Larabel
a86f4b31b7 Prep Phoronix Test Suite 8.0.1 2018-06-26 12:19:28 -05:00
Michael Larabel
866ca38051 use_wine: On test profiles having a wine external dependency, reset the os_under_test at install time too 2018-06-21 08:31:02 -05:00
Michael Larabel
e2323f8ac1 pts-core: On __post_test_install() to modules, pass the test install request object rather than just the identifier 2018-06-21 08:30:20 -05:00
Michael Larabel
852d7e06e5 pts-core: Pass the test install request object to the __pre_test_install() module call 2018-06-21 08:28:35 -05:00
Michael Larabel
690e89e46b Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-06-21 07:36:15 -05:00
Michael Larabel
cfd9808f8d pts-core: Fix skip-test behavior 2018-06-21 07:35:45 -05:00
Michael Larabel
b122474ffb TODO update 2018-06-21 07:35:35 -05:00
Michael Larabel
ae889bedd2 Merge pull request #270 from swarth100/add-rh-sudo-check
install-fedora-packages.sh: Add sudo password prompt
2018-06-20 05:22:13 -04:00
gresearch
acf5ff1a96 install-fedora-packages.sh: Fix inconsistent spacing 2018-06-20 10:17:45 +01:00
gresearch
71f514d185 install-fedora-packages.sh: Add SUDO password prompt prior to ROOT password prompt in CentOS/Fedora package installs 2018-06-20 10:15:16 +01:00
Michael Larabel
e3e815a451 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-06-19 19:07:10 -05:00
Michael Larabel
d8a8642f85 use_wine: On tests explicitly using wine as an external dependency, don't preser "_windows" test scripts for execution, reset to original handle. 2018-06-19 19:06:08 -05:00
Michael Larabel
ba6dcafb6f pts-core: Windows browser handling improvements 2018-06-18 09:49:07 -05:00
Michael Larabel
04278d1d5c pts-core: Rework commit from earlier today 2018-06-16 17:14:53 -05:00
Michael Larabel
6d2542d4ee pts-core: Fix for system log saving on Windows 2018-06-16 16:19:52 -05:00
Michael Larabel
3ce2bde8b9 pts-core: Don't run chmod process on Windows 2018-06-16 11:27:25 -05:00
Michael Larabel
d964e31c40 pts-core: Better checking of system binaries in external dependency handler 2018-06-16 10:46:50 -05:00
Michael Larabel
abf4772178 pts-core: Don't show "Test Profile Status: " on null string 2018-06-16 09:48:54 -05:00
Michael Larabel
4a9d0170e7 pts-core: Boldness of process string 2018-06-16 09:46:21 -05:00
Michael Larabel
fe58e75f72 pts-core: Ensure files for all platforms are cached on running make-download-cache 2018-06-16 09:38:55 -05:00
Michael Larabel
a626830375 pts-core: Don't prompt on failed downloads within make-download-cache 2018-06-16 09:33:51 -05:00
Michael Larabel
85b3d2e6c6 windows: Allow space in path to PTS without causing error 2018-06-16 05:22:18 -05:00
Michael Larabel
ee2973c218 pts-core: Fix alignment in CSV output of results 2018-06-14 12:24:50 -05:00
Michael Larabel
c1eee98338 pts-core: tiff-dev dependency fix for Ubuntu 2018-06-12 16:38:52 -05:00
Michael Larabel
606c25aa78 pts-core: Fix renderer logic check 2018-06-12 10:33:11 -05:00
Michael Larabel
e6772ca738 pts-core: Also check for D3D in renderer string as part of Direct3D checking 2018-06-12 09:58:41 -05:00
Michael Larabel
0a1ce03323 pts-core: Only show "Direct3D" options for "renderer" test options when running on Windows/Wine 2018-06-12 09:39:18 -05:00
Michael Larabel
5809354dc8 phodevi: Report wine version in system layer if any test external dependency has wine set 2018-06-12 09:09:46 -05:00
Michael Larabel
940c09ddb4 use_wine: Cleanup previous commit 2018-06-12 08:55:45 -05:00
Michael Larabel
2c12d1f723 use_wine: check for msiexec.exe as well 2018-06-12 08:54:37 -05:00
Michael Larabel
266802527b phodevi: Report Wine version if WINE_VERSION environment variable is set 2018-06-12 08:53:12 -05:00
Michael Larabel
f98563e117 use_wine: Don't run when the test profile is already catered for wine 2018-06-12 08:51:22 -05:00
Michael Larabel
a4581c72b2 pts-core: Add "wine" external dependency support 2018-06-12 08:40:32 -05:00
Michael Larabel
3c936252ca 0002-use_wine-Replace-cygdrive-with-WINEPREFIX-dosdevices 2018-06-12 08:30:54 -05:00
Michael Larabel
7e9124d870 use_wine: Patch from Stefan Dosinger for using WINEPREFIX if set 2018-06-12 08:30:01 -05:00
Michael Larabel
475ef6709e use_wine: Latest updates to get a few more test profiles running... 2018-06-11 20:38:00 -04:00
Michael Larabel
3642106f7d Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-06-11 19:27:54 -05:00
Michael Larabel
30d212c108 phodevi: Add USE_WINE to system id string so when its value changes, tests are rebuilt 2018-06-11 19:14:02 -05:00
Michael Larabel
4fa5475036 use_wine: New module to use Wine for benchmarks of Windows test scripts on Linux 2018-06-11 18:27:15 -04:00
Michael Larabel
658974ed00 pts-core: Preparations for Wine module, abstracting out some OS queries 2018-06-11 18:25:54 -04:00
Michael Larabel
33a0c9ff05 phodevi: Add USE_WINE environment variable check, point it towards the wine binary you wish to test 2018-06-11 10:25:42 -05:00
Michael Larabel
6fad23f40b phoromatic: Allow system variables to be edited from the system variables page, to address https://github.com/phoronix-test-suite/phoronix-test-suite/issues/264 2018-06-09 09:27:42 -05:00
Michael Larabel
4ab129fa12 phoromatic: fix public comparisons 2018-06-09 09:23:06 -05:00
Michael Larabel
b0683fb654 phoromatic: public viewer improvements 2018-06-09 09:19:49 -05:00
Michael Larabel
9434f3e1fe pts-core: Ensure clean log when adding to the log 2018-06-09 08:57:01 -05:00
Michael Larabel
073d4fe568 phoromatic: Ensure logs are stripped of extra characters before uploading to Phoromatic 2018-06-09 08:51:40 -05:00
Michael Larabel
8daabc9fce pts-core: Minor tweaks 2018-06-08 09:12:09 -05:00
Fatima Sheremetyeva
cc5704555c pts-core: Add csv-individual-frame-times 2018-06-08 09:52:46 -04:00
Michael Larabel
81f7c7bedc Phoronix Test Suite 8.0 release highlights 2018-06-05 08:15:38 -05:00
Michael Larabel
3397c2ec89 PTS 8.0 prepping... 2018-06-05 08:09:50 -05:00
Michael Larabel
1bb6ab5543 pts-core: Allow spaces when exporting vars 2018-06-04 04:51:48 -05:00
Michael Larabel
bde288bc1b phodevi: Get rid of some Windows network reporting "WAN" adapter junk 2018-06-03 08:32:05 -05:00
Michael Larabel
8bac6cb402 phodevi: Ensure Wayland via WAYLAND_DISPLAY always gets reported 2018-06-03 06:00:31 -05:00
Michael Larabel
7353632f20 pts-core: Another bold string 2018-06-02 17:10:17 -05:00
Michael Larabel
488ef46ddf pts-core: allow external dependencies on macOS for brew 2018-06-02 16:04:42 -05:00
Michael Larabel
88390437d9 pts-core: Add external dependency support for Brew macOS package manager 2018-06-02 10:57:02 -05:00
Michael Larabel
933c1ad3e6 pts-core: Fix web browser prompt on macOS 2018-06-02 09:37:13 -05:00
Michael Larabel
f516f1c3d0 pts-core: dependency updates for NetBSD/OpenBSD 2018-06-01 12:59:00 -05:00
Michael Larabel
9c67f7909d pts-core: Add pkg_add for NetBSD provider 2018-06-01 12:37:50 -05:00
Michael Larabel
45205178ae Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-06-01 12:32:59 -05:00
Michael Larabel
925aff4e82 pts-core: Improve error message 2018-06-01 12:32:32 -05:00
Michael Larabel
6bb5bd83ba Merge pull request #261 from swarth100/fix-phoromatic-test-create-post
pts-core/phoromatic/pages/phoromatic_create_test.php: Fix issue https…
2018-06-01 05:18:30 -04:00
Alberto Spina
fd8a7c3ce3 pts-core/phoromatic/pages/phoromatic_create_test.php: Fix issue https://github.com/phoronix-test-suite/phoronix-test-suite/issues/257 2018-06-01 09:03:29 +01:00
Michael Larabel
265810d4b4 gui: More messages 2018-05-31 17:16:02 -05:00
Michael Larabel
4ec1e9d2cc pts-core: Further make it clear that gui is deprecated 2018-05-31 17:13:16 -05:00
Michael Larabel
dc4cd0739f pts-core: Add PTS_RELEASE_DATE 2018-05-31 17:11:12 -05:00
Michael Larabel
2f71b292ba pts-core: Update portaudio external dependency on Ubuntu 2018-05-31 14:25:04 -05:00
Michael Larabel
7783bdf44f pts-core: Avoid duplicate test identifiers on graphs 2018-05-31 14:22:17 -05:00
Michael Larabel
166cbe134d phoromatic: Hopefully this addresses https://github.com/phoronix-test-suite/phoronix-test-suite/issues/257 2018-05-31 11:51:19 -05:00
Fatima Sheremetyeva
15867672b7 phodevi: Improve xserver version detection 2018-05-31 06:56:53 -05:00
Michael Larabel
3740babcd4 phoromatic: Report version in title of web interface 2018-05-30 18:40:01 -05:00
Michael Larabel
ef96cd126e Phoronix Test Suite 8.0 Milestone 5 prep 2018-05-30 18:24:53 -05:00
Michael Larabel
f4f38f3b1b pts-core: Add "all_results" when exporting results as JSON per https://github.com/phoronix-test-suite/phoronix-test-suite/issues/251 2018-05-30 16:28:09 -05:00
Michael Larabel
94732d1590 phoromatic: Fixes 2018-05-30 16:21:41 -05:00
Michael Larabel
4b3d2dedc0 pts-core: Improve message about missing executable 2018-05-30 15:11:50 -05:00
Michael Larabel
e4aaa3bdb7 pts-core: Fix some typos in string 2018-05-30 15:08:14 -05:00
Michael Larabel
78bec4ed0f phoromatic: Various tweaks, ensure local tests appear in all the build/schedule prompts, and some other tweaks/corrections.
Should also take care of https://github.com/phoronix-test-suite/phoronix-test-suite/issues/255
2018-05-29 11:53:18 -05:00
Michael Larabel
3d1a09ebe6 pts-core: Another openSUSE ex dep fix 2018-05-29 09:33:28 -05:00
Michael Larabel
b4ebeb3b9b pts-core: OpenSUSE ex dep updates 2018-05-29 04:31:20 -05:00
Michael Larabel
ebb5a4f316 pts-core: Missing bold string previously 2018-05-28 15:49:04 -05:00
Michael Larabel
895cc09f36 phodevi: minor improvement to file-system detection on Windows 2018-05-28 15:44:36 -05:00
Michael Larabel
35dbff8039 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-05-28 15:39:10 -05:00
Michael Larabel
65391cb682 pts-core: Better determine php_openssl.dll on Windows, fixes https://github.com/phoronix-test-suite/phoronix-test-suite/issues/249 2018-05-28 15:37:49 -05:00
Michael Larabel
865156461a Merge pull request #256 from lramage94/feature_termux
pts-core: Add Termux external dependency handling support
2018-05-24 15:04:00 -04:00
lramage94
a7753b10d2 pts-core: Add Termux external dependency handling support 2018-05-24 12:34:50 -04:00
Michael Larabel
54db46b2fd pts-core: Warn when download fails due to HTTS download with OpenSSL not being present 2018-05-24 08:47:52 -05:00
Michael Larabel
038fd99b27 pts-core: Warning fix for [NOTICE] Invalid argument supplied for foreach() in pts_client:838 2018-05-22 17:36:06 -05:00
Michael Larabel
c82e72b991 phoromatic: Various fixes 2018-05-22 12:55:36 -05:00
Michael Larabel
28018e4c6a phoromatic: Typo fix for previous commit 2018-05-22 09:59:28 -05:00
Michael Larabel
14e8dd23a3 phoromatic: Report status of other PTS process benchmarks when phoromatic process is idling or maintenance mode 2018-05-22 09:47:05 -05:00
Michael Larabel
0f45f9e1a1 pts-core: Add a benchmark logger 2018-05-22 09:13:41 -05:00
Michael Larabel
5e80315a25 phoromatic: Updates 2018-05-22 07:20:25 -05:00
Michael Larabel
f852a71f68 phodevi: Typo from previous commit 2018-05-22 04:16:24 -05:00
Michael Larabel
b921f4b7ee phodevi: Shorten up Speculative Store Bypass to SSB 2018-05-22 04:15:48 -05:00
Michael Larabel
ed331bb2ea phodevi: Add spec_store_bypass / Spectre Variant 4 reporting 2018-05-22 04:14:07 -05:00
Michael Larabel
2061bb2ca6 pts-core: Don't automatically install tests in stress-run if not installed 2018-05-18 15:05:01 -05:00
Michael Larabel
060788fa26 phoromatic: More test profile creation improvements 2018-05-17 10:09:32 -05:00
Michael Larabel
d2a60c8161 Phoronix Test Suite 8.0 Milestone 4 2018-05-16 04:47:48 -05:00
Michael Larabel
fb924e9a89 documentation: MD should be good now... 2018-05-16 04:42:11 -05:00
Michael Larabel
3b7d7af937 documentation: MD test 2018-05-16 04:40:30 -05:00
Michael Larabel
696d562c0c documentation: MD blockquote fix 2018-05-16 04:38:18 -05:00
Michael Larabel
4b208c0a5d documentation: Markdown generation improvements 2018-05-16 04:36:15 -05:00
Michael Larabel
ee8e9e0cda phoromatic: Fix reset on results page
phoromatic: At least temporarily, run all the search queries through same code path
2018-05-15 12:12:58 -05:00
Michael Larabel
54d027a1be phoromatic: Latest improvements 2018-05-15 10:55:59 -05:00
Michael Larabel
3e8a3bf7e2 pts-core: BUMP PTS_CORE_VERSION 2018-05-14 19:06:23 -05:00
Michael Larabel
bc1e8d1d3d phodevi: RISC-V SiFive CPU detection 2018-05-14 19:06:08 -05:00
Michael Larabel
423114a1a4 Documentation updates 2018-05-12 19:36:20 -05:00
Michael Larabel
a112bc9657 pts-core: Improve string in result-file-to-suite 2018-05-12 08:18:35 -05:00
Michael Larabel
1a6dff2238 phoromatic: Create test profile from Phoromatic UI 2018-05-12 08:06:19 -05:00
Michael Larabel
982aa40d0d pts-core: Tweaks 2018-05-12 07:14:34 -05:00
Michael Larabel
8333ed745c phoromatic: Fix PTS_IS_DEV_BUILD warning 2018-05-11 06:45:48 -05:00
Michael Larabel
7cc2d164fd phoromatic: Fix time_limit warning 2018-05-11 06:44:25 -05:00
Michael Larabel
34a40c8791 phoromatic: Changes staged from the local Phoromatic server 2018-05-10 10:58:50 -05:00
Michael Larabel
0847fcd9a9 pts-core: Latest batch of test profile creation support.... 2018-05-10 10:45:03 -05:00
Michael Larabel
31ad2a1872 pts-core: Move the template handling into pts_validation 2018-05-09 14:09:26 -05:00
Michael Larabel
7b8bcfbaff pts-core: create-test-profile from the CLI should largely be in initial, basic shape 2018-05-09 13:16:06 -05:00
Michael Larabel
26137c9cec phodevi: Updated spectre reporting on DragonFlyBSD 2018-05-09 08:48:46 -05:00
Michael Larabel
5f3c3840b6 pts-core: Drop some code no longer used 2018-05-08 16:55:35 -05:00
Michael Larabel
d212c31516 pts-core: create-test-profile is getting into shape 2018-05-08 16:46:53 -05:00
Michael Larabel
a52d1149aa pts-core: Get downloads.xml creation working as part of the create-test-profile upbringing... 2018-05-08 14:51:25 -05:00
Michael Larabel
8318d3d05b pts-core: Start of create-test-profile is working 2018-05-08 10:53:31 -05:00
Michael Larabel
27fa0b245e pts-core: More XML schema work 2018-05-04 11:27:53 -05:00
Michael Larabel
48b6ecfdfd pts-core: Start work on create-test-profile.... 2018-05-04 10:15:46 -05:00
Michael Larabel
6f9e659bb1 user-agreement: Basic updates 2018-05-04 08:38:46 -05:00
Michael Larabel
5f42a2e012 pts-core: Minor tweaks 2018-05-04 04:48:48 -05:00
Michael Larabel
311c8bc7d3 phoromatic: Various search improvements to phoronix-test-suite search 2018-05-03 16:44:54 -05:00
Michael Larabel
83c2beea88 phoromatic: Improve search functionality on results page, allow boolean expressions, date ranges, many other search features 2018-05-03 15:11:11 -05:00
Michael Larabel
0f19d80f6a pts-core: Fedora split out php-json 2018-05-03 15:05:58 -05:00
Michael Larabel
e9a5b61c64 phoromatic: Improve search functionality on results page 2018-05-01 08:26:34 -05:00
Michael Larabel
92de5b0a8c pts-core: That should be all cleaned up now.... 2018-04-30 10:35:28 -05:00
Michael Larabel
e8144b4347 pts-core: Clean up the logic for previous commit 2018-04-30 10:33:08 -05:00
Michael Larabel
f974a67042 pts-core: Fix for previous coimmit 2018-04-30 10:29:45 -05:00
Michael Larabel
1fe839e5ca pts-core: Basic changes, should be all that's needed for EU GDPR safeguards 2018-04-30 10:04:26 -05:00
Michael Larabel
5fef46e923 phoromatic: Also add confirmation for user of sent 2018-04-23 10:12:27 -05:00
Michael Larabel
be65a375a2 phoromatic: Fix subject input type from previous commit 2018-04-23 10:11:13 -05:00
Michael Larabel
7e74fe5900 phoromatic: Add a "email all users" option to the rootadmin page 2018-04-23 10:10:36 -05:00
Michael Larabel
c0d5d1573c Preparations for Phoronix Test Suite 8.0 Milestone 3 2018-04-16 06:46:53 -05:00
Michael Larabel
e72f3ff7a1 phodevi: Spectre and Meltdown mitigation reporting for DragonFlyBSD 2018-04-14 12:07:26 -05:00
Michael Larabel
1e310aa6d5 pts-core: Add ColoredConsole option in user configuration file of AUTO / TRUE / FALSE to control colored text behavior
Per https://github.com/phoronix-test-suite/phoronix-test-suite/issues/246
2018-04-12 19:51:43 -05:00
Michael Larabel
7768d61864 phoromatic: Ensure environment variables set via Phoromatic web interface get passed to tests 2018-04-12 09:40:25 -05:00
Michael Larabel
221b79e9a3 pts-core: Report test-run-times to test result JSON 2018-04-09 14:04:18 -05:00
Michael Larabel
de00f10bcb Revert "pts-core: Add "time-consumed" to each result's JSON for parsing by anyone interested in the elapsed time during testing for each test case"
This reverts commit 489803eb66.
2018-04-09 13:48:27 -05:00
Michael Larabel
489803eb66 pts-core: Add "time-consumed" to each result's JSON for parsing by anyone interested in the elapsed time during testing for each test case 2018-04-09 10:55:27 -05:00
Michael Larabel
6adf614e62 phodevi: Add Spectre/Meltdown reporting on BSD 2018-04-09 05:39:01 -05:00
Michael Larabel
d6d010db29 pts-core: Add Rscript for BSD 2018-04-08 17:02:20 -05:00
Michael Larabel
6f40cbc2bb pts-core: Fix sklearn path 2018-04-08 12:09:16 -05:00
Michael Larabel
796002b497 pts-core: Fix package name 2018-04-08 12:07:42 -05:00
Michael Larabel
bb84a01124 pts-core: No reason to use sudo when root for BSD pkg install script 2018-04-08 12:03:31 -05:00
Michael Larabel
3c1917591f Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-04-08 12:28:38 -04:00
Michael Larabel
a99524364a pts-core: Allow fallback on dependency handler hitting no matches to see if statically defined in XML list 2018-04-08 12:28:03 -04:00
Michael Larabel
08ba136b9f pts-core: Compiler mask updates for fortran 2018-04-08 07:10:34 -05:00
Michael Larabel
c1d48729e3 pts-core: BSD external dependency updates 2018-04-08 06:22:15 -05:00
Michael Larabel
7a3dd43890 phodevi: Lumina Desktop Environment detection 2018-04-08 07:17:07 -04:00
Michael Larabel
e2fa5ee6ae pts-core: Fix for golang on BSD 2018-04-07 19:17:32 -05:00
Michael Larabel
d850218bbc pts-core: Add gmake to build-utilities on BSD 2018-04-07 18:51:09 -05:00
Michael Larabel
9e180abcf8 pts-core: Fix list-tests 2018-04-07 18:33:38 -05:00
Michael Larabel
ecff3c1352 pts-core: Add report for "illegal argument" to scan_for_error 2018-04-07 17:40:05 -05:00
Michael Larabel
15b6af1bd7 pts-core: Add python2 and python3 compiler masking support 2018-04-07 10:47:56 -05:00
Michael Larabel
8deef17b2c pts-core: Use sudo on install-dragonfly-packages 2018-04-06 19:45:54 -05:00
Michael Larabel
8fd46e944c Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-04-06 19:26:27 -05:00
Michael Larabel
3e4847a277 pts-core: Try re-enabling compiler mask on BSD for now 2018-04-06 19:26:14 -05:00
Michael Larabel
4b6c38ea90 phodevi: BSD motherboard tweaks 2018-04-06 20:00:56 -04:00
Michael Larabel
8cff2ba48a pts-core: Get color terminal support working on BSDs 2018-04-06 18:51:31 -05:00
Michael Larabel
079b9ed1a1 pts-core: Fix potential warning on Windows when Get-TimeZone is not present
Also add pts_element_node missing from previous commit
2018-04-06 14:27:08 -05:00
Michael Larabel
283fe6ed3b pts-core: Begin transitioning to new XSD handling.... 2018-04-05 19:18:50 -05:00
Michael Larabel
54a9065b8d pts-core: More validation / XSD tweaking 2018-04-04 19:47:44 -05:00
Michael Larabel
88a87c7299 pts-core: Add start of pts_input_type_restrictions and type handling within validation code 2018-04-04 19:38:50 -05:00
Michael Larabel
efbb369ecb backup: Use TAR format by default on non-Windows OSes 2018-04-04 19:38:28 -05:00
Michael Larabel
573df72e2e pts-core: Add ruby external dependency 2018-04-04 14:12:40 -05:00
Michael Larabel
d7c10aa83f pts-core: Document the result parser 2018-04-03 10:17:16 -05:00
Michael Larabel
c6c38b6841 pts-core: Restructure result parser XML data handling 2018-04-02 18:36:03 -05:00
Michael Larabel
68314b4706 pts-core: Move the XSD processing code now off to pts_validation 2018-04-01 18:31:45 -05:00
Michael Larabel
7c922ab8e0 pts-core: Get test-profile-downloads.xsd documented with API calls as IDs for inspect-test-profile 2018-04-01 17:35:30 -05:00
Michael Larabel
4f08f5d124 pts-core: Introduce test_profile->get_downloads(), associated changes 2018-04-01 17:30:45 -05:00
Michael Larabel
b6d26ef0ea pts-core: More parsing work 2018-04-01 16:44:05 -05:00
Michael Larabel
15cbacf11c pts-core: inspect-test-profile should now be fully fleshed out 2018-04-01 16:30:32 -05:00
Michael Larabel
c13a0c979c pts-core: Add test-profile-downloads.xsd documentation 2018-03-31 19:35:52 -05:00
Michael Larabel
471a8fca10 pts-core: Add new inspect-test-profile sub-command 2018-03-31 19:25:16 -05:00
Michael Larabel
5fe04fe512 pts-core: Start work on new PTS test profile documentation 2018-03-31 11:38:42 -05:00
Michael Larabel
6575797961 pts-core: Fix for make-download-cache 2018-03-31 09:24:30 -05:00
Michael Larabel
3bddc10aa8 pts-core: Remove space from previous commit 2018-03-30 19:38:43 -05:00
Michael Larabel
443168b464 pts-core: Various optimizations for the backup process 2018-03-30 19:36:21 -05:00
Michael Larabel
c4c3ca1627 pts-core: Clean up some of the PTS test result parser debug messages to be more helpful, less spew 2018-03-30 18:45:54 -05:00
Michael Larabel
30f1c0a33e pts-core: Add "V8" external dependency for V8 JavaScript engine 2018-03-30 18:22:57 -05:00
Michael Larabel
317b19f073 backup: More cleaning 2018-03-30 14:22:22 -05:00
Michael Larabel
56865d576d backup: SKip the XML conf since will have been already copied 2018-03-30 11:55:23 -05:00
Michael Larabel
10f6079ae4 backup: also show dest on restoration 2018-03-30 11:40:14 -05:00
Michael Larabel
3aa0f47245 backup: Flesh out more of the restore stuff 2018-03-30 11:39:29 -05:00
Michael Larabel
b8c8e83563 pts-core: Fix PTS_COMMAND_PATH define 2018-03-30 11:06:09 -05:00
Michael Larabel
b3e7a69074 pts-core: More bits 2018-03-30 11:03:40 -05:00
Michael Larabel
7b9c9ae5ca backup: Initial backup/restore module... backup.create should be working so far 2018-03-30 10:13:21 -05:00
Michael Larabel
752196e86b pts-core: Drop PTS_MODULE_DATA_PATH 2018-03-30 10:11:12 -05:00
Michael Larabel
a0d0b90baf pts-core: Drop PTS_MODULE_LOCAL_PATH -r * 2018-03-29 18:52:23 -05:00
Michael Larabel
c648fadd61 pts-core: Drop PTS_TEMP_STORAGE 2018-03-29 18:48:17 -05:00
Michael Larabel
36425bb513 pts-core: Drop PTS_OPENBENCHMARKING_PATH 2018-03-29 18:37:44 -05:00
Michael Larabel
2f3113c074 pts-core: Drop PTS_MODULE_PATH, use new pts_module::module_path() instead 2018-03-29 18:27:19 -05:00
Michael Larabel
43029a5949 pts-core: Drop PTS_EXDEP_PATH due to its limited usage but in main code path, switch to new pts_exdep_generic_parser::get_external_dependency_path() 2018-03-29 18:25:01 -05:00
Michael Larabel
cf0464b384 pts-core: Introduce pts_client::download_cache_path() cleanup 2018-03-29 18:14:34 -05:00
Michael Larabel
439bfb3e4a pts_Graph: Various fixes 2018-03-29 11:45:47 -05:00
Michael Larabel
376a5d98d0 pts-core: Clean up the Windows batch files a bit... 2018-03-29 09:42:17 -05:00
Michael Larabel
333ab5dc7e Add a basic Windows install to put PTS in C:\phoronix-test-suite 2018-03-29 09:37:40 -05:00
Michael Larabel
fb21292f17 pts-core: Make Cygwin wait when needed on commands 2018-03-27 04:32:07 -05:00
Michael Larabel
9a4d307970 pts-core: Fix local IP detection on hostname when having multiple interfaces 2018-03-26 17:56:45 -05:00
Michael Larabel
9619543455 pts-core: Somehow had forgotten with M1 to update the codename... 2018-03-25 18:32:03 -05:00
Michael Larabel
9d9083945e phoromatic: Copy paste fail from previous commit 2018-03-25 17:50:13 -05:00
Michael Larabel
0f92db7f9f phoromatic: Ping daily the zero conf OB relay 2018-03-25 17:26:53 -05:00
Michael Larabel
680decaa90 pts-core: Fix for previous commit 2018-03-24 20:25:38 -05:00
Michael Larabel
587ea55d24 pts-core: Add the client-side bits for OpenBenchmarking.org relay of Phoromatic Server information for LAN 2018-03-24 17:48:54 -05:00
Michael Larabel
198d6bf751 pts-core: Add initial AdvertiseServiceOpenBenchmarkRelay support 2018-03-24 17:34:52 -05:00
Michael Larabel
763757cfc0 pts-core: Fix documentation generation 2018-03-24 15:09:18 -05:00
Michael Larabel
5b69e46c43 Phoronix Test Suite 8.0 M2 2018-03-24 15:06:56 -05:00
Michael Larabel
5a05a7f8f8 pts-core: Drop debug false from last commit 2018-03-24 15:03:03 -05:00
Michael Larabel
a8643a861a pts-core: Add openbenchmarking-uploads sub-command for reporting recent result uploads from the local IP 2018-03-24 14:59:27 -05:00
Michael Larabel
75308a0565 pts-core: Normalization fix 2018-03-23 13:00:22 -05:00
Michael Larabel
e552d36eb9 pts-core: Clarify PhoroScript code path with current usage 2018-03-22 20:11:42 -05:00
Michael Larabel
a0920673e7 pts-core: Move this to always check 2018-03-22 15:13:47 -05:00
Michael Larabel
ac04329825 pts-core: Drop old debug message, update Arch dependencies 2018-03-22 13:29:00 -05:00
Fatima Sheremetyeva
f95c091cc6 phodevi: Fix python version detection on Windows 2018-03-22 11:43:55 -05:00
Michael Larabel
6935e67ce3 pts-core: Revert previous commit 2018-03-19 15:19:50 -05:00
Michael Larabel
4dc9a80f0b https://github.com/phoronix-test-suite/phoronix-test-suite/issues/244 2018-03-19 15:13:48 -05:00
Michael Larabel
b3dcd1bf92 phodevi: reboot/shutdown support on Windows 2018-03-19 11:57:17 -05:00
Michael Larabel
47b2cf1322 pts-core: Add native XML result processing support for result parser 2018-03-19 09:39:20 -05:00
Michael Larabel
e6a7807110 pts-core: More Windows support improvements 2018-03-17 11:02:49 -05:00
Michael Larabel
41e0a515df phoronix-test-suite.bat: Allow it to be called when not within current
directory
2018-03-17 08:40:26 -05:00
Michael Larabel
bea9fe88da pts-core: debug-self-test improvement 2018-03-17 08:29:00 -05:00
Michael Larabel
b94324e541 pts-core: Add PTS_LAUNCHER environment variable 2018-03-17 07:48:03 -05:00
Michael Larabel
7495200358 pts-core: Add WinRAR path on Windows to PATH when needed 2018-03-16 14:18:37 -05:00
Michael Larabel
10dc1a9084 pts-core: Add DeleteOutputBefore and DeleteOutputAfter options to the result parser 2018-03-12 17:00:20 -05:00
Michael Larabel
471a547cf1 phodevi: Fix warning when GCC is not present on system 2018-03-12 09:06:35 -05:00
Michael Larabel
15ac890f93 pts-core: Fix for batch mode 2018-03-10 09:36:59 -06:00
Michael Larabel
2770e4713f pts-core: Address countable warning message 2018-03-09 17:26:06 -06:00
Michael Larabel
04fb42163c Didn't bump the change-log for yesterday's 8.0 M1 tag 2018-03-09 04:14:16 -06:00
Michael Larabel
cb929a0791 Phoronix Test Suite 8.0 Milestone 1 2018-03-08 19:28:08 -06:00
Michael Larabel
54393cff88 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-03-08 18:16:32 -06:00
Michael Larabel
0cbea8b51a pts-core: Also add python2 in cygwin on Windows 2018-03-08 18:02:32 -06:00
Michael Larabel
e53636d05b pts-core: More Windows updates 2018-03-08 17:54:17 -06:00
Michael Larabel
02d84d3dbd phodevi: Get Clang version reporting working on Windows 2018-03-08 16:47:28 -06:00
Michael Larabel
6c68ee9855 pts-core: Add LLVM default path to Windows system path 2018-03-08 16:43:20 -06:00
Michael Larabel
920cd98179 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-03-08 13:38:28 -06:00
Michael Larabel
f1c7e43bbd pts-core: More windows work 2018-03-08 13:38:11 -06:00
Michael Larabel
3a5b063ef9 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-03-08 13:27:06 -06:00
Michael Larabel
5fc3f305fc Add cmake as a possible windows ex dep 2018-03-08 13:26:43 -06:00
Michael Larabel
c6a30c3baa Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2018-03-08 13:24:36 -06:00
Michael Larabel
106c009157 pts-core: Fix for missing first arg on cygwin installer 2018-03-08 13:24:20 -06:00
Michael Larabel
081e7d711c pts-core: p7zip is available on Cygwin, allow it as external dependency 2018-03-08 11:07:49 -06:00
Michael Larabel
780fa53fd4 pts-core: Add test_install_message() to display mode interface 2018-03-08 10:33:09 -06:00
Michael Larabel
44df0f52f7 pts-core: Add ~/install-message support where if a test profile installer writes there, that message will in turn be shown to the user on test install 2018-03-08 10:01:52 -06:00
Michael Larabel
f2d1e80a23 phodevi: 2560x1440 is better these days than 2560x1600 2018-03-07 14:35:57 -06:00
Michael Larabel
a5b1139801 phodevi: Round MB memory usage 2018-03-07 14:23:48 -06:00
Michael Larabel
bc04922d2e phodevi: Typo fix for previous commit 2018-03-07 14:10:51 -06:00
Michael Larabel
9382713b91 phodevi: NV driver version reporting on Windows 2018-03-07 14:08:48 -06:00
Michael Larabel
a88c0b7b8c phodevi: More NV SMI work 2018-03-07 14:01:05 -06:00
Michael Larabel
e66599a7e2 phodevi: NVIDIA GPU detection improvements on Windows using SMI 2018-03-07 13:45:54 -06:00
Michael Larabel
5ba8b99b72 phodevi: Fixes for previous commit 2018-03-07 12:39:13 -06:00
Michael Larabel
3138646e5d phodevi: Allow some more NVIDIA sensors to work on Windows 2018-03-07 12:37:59 -06:00
Michael Larabel
fbb825d68a phodevi: Support for NVIDIA GPU usage reporting on Windows 2018-03-07 12:32:05 -06:00
Michael Larabel
d31200789b phodevi: Handling improvements on Windows 2018-03-07 12:11:09 -06:00
Michael Larabel
69d3305ab2 phodevi: Handle multiple GPUs on Windows 2018-03-07 12:03:57 -06:00
Michael Larabel
a2ae11c5eb Add Golang to microsoft-packages.xml 2018-03-07 09:22:22 -06:00
Michael Larabel
4a2a18cc2b pts-core: No .exe on f95 in microsoft dependency 2018-03-07 09:17:58 -06:00
Michael Larabel
c76d3d9282 Add fortran-compiler external dependency support on Windows 2018-03-07 09:08:22 -06:00
Michael Larabel
ca1c4c19c6 pts-core: Tidy up Windows path handling 2018-03-07 09:02:28 -06:00
Michael Larabel
ffcebcde80 pts-core: Support setting the PHP timezone on Windows 2018-03-07 05:32:54 -06:00
Michael Larabel
597f8f57ac phoronix-test-suite.bat: Get rid of this old check to avoid crufty message being printed when not found 2018-03-07 05:00:30 -06:00
Michael Larabel
a6ddfed297 pts-core: Add check in what_provides handler 2018-03-06 19:04:35 -06:00
Michael Larabel
867bea2028 pts-core: Add Go dependency coverage on Windows 2018-03-06 16:39:53 -06:00
Michael Larabel
9047dcb1d2 pts-core: microsoft ex dep updates 2018-03-06 16:09:59 -06:00
Michael Larabel
29c0649f02 pts-core: Tighten up the windows script a bit more 2018-03-06 15:58:24 -06:00
Michael Larabel
5f9fe8d9fc Add .md version of documentation, auto-generated by dump-documentation... Rebuild current docs too. 2018-03-06 14:43:38 -06:00
Michael Larabel
4d589b7466 Start working on Windows documentation... 2018-03-06 14:05:10 -06:00
Michael Larabel
d73cf1721a pts-core: Add Steam support as a Windows ex dependency 2018-03-06 13:36:26 -06:00
Michael Larabel
f04e8925e0 pts-coreL Setup Windows' setartup_handler to configure OpenSSL, setting
up Cygwin bash if needed
2018-03-06 13:13:27 -06:00
Michael Larabel
8e2c7b704b pts-core: More Windows tidying... 2018-03-06 12:59:40 -06:00
Michael Larabel
a60524dc26 pts-core: Add external dependencies startup_handler() 2018-03-06 12:56:19 -06:00
Michael Larabel
084b316cd5 phoronix-test-suite.bat: Also ensure VC_redist.x64.exe is on system 2018-03-06 12:38:58 -06:00
Michael Larabel
4a150f2bd1 phoronix-test-suite.bat: Add support for downloading and setting up PHP
for Windows in local directory if it cannot be found otherwise on system
2018-03-06 12:36:08 -06:00
Michael Larabel
8e8478813e pts-core: Add basic external dependency handler for Microsoft Windows 2018-03-06 10:57:02 -06:00
Michael Larabel
a7e594df85 pts-core: Be more robust with path handling in pts_external_dependencies
when looking for binaries
2018-03-06 10:40:42 -06:00
Michael Larabel
593fa5c3d5 pts-core: Add WarnOnUnmetDependencies option for external dependency XML 2018-03-06 09:34:02 -06:00
Michael Larabel
a072323b0d pts-core: Add interface for allowing a pts_dependency_handler provide an install_dependencies() as alternative to the bash script file approach 2018-03-06 09:21:36 -06:00
Michael Larabel
9f1c47d2c2 pts-core: Open up Windows/Microsoft for external dependency support 2018-03-06 09:09:32 -06:00
Michael Larabel
4882445433 phodevi: Add Windows support 2018-03-05 13:47:14 -06:00
Michael Larabel
0431d3b6cb pts-core: Add R path to Windows when needed 2018-03-04 14:13:04 -06:00
Michael Larabel
e6430692bf pts-core: More Windows updates 2018-03-04 08:19:39 -06:00
Michael Larabel
9c4b4e56c6 pts-core: More Windows path handling work 2018-03-03 17:23:05 -06:00
Michael Larabel
10b670ea5f pts-core: Add OpenJDK on Windows check for path 2018-03-03 14:13:39 -06:00
Michael Larabel
5fe7a389aa pts-core: On Windows, check for Python default user path to add to PATH
when not in there... begin work on pts_client::get_path()
2018-03-02 14:29:25 -06:00
Michael Larabel
204cb23821 pts-core: Only spam debug message when using now older/less desirable phoroscript code path 2018-03-01 10:50:24 -06:00
Michael Larabel
7ef46d401e pts-core: hopefully help with HTTPS issues on Windows 2018-03-01 10:25:12 -06:00
Michael Larabel
a3719c0680 pts-core: Don't get in empty subsystems 2018-03-01 09:19:33 -06:00
Michael Larabel
758547e9a7 pts-core: Back these up for when Cygwin clashes with the other ones on Windows 2018-03-01 08:15:10 -06:00
Michael Larabel
bbc7792406 pts-core: Generalize previous commit a bit more... 2018-03-01 06:48:30 -06:00
Michael Larabel
5fdf5f336a pts-core: Don't use HTTPS downloads for now on Windows 2018-03-01 06:45:42 -06:00
Michael Larabel
f5cfad988c pts-core: When using user-config set/reset, show the file to avoid confusion 2018-02-28 19:15:55 -06:00
Michael Larabel
800c9508bc pts-core: Allow XInclude support for test suites 2018-02-28 19:09:12 -06:00
Michael Larabel
788c183430 pts-core: Be more clear about ignore runs, also mention supported platforms in info command 2018-02-28 18:56:43 -06:00
Michael Larabel
f616f3ac06 pts-core: Add windows archive first on Windows 2018-02-28 12:32:55 -06:00
Michael Larabel
4a60d00c33 pts-core: When running on Windows, add new "windows/" OpenBenchmarking.org test repository 2018-02-28 12:31:20 -06:00
Michael Larabel
e9701e9c1e pts-core: Show OpenBenchmarking.org test profile page from info <test> sub-command 2018-02-28 09:27:34 -06:00
Michael Larabel
c38a6ed876 pts-core: Fallback for terminal_width on faulty detection 2018-02-28 09:13:24 -06:00
Michael Larabel
b38566b43c pts-core: Fix for pts_client::terminal_width() 2018-02-28 09:12:08 -06:00
Michael Larabel
4e4b9068b6 pts-core: Drop some debug code 2018-02-28 08:53:12 -06:00
Michael Larabel
e4b3d1f321 pts-core: More windows work 2018-02-27 19:33:16 -06:00
Michael Larabel
a38a426224 pts-core: Fix for Windows cygwin support for using Cygwin bins from the
run script
2018-02-27 12:58:29 -06:00
Michael Larabel
c46a6ae4fa FIRST STAB at Cygwin for bash script handling on Windows 2018-02-27 11:49:27 -06:00
Michael Larabel
23d104a7d1 pts-core: Better executable_in_path fallback handling on Windows 2018-02-27 09:50:48 -06:00
Michael Larabel
b00e2279eb Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-02-27 09:50:45 -06:00
Michael Larabel
829dac25d0 shell: More stuff 2018-02-27 09:31:51 -06:00
Michael Larabel
e65af31a06 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-02-27 09:28:50 -06:00
Michael Larabel
118198547d shell: More updates 2018-02-27 09:28:39 -06:00
Michael Larabel
9c718a819a Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-02-27 09:13:16 -06:00
Michael Larabel
c1954af585 shell: Fix unsupported sensors 2018-02-27 09:13:01 -06:00
Michael Larabel
add09d6371 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2018-02-27 09:11:47 -06:00
Michael Larabel
6db221b764 pts-core: Introduce basic phoronix-test-suite shell for easier PTS experience 2018-02-27 09:11:15 -06:00
Michael Larabel
b4b90b5f67 pts-core: Changes in prepping for shell 2018-02-27 09:10:45 -06:00
Michael Larabel
40b994d8be phodevi: Memory usage sensor support on Windows 2018-02-27 07:40:57 -06:00
Michael Larabel
b44a9ad9fd phodevi: Hook up Windows uptime handling, CPU usage reporting 2018-02-27 03:55:03 -06:00
Michael Larabel
8d4ee8065d phodevi: More Windows hookups 2018-02-26 19:26:56 -06:00
Michael Larabel
39a7db8e3e pts-core: Network IP and MAC handling on Windows 2018-02-26 18:52:42 -06:00
Michael Larabel
d5749e01ae pts-core: Get Windows browser support working again 2018-02-26 17:00:52 -06:00
Michael Larabel
af1090025b pts-core: Fix terminal-width handling, add support for Powershell
detection
2018-02-26 16:31:31 -06:00
Michael Larabel
470c37e761 phodevi: Expand the Windows support much better... 2018-02-26 15:51:00 -06:00
Michael Larabel
27036956db pts-core: Colored text works on Windows 2018-02-26 13:50:41 -06:00
Michael Larabel
a0fd2c27ea Merge pull request #243 from lsandoval/execute-binary-prepend
pts-core: prepend EXECUTE_BINARY_PREPEND in test run request
2018-02-26 13:18:51 -05:00
Leonardo Sandoval
d5d076ac3f pts-core: prepend EXECUTE_BINARY_PREPEND in test run request
This new environment variable may specify a command which can be prepended
into the main test command. One important usage can be when profiling
a certain test and neither flamegrapher nor linux_perf pts-core modules give
us what we want.

Two simple examples on this area

* use /usr/bin/time -v to get some basic stats

    $ export EXECUTE_BINARY_PREPEND='/usr/bin/time -v' && \
    phoronix-test-suite run ..

* perf-record and leave data (perf.data) in the installed directory

    $ export EXECUTE_BINARY_PREPEND='perf record -a -g -F 97 -o perf.data' && \
    phoronix-test-suite run ..

NOTE: If either LINUX_PERF or FLAME_GRAPH_PATH environment
variables are present on the environment, EXECUTE_BINARY_PREPEND wont have any
effect.

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
2018-02-26 17:53:34 +00:00
Michael Larabel
9531eaa4b9 Merge pull request #242 from lsandoval/fix-perf-record-on-flamegrapher
pts-core: turn on profiling during test execution
2018-02-26 10:31:02 -05:00
Leonardo Sandoval
ebf3110458 pts-core: turn on profiling during test execution
Instead of just profiling a sleep of 3 seconds before the test execution,
profile while executing.

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
2018-02-26 15:06:39 +00:00
Michael Larabel
25e92ed118 phodevi: Cavium ThunderX detection 2018-02-26 07:34:31 -06:00
Michael Larabel
d308a6a9c1 perf_per_dollar: More improvements 2018-02-19 10:56:10 -06:00
Michael Larabel
d687548fab perf_per_dollar: Allow calculating cloud costs / perf-per via COST_PERF_PER_HOUR= environment variable 2018-02-19 10:20:10 -06:00
Michael Larabel
30c1ae0a96 pts-core: Bump version to begin PTS 8.0-Aremark development 2018-02-18 16:46:32 -06:00
Michael Larabel
1423f371d2 phoromatic: Early start to some planned Phoromatic Server UI changes for PTS 8.0 2018-02-18 16:39:49 -06:00
Michael Larabel
108c9e19e0 pts-core: Documentation update 2018-02-14 09:33:31 -06:00
Michael Larabel
ff032b4b1c Phoronix Test Suite 7.8.0 2018-02-14 09:18:56 -06:00
Michael Larabel
ba91901e14 pts-core:
minor fixes
2018-02-14 09:13:18 -06:00
Michael Larabel
128b084fe2 pts_Graph: Deduplication support for footnote reporting when it's the same across all test identifiers 2018-02-13 08:06:00 -06:00
Michael Larabel
3e783d50a1 pts_Graph: Fix vertical bar graphs on many bars to be rendered 2018-02-13 07:57:12 -06:00
Michael Larabel
678823b079 pts-core: Drop " with Radeon" from product strings, e.g. AMD APUs 2018-02-12 08:12:03 -06:00
Michael Larabel
b1c9db1aa1 pts-core: Extra ex deps 2018-02-09 14:33:03 -06:00
Michael Larabel
c46d8e78ea pts-core: Styling improvements to network-info and php-conf 2018-02-08 11:58:41 -06:00
Michael Larabel
72246545a7 pts-core: More improvements to "Possible Suggestions" handling 2018-02-08 10:29:15 -06:00
Michael Larabel
18dcfcde52 pts-core: Unify invalid command helper 2018-02-08 10:19:12 -06:00
Michael Larabel
10e60a0c60 pts-core: Add 'rust' external dependency 2018-02-07 19:14:13 -06:00
Michael Larabel
d58b43d0f7 pts-core: Change order of logic in prompt_text_menu() 2018-02-07 17:40:47 -06:00
Michael Larabel
31119ddcc8 pts-core: Add openmpi external dependency for Arch Linux
https://github.com/phoronix-test-suite/phoronix-test-suite/issues/207
2018-02-07 11:08:51 -06:00
Michael Larabel
2b9752e376 pts-core: Set MinimalTestTime to default to 2 2018-02-06 18:39:22 -06:00
Michael Larabel
f57bbc7938 pts-core: Scan for fatal 2018-02-06 09:48:43 -06:00
Michael Larabel
d5bb0c2dae Phoronix Test Suite 7.8 Milestone 3 2018-02-05 19:04:03 -06:00
Michael Larabel
e7cdadb8b7 phodevi: spectre_v1 reporting 2018-02-05 13:18:50 -06:00
Michael Larabel
fa1d36c45a pts-core: Don't show tests in list-available-tests / list-tests that are not verified
pts-core: Improvements to `info` sub-command for test profiles in highlighting tests that may have problems and also show pre/post messages
2018-02-05 13:11:18 -06:00
Michael Larabel
ff8bda5f09 pts-core: When installing a test that is marked deprecated/experimental/broken, ensure to convey that to the user
pts-core: When installing a test that is of license retail/restricted, ensure to convey that to the user
2018-02-05 12:54:03 -06:00
Michael Larabel
85df8554f0 pts-core: Add a bounds check on CSV output in pts_result_file_output
https://www.phoronix.com/forums/forum/phoronix/phoronix-test-suite/1004804-export-results-to-csv-or-xml-crashes-sometimes-in-phoromatic
2018-01-31 08:48:27 -06:00
Michael Larabel
e863e546b8 pts_Graph: Fix when manually forcing line graphs sometimes still yielding bar graphs 2018-01-26 12:24:00 -06:00
Michael Larabel
eff537facd pts-core: Ensure enough sleep between booting up systems 2018-01-26 11:14:00 -06:00
Michael Larabel
9c1f15450e pts-core: Probably safe to cache pts_client::executable_in_path() when result is not empty 2018-01-25 15:49:39 -06:00
Michael Larabel
f8f908e808 pts-core: Drop the cache in pts_client::executable_in_path() to avoid some detection issues 2018-01-25 10:18:08 -06:00
Michael Larabel
8df1c7546b pts-core: Addition for Void Linux 2018-01-25 10:15:31 -06:00
Michael Larabel
86f71d871d pts-core: Void Linux ex dep update 2018-01-24 17:58:03 -06:00
Michael Larabel
ef14c59c9f pts_Graph: couple vertical bar improvements 2018-01-24 07:38:02 -06:00
Michael Larabel
1830da8150 phodevi: Don't cache the compiler in case external dependencies install a new compiler, etc 2018-01-23 10:57:16 -06:00
Michael Larabel
bc8f54065c phodevi: LXQt desktop detection 2018-01-21 10:45:57 -06:00
Michael Larabel
011d62f670 pts-core: And add post run process too for stress-run 2018-01-21 10:28:03 -06:00
Michael Larabel
df2f50f351 pts-core: Use __pre_run_process with stress_run_manager 2018-01-21 10:26:44 -06:00
Michael Larabel
99e47108fd pts-core: Set interactive mode to stress_run_manager to false so ob_auto_compare won't be used 2018-01-21 10:22:40 -06:00
Michael Larabel
93fe2b699d pts-core: Fix crash in stress-run when PHP PCNTL is missing 2018-01-21 09:41:09 -06:00
Michael Larabel
68f3b4838a pts-core: Use + 2018-01-17 08:55:40 -06:00
Michael Larabel
817498daff phodevi: Should be called security, copy paste fail 2018-01-16 13:02:26 -06:00
Michael Larabel
cf62952fc0 phodevi: Show security features under OS 2018-01-16 08:34:39 -06:00
Michael Larabel
365b1d3682 phodevi: Add /sys/devices/system/cpu/vulnerabilities/meltdown check 2018-01-15 16:58:18 -06:00
Michael Larabel
6d700a8ec3 phodevi: spectre_v2 protection reporting 2018-01-15 16:36:23 -06:00
Michael Larabel
9c0b8b85ef Phoronix Test Suite 7.8.0 Milestone 2 2018-01-14 13:32:48 -06:00
Michael Larabel
63bdc42884 pts-core: Not sure why I didn't add a 'steam' external dependency before.... 2018-01-13 15:11:17 -06:00
Michael Larabel
207e5c61c6 pts_Graph: Some tweaking to vertical bar graphs 2018-01-13 13:13:17 -06:00
Michael Larabel
95204b0fd6 pts_Graph: Restore support for allowing vertical bar graphs, can be enabled by editing graph-config.json with bar_graphs_horizontal = false 2018-01-13 13:03:41 -06:00
Michael Larabel
0eb8d0c4f7 pts_Graph: Add allow_box_plots graph configuration tunable 2018-01-13 11:47:54 -06:00
Michael Larabel
0239c5ce16 pts-core: When running phoronix-test-suite info <test profile>, show local test results containing this test 2018-01-13 10:04:33 -06:00
Michael Larabel
244b79ba08 pts-core: When running phoronix-test-suite info <test profile>, show the OpenBenchmarking.org change-log for that test profile too 2018-01-13 09:41:04 -06:00
Michael Larabel
efd6531e1c pts-core: Change F9XFLAGS to FFLAGS more common 2018-01-13 06:37:51 -06:00
Michael Larabel
6b364b55d5 pts-core: Add list tests / list recommended tests to interactive command 2018-01-12 11:43:57 -06:00
Michael Larabel
8d7167f610 pts-core: Search result file identifiers too as part of search_test_results() 2018-01-12 11:22:56 -06:00
Michael Larabel
484c8d9008 pts-core: ucwords not strtoupper here 2018-01-12 10:40:31 -06:00
Michael Larabel
7c61973895 pts-core: Improve styling of phoronix-test-suite search 2018-01-12 10:23:19 -06:00
Michael Larabel
92016e9df6 pts-core: Introduce pts_search as common PTS search helpers 2018-01-12 10:04:12 -06:00
Michael Larabel
1d2bef89df pts_tracker: pts_tracker doesn't appear to be used any longer by PTS, Phoromatic or OpenBenchmarking.org 2018-01-12 09:42:00 -06:00
Michael Larabel
2ed3e682f2 pts-core: Add phoronix-test-suite search for conducting basic searches from the CLI 2018-01-12 09:33:24 -06:00
Michael Larabel
249b6c136e pts-core: Small tweaks 2018-01-12 09:30:44 -06:00
Michael Larabel
dd3c42fe22 phodevi: Remove redundant 5 2018-01-12 08:09:58 -06:00
Michael Larabel
e9e12464d7 phodevi: KDE Plasma 5 detection improvements 2018-01-12 08:09:02 -06:00
Michael Larabel
4583696ccf pts-core: The phoronix-test-suite gui has been unmaintained and can be considered deprecated 2018-01-12 07:04:56 -06:00
Michael Larabel
35e6f2c5e1 pts-core: Interactive mode improvements 2018-01-12 07:01:06 -06:00
Michael Larabel
3a33f68776 phodevi: Add " Protection" to end of security string when present 2018-01-11 19:13:12 -06:00
Michael Larabel
cfe898ebc2 phodevi: Monitor *FLAGS* environment variables too 2018-01-11 16:00:58 -06:00
Michael Larabel
8e30f42fa6 pts_Graph: Some variable handling optimizations 2018-01-11 10:54:09 -06:00
Michael Larabel
61d1df4dd0 phodevi: BIOS reporting change 2018-01-10 16:18:58 -06:00
Michael Larabel
789e19cb80 phodevi: KPTI page table isolation detection 2018-01-10 10:54:27 -06:00
Michael Larabel
fa2d5eb96b phodevi: Punt SELinux reporting off to system's securirty-features property 2018-01-10 10:47:02 -06:00
Michael Larabel
ce9d40e0f5 pts-core: Add dump-phodevi-properties helper to assist in debugging and porting to new platforms 2018-01-10 10:32:20 -06:00
Michael Larabel
4b86ade6e7 phodevi: Reworked property handling 2018-01-10 10:14:41 -06:00
Michael Larabel
47e91cbb08 phodevi: Add explicit python3 detection too 2018-01-10 09:01:37 -06:00
Michael Larabel
6cc786df32 pts-core: Drop pts_test_notes_manager since better functionality has been in place for a while with pts_test_run_manager's pull_test_notes 2018-01-10 08:52:10 -06:00
Michael Larabel
ef4150d5bb pts-core: Note handling improvements 2018-01-10 08:25:31 -06:00
Michael Larabel
864835d884 phodevi: Use std_caching not smart_caching on microcode-version 2018-01-10 07:32:30 -06:00
Michael Larabel
18490d9665 phodevi: Add missing space before BIOS version 2018-01-10 06:48:39 -06:00
Michael Larabel
1d759267e4 phodevi: Append BIOS version to end of motherboard string
Plus other styling improvements
2018-01-09 18:34:39 -06:00
Michael Larabel
e412f3adc1 phodevi: Don't require to type existing password when running phoromatic.set-root-admin-password 2018-01-09 17:01:38 -06:00
Michael Larabel
714f6ce751 pts-core: Fix for potential $hash_check not being sent when querying phoromatic servers for suite data 2018-01-09 15:01:20 -06:00
Michael Larabel
0c0468c37b pts-core: Cache available_phoromatic_servers() to avoid recomputing list too often 2018-01-09 14:52:42 -06:00
Michael Larabel
1d2dabd939 pts-core: Fixes for previous commit 2018-01-09 12:54:20 -06:00
Michael Larabel
70f007301b pts-core: Allow local/other tests not part of OpenBenchmarking.org to be downloaded from a Phoromatic Server 2018-01-09 12:39:22 -06:00
Michael Larabel
a4386de0c6 pts-core: More make-openbenchmarking-cache fixes 2018-01-09 11:00:14 -06:00
Michael Larabel
2212819887 pts-core: More make-openbenchmarking-cache tweaks 2018-01-09 10:51:52 -06:00
Michael Larabel
22f09ba41b pts-core: make-download-cache fix 2018-01-09 10:43:35 -06:00
Michael Larabel
98efa0789d pts-core: make-openbenchmarking-cache improvements 2018-01-09 10:30:59 -06:00
Michael Larabel
4705db7e5f pts-core: Cleanup OB test/suite download error message and prep for better reporting of network issues.
https://github.com/phoronix-test-suite/phoronix-test-suite/issues/236
2018-01-09 09:35:23 -06:00
Michael Larabel
776f196cbb phodevi: Strip invalid chars from BIOS version parsing 2018-01-09 08:14:57 -06:00
Michael Larabel
66189914e3 Update ChangeLog 2018-01-07 19:32:14 -06:00
Michael Larabel
5908bfe4a3 Phoronix Test Suite 7.8 Milestone 1 2018-01-07 19:29:51 -06:00
Michael Larabel
04f63eb73b phoromatic: Also ensure network MAC gets updated 2018-01-07 18:33:49 -06:00
Michael Larabel
a5bbf08b8f phodevi: Add BIOS version reporting property 2018-01-07 18:03:41 -06:00
Michael Larabel
cfb0a478bc Some copyright updates for 2018 2018-01-07 10:34:38 -06:00
Michael Larabel
046beec318 pts-core: Allow PTS_WEBSOCKET_PORT environment variable to be used to override WebSocket port when launching Phoromatic Server
From https://github.com/phoronix-test-suite/phoronix-test-suite/issues/227
2018-01-07 10:04:40 -06:00
Michael Larabel
3382e8c76b pts-core: If TEST_EXEC_PREPEND is a binary, don't run 'exec' following it on test execution.
Should fix behavior for https://github.com/phoronix-test-suite/phoronix-test-suite/issues/230
2018-01-07 09:57:55 -06:00
Michael Larabel
0258ae8930 pts-core: Phoroscript interpreter always skip lines beginning with #
Fixes https://github.com/phoronix-test-suite/phoronix-test-suite/issues/231
2018-01-07 09:50:27 -06:00
Michael Larabel
f0d183070d Merge pull request #234 from Eliasvan/patch-3
Set script-requested cwd when executing command
2018-01-07 10:46:12 -05:00
Michael Larabel
bec7de29a2 pts-core: Fedora dependency updates 2018-01-06 09:54:09 -06:00
Michael Larabel
7b49fd280a pts-core: Better Docker support for installing packages on Fedora 2018-01-06 06:29:00 -06:00
Michael Larabel
24e72908cb pts-core: Fix for Linux systems without ps when checking running processes 2018-01-06 06:24:59 -06:00
Elias Vanderstuyft
b30e5db2ac Set script-requested cwd when executing command
This fixes https://github.com/phoronix-test-suite/phoronix-test-suite/issues/232:
'Commands in scripts interpreted by phoroscript_interpreter are not executed in a context where the current working directory is set as requested by the script'

This also removes the need of the workaround performed in "install_windows.sh" (https://openbenchmarking.org/innhold/a97d4ee6ea8b6410ca8f739f296f98d5002e05a6 , see "# Note: ...") in https://openbenchmarking.org/test/eliasvan/supertuxkart-1.5.1

Tested with Windows 10, Wine, and Ubuntu 16.04.
2018-01-03 00:30:40 +01:00
Michael Larabel
e8cb6fcf13 pts-core: Warning fix for yesterday's change 2018-01-02 08:28:31 -06:00
Michael Larabel
ff4a5c9226 pts-core: Use _SERVER rather than _ENV 2018-01-01 09:52:13 -06:00
Michael Larabel
850698409e phodevi: Add some missing handling around /dev/vd* disks 2017-12-28 17:15:55 -06:00
Michael Larabel
0ad3917b53 pts-core: Add meson to external dependencies 2017-12-26 10:16:34 -06:00
Michael Larabel
a5dd22efef openSUSE updates 2017-12-20 10:27:04 -06:00
Michael Larabel
e6c2387eac pts-core: Add python3-pip to python ex dep for Ubuntu 2017-12-12 06:18:04 -06:00
Michael Larabel
72552dc0e6 pts-core: ex dep updates 2017-12-10 18:02:22 -06:00
Michael Larabel
35b5d28c4b Phoronix Test Suite 7.6.0-Alvdal 2017-12-07 05:16:02 -06:00
Michael Larabel
2aa0725d98 pts-core: Maven isn't part of openSUSE/SUSE default packages 2017-12-05 18:38:12 -06:00
Michael Larabel
002d10418f pts-core: Fix for PHP 7.2 countable warning 2017-12-05 14:24:43 -06:00
Michael Larabel
dda267de07 Phoronix Test Suite 7.6 Milestone 4 2017-12-03 06:51:49 -06:00
Fatima Sheremetyeva
17560c09cd phodevi: Add new gpu.memory-usage sensor initially supported on NVIDIA 2017-11-30 10:15:45 -05:00
Michael Larabel
1a799cce6a pts-core: Better external dependency handling when running on EC2 instances (SUSE and Gentoo) 2017-11-27 17:26:25 -06:00
Michael Larabel
29ffab4598 pts-core: Gentoo updates 2017-11-27 16:56:13 -06:00
Michael Larabel
e486cbeda3 Phoronix Test Suite 7.6 M3 2017-11-21 15:06:20 -06:00
Michael Larabel
d235b00a69 phodevi: Better memory model detection on Linux 2017-11-21 13:33:33 -06:00
Michael Larabel
e486239012 phodevi: Only use nvme CLI smart-log if having the permissions 2017-11-20 15:00:47 -06:00
Michael Larabel
71f5d2be53 phodevi: Should now be good.... 2017-11-16 09:59:32 -06:00
Michael Larabel
32ada6f09b phodevi: Typo fix 2017-11-16 09:58:51 -06:00
Michael Larabel
996ecf911d phodevi: NVme temp fixes 2017-11-16 09:58:16 -06:00
Michael Larabel
1a0323d4b5 phodevi: NVMe drive temperature reporting on Linux 2017-11-16 09:52:15 -06:00
Michael Larabel
7c13749d15 pts-core: Update Fedora's Python packages 2017-11-15 15:09:00 -06:00
Michael Larabel
7a4e5c9440 pts-core: Various styling updates
pts-core: More demanding debug-self-test
2017-11-12 17:02:46 -06:00
Michael Larabel
2682bb25f7 pts-core: Provide some basic graph size/count reporting on refresh-graphs sub-command 2017-11-12 11:31:41 -06:00
Michael Larabel
b181f39d6b pts_Graph: Turn line graphs to horizontal box plots if too much data to graph in space 2017-11-12 11:19:16 -06:00
Michael Larabel
da18941225 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2017-11-12 11:03:15 -06:00
Michael Larabel
bc431e8ec4 pts-core: Minor tweaks/fixes 2017-11-12 11:03:05 -06:00
Fatima Sheremetyeva
63a09d9fc1 phodevi: GPU power consumption sensor support via nvidia-smi 2017-11-07 11:14:07 -05:00
Michael Larabel
8fda9e4538 pts-core: Meant sh on second check, not bash again - 6776dcbbad (commitcomment-25431213) 2017-11-06 09:43:52 -06:00
Michael Larabel
6776dcbbad pts-core: make script shebang more portable
Via https://github.com/phoronix-test-suite/phoronix-test-suite/pull/200#issuecomment-342178438
2017-11-06 09:29:21 -06:00
Michael Larabel
5b7a229f57 phodevi: Typo fix for previous commit 2017-11-05 09:26:50 -06:00
Michael Larabel
f2ad85e735 phodevi: physical CPU core detection count on macOS 2017-11-05 09:23:29 -06:00
Michael Larabel
e49fd7ac54 Phoronix Test Suite 7.6 Milestone 2 2017-11-02 09:35:59 -05:00
Michael Larabel
6a4a3e7b4c pts-core: Add helpful comment 2017-10-31 11:10:27 -05:00
Michael Larabel
5b22d9419c Fix for OpenBSD MAC warning 2017-10-29 18:40:49 -05:00
Michael Larabel
deb27740aa pts-core: Network MAC address detection on OpenBSD 2017-10-29 18:39:55 -05:00
Michael Larabel
79c7f1b0e0 fixes for openbsd 2017-10-29 18:03:55 -05:00
Michael Larabel
67d03dd9b3 phodevi: FreeBSD pciconf output fix 2017-10-29 12:06:51 -05:00
Michael Larabel
51d781e4c8 phodevi: Typo fix for previous commit 2017-10-28 12:44:59 -05:00
Michael Larabel
9b0c3adea8 phodevi: VT EFIFB resolution detection 2017-10-28 12:44:26 -05:00
Michael Larabel
bc1f8d3e82 pts-core: Drop ports-based external dependency handling for FreeBSD and instead encourage pkg 2017-10-28 12:31:37 -05:00
Michael Larabel
02d1cf268e pts-core: Update executable_in_path handling for BSDs 2017-10-28 10:41:18 -05:00
Michael Larabel
ccbf555418 pts-core: /usr/local/bin/php explicit for BSD 2017-10-28 10:22:31 -05:00
Michael Larabel
487a1c63b8 pts-core: Start work on a BSD phoromatic-client rc.d file 2017-10-28 10:11:12 -05:00
Michael Larabel
88b5784537 pts-core: Fix for previous commit 2017-10-27 19:48:36 -05:00
Michael Larabel
9bfd2d025d Merge pull request #203 from lramage94/lede
Add Linux Embedded package manager configuration.
2017-10-27 19:50:03 -04:00
Lucas Ramage
6e378ab4c0 Add Linux Embedded package manager configuration.
Signed-off-by: Lucas Ramage <lramage@star2star.com>
2017-10-27 18:34:28 -04:00
Michael Larabel
253fc167af phoronix-test-suite: Check for php-cli as binary option 2017-10-27 17:24:19 -05:00
Michael Larabel
9207d4c069 pts-core: MAC reporting 2017-10-27 17:07:34 -05:00
Michael Larabel
607be2c5c8 Typo fix 2017-10-27 17:02:28 -05:00
Michael Larabel
e3ff77b2d2 phodevi: More BSD fixes 2017-10-27 17:01:33 -05:00
Michael Larabel
f5af13bdda phodevi: Don't call vm_stat for mem usage on BSD 2017-10-27 16:55:56 -05:00
Michael Larabel
5104ffbefd phodevi: Don't show "SATA" in BSD disk string 2017-10-27 16:49:29 -05:00
Michael Larabel
43c68c8bda phodevi: String fix for BSD chipset 2017-10-27 16:42:40 -05:00
Michael Larabel
98ce410b9c phodevi: BSD chipset detection 2017-10-27 16:42:27 -05:00
Michael Larabel
dd13bfab16 phodevi: Allow BSD GPU detection via pciconf data 2017-10-27 16:38:02 -05:00
Michael Larabel
905604098e phodevi: Change case 2017-10-27 16:21:55 -05:00
Michael Larabel
5d33dd8309 phodevi: hw.cpu_topology_core_ids support for physical core count on BSD 2017-10-27 16:17:22 -05:00
Michael Larabel
d860935659 phodevi: Another BSD mobo detection tweak 2017-10-27 16:10:18 -05:00
Michael Larabel
02f1f70a1e phodevi: Better detection compared to previous commit 2017-10-27 16:08:17 -05:00
Michael Larabel
ae3d38ddec phodevi: Fix for DragonFlyBSD sometimes reporting string as " " 2017-10-27 16:03:36 -05:00
Michael Larabel
924c41a0bf phodevi: Fix for previous commit 2017-10-27 16:00:41 -05:00
Michael Larabel
fdd75522a6 phodevi: Motherboard detection support on BSD using smbios.planar.product 2017-10-27 16:00:13 -05:00
Michael Larabel
fec5b96365 Merge pull request #201 from lramage94/lede
pts-core: Add LEDE external dependency handling support
2017-10-25 15:25:12 -04:00
Lucas Ramage
ec08145b36 pts-core: Add Linux Embedded Development Environment external dependency handling support 2017-10-25 11:23:55 -04:00
Michael Larabel
3983ab4e44 External dependency updates 2017-10-11 07:46:53 -05:00
Michael Larabel
913ffd4450 Phoronix Test Suite 7.6 Milestone 1 2017-10-10 05:14:50 -05:00
Michael Larabel
818e9bf922 phodevi: Typo in previous commit 2017-10-09 16:08:55 -05:00
Michael Larabel
f1d960d947 phodeviL Thread reporting tweak 2017-10-09 16:08:40 -05:00
Michael Larabel
ea22429b04 phoromatic: Poweroff tweaking 2017-10-08 13:17:49 -05:00
Michael Larabel
8809be22d7 phodevi: Restructure CPU core/thread reporting in system tables 2017-10-08 09:50:25 -05:00
Michael Larabel
3df6cb31da pts-core: Wake-On-LAN handling detection improvements 2017-10-07 16:31:22 -05:00
Michael Larabel
2a26c396a2 phoromatic: Try using systemctl poweroff first when trying to turn off a system 2017-10-07 11:15:09 -05:00
Michael Larabel
80bcf41722 Small updates from recent work 2017-10-07 11:10:31 -05:00
Michael Larabel
443c566a22 Merge pull request #199 from bluntelk/master
Network IP+Mac now use default gateway device
2017-10-07 12:08:57 -04:00
Jason Playne
4d396906d8 Network IP+Mac now use default gateway device 2017-10-07 12:12:21 +08:00
Michael Larabel
e378f0c1ce perf_per_dollar: Add "phoronix-test-suite perf_per_dollar.add <result file>" to allow perf-per-dollar graphs to be added after the fact 2017-10-06 09:05:59 -05:00
Michael Larabel
d15a970833 phoromatic: Always try to wakeup system regardless if ethtool present on client to supply the NetworkWakeOnLAN string 2017-09-27 18:55:43 -05:00
Michael Larabel
d00ce45d5a pts-core: More macOS High Sierra memory tweaking 2017-09-25 16:26:27 -05:00
Michael Larabel
e48b11cb69 phodevi: memory fix for macOS High Sierra 2017-09-25 16:25:24 -05:00
Michael Larabel
b2bb4ff12b phodevi: Add APFS Apple File-System detection on macOS 2017-09-25 15:54:20 -05:00
Michael Larabel
33d6d2c89c phodevi: Add Bcache reporting support 2017-09-25 14:24:20 -05:00
Michael Larabel
1643febee2 Changelog: pts-core: Add external dependency handling for MidnightBSD / mport 2017-09-25 13:02:36 -05:00
Michael Larabel
0dfe353b39 Merge pull request #197 from laffer1/master
Add MidnightBSD package manager configuration.
2017-09-25 14:00:47 -04:00
Michael Larabel
14c1940aae ob_auto_compare: Calling it "result perspective" probably makes the most sense 2017-09-25 12:53:24 -05:00
Lucas Holt
474e12b3e4 Add MidnightBSD package manager configuration. 2017-09-25 13:51:36 -04:00
Michael Larabel
c6820c7413 phodevi: Ignore reporting 'MS-DOS FAT32' EFI file-system on macOS 2017-09-25 10:22:59 -05:00
Michael Larabel
bc1387e711 phodevi: Device ACPI GPU temp 2017-09-24 07:20:19 -05:00
Michael Larabel
eea1d16921 phodevi: Improvement to last commit 2017-09-24 07:18:50 -05:00
Michael Larabel
6669ce5be6 phodevi: Some CPU/GPU temperature reporting improvements 2017-09-24 07:17:18 -05:00
Michael Larabel
bcfd4ea7f6 pts-core: Various updates 2017-09-22 14:25:32 -05:00
Michael Larabel
4b37aa2c34 phodevi: Add IPMI ambient temperature support 2017-09-19 14:43:30 -05:00
Michael Larabel
f84cc6b091 phodevi: Add memory.temp sensor 2017-09-19 14:41:13 -05:00
Michael Larabel
fa41f50698 phodevi: Fixed k10temp CPU temperature reporting 2017-09-19 09:46:18 -05:00
Michael Larabel
2b3c6354b3 Prep for Phoronix Test Suite 7.4 2017-09-18 20:32:27 -05:00
Michael Larabel
c184cc6841 Fix maven name checking for mvn 2017-09-18 09:33:43 -05:00
Michael Larabel
9f3cc3814b pts-core: Add maven external dependency 2017-09-18 09:05:13 -05:00
Michael Larabel
e129e1865e pts-core: Java external dependency updates 2017-09-18 09:02:17 -05:00
Michael Larabel
f668188cbd PTS 7.4 is almost here 2017-09-15 06:53:24 -05:00
Michael Larabel
2ba79b3671 phodevi: Report removable disks 2017-09-13 07:12:13 -05:00
Michael Larabel
caab17cd65 pts-core: Allow local IP fallback detection via hostname 2017-09-13 07:03:16 -05:00
Michael Larabel
b11a44932e pts-core: Add network-info sub-command 2017-09-13 07:01:42 -05:00
Michael Larabel
bc217e4c0e phodevi: NVMe disk reporting on BSDs 2017-09-13 06:42:21 -05:00
Michael Larabel
aa4c7624b7 pts_Graph: Reset to original 1.2x 2017-09-12 16:46:35 -05:00
Michael Larabel
f6bf4378ac pts_Graph: Increase max size 2017-09-12 16:45:27 -05:00
Michael Larabel
db6a019dad pts_Graph: Allow line graphs to have adjustable floor/bottom to better present data on graph 2017-09-12 16:19:54 -05:00
Michael Larabel
c05f7c8c11 pts-core: Fix install time reporting from the info sub-command when passing a test profile 2017-09-12 14:27:34 -05:00
Michael Larabel
9a0069cbe9 Add release-highlights.md to show various user-friendly release notes/highlights/whats-new 2017-09-12 09:25:10 -05:00
Michael Larabel
b87948ce60 pts-core: Improve command documentation categories/organization 2017-09-11 19:08:43 -05:00
Michael Larabel
39e7940ba8 Phoronix Test Suite 7.4 Milestone 4 2017-09-11 05:21:04 -05:00
Michael Larabel
f6b4343a5e pts-core: Report on updated OpenBenchmarking.org index update when new/updated tests are introduced 2017-09-10 12:34:34 -05:00
Michael Larabel
f84784205d pts-core: OpenJDK ex dep fix for Arch 2017-09-10 12:33:55 -05:00
Michael Larabel
5b839203e6 pts-core: External dependency updates 2017-09-09 10:36:48 -05:00
Michael Larabel
4be3f1ee00 pts-core: Ensure duplicate dependencies to install don't become present 2017-09-09 08:54:34 -05:00
Michael Larabel
b078a38354 pts-core: Fix for OpenMPI detection on some distros like openSUSE 2017-09-09 08:46:21 -05:00
Michael Larabel
1311fa8588 pts-core: Add nasm external dependency entries 2017-09-09 08:40:21 -05:00
Michael Larabel
969375e06e phodevi: EPYC detection 2017-09-08 17:43:37 -05:00
Michael Larabel
422b06bbb3 pts-core: Add TEST_EXEC_PREPEND support 2017-09-08 15:42:58 -05:00
Michael Larabel
0a1ac41bd0 toggle_screensaver: improved GNOME screensaver handling
toggle_screensaver: work better under Wayland / non-X environments where display server might not be detected
2017-09-08 09:20:44 -05:00
Michael Larabel
e9e6b1c974 pts-core: Fix warning about passing variables by ref to PTS modules 2017-09-08 08:00:16 -05:00
Fatima Sheremetyeva
cc97a52c85 pts-core: Fix for Ubuntu ex dep handle 2017-09-07 10:58:55 -04:00
Michael Larabel
69d15a9072 pts-core: ZFS previous commit warning fix 2017-09-06 11:15:02 -05:00
Michael Larabel
57a78237d3 phodevi: Last of ipmi sensor tweak 2017-09-06 09:03:24 -05:00
Michael Larabel
bc84af9eef phodevi: Fix for previous commit 2017-09-06 08:54:45 -05:00
Michael Larabel
c03621d572 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2017-09-06 08:53:29 -05:00
Michael Larabel
58a2d07acf phodevi: IPMI fan speed reporting 2017-09-06 08:53:19 -05:00
Michael Larabel
75a1b692ce Merge pull request #195 from gmelikov/zfs
Add ZFS disk target for disk tests
2017-09-04 07:58:12 -04:00
George Melikov
0fa2141e03 pts-core: Add ZFS disk target for disk tests
Signed-off-by: George Melikov <mail@gmelikov.ru>
2017-09-04 11:53:52 +03:00
Michael Larabel
fd8c29db23 phodevi: Add basic Budgie desktop reporting 2017-08-30 15:08:15 -05:00
Michael Larabel
3c6a4b8537 system_monitor" Don't show on LIB 2017-08-29 10:44:31 -05:00
Michael Larabel
047ee7be47 pts-core: Ensure XAUTHORITY gets passed if relevant to test execution 2017-08-29 09:48:39 -05:00
Michael Larabel
4557aa8fba system_monitor: Guard against missing pcntl support 2017-08-29 07:26:25 -05:00
Michael Larabel
149c628b38 Phoronix Test Suite 7.4 Milestone 3 2017-08-28 19:25:17 -05:00
Michael Larabel
af186ec618 pts-core: Reworked test exit status handling 2017-08-28 17:15:42 -05:00
Michael Larabel
381b1a864a python scikit appears to have disappeared from openSUSE package repo 2017-08-28 05:33:13 -05:00
Michael Larabel
59e7dbfced pts_Graph: Fix OB highlight result graph value regression 2017-08-27 12:42:55 -05:00
Michael Larabel
7950f33663 phodevi: Only rely upon vulkaninfo for Vulkan detection for now 2017-08-18 05:25:46 -05:00
Michael Larabel
e103fdd836 phodevi: Don't be redundant about reporting thread count when already reported below 2017-08-18 05:21:49 -05:00
Michael Larabel
d374da3cf5 phodevi: Minor cleanup to ensure clean number for math 2017-08-17 12:35:23 -05:00
Michael Larabel
61d9e0cc8c phodevi: Improve dmidecode handling 2017-08-17 12:28:01 -05:00
Michael Larabel
dd94c12c90 phodevi: Improve CPU physical core count detection for multi-socket systems 2017-08-17 12:19:45 -05:00
Michael Larabel
370354ca23 graphics_event_checker: Drop graphics_event_checker module as really provides no real benefit these days 2017-08-15 20:05:42 -05:00
Michael Larabel
807e55269c phodevi: "Qualcomm" for E detection doesn't work out due to Qualcomm WLAN adapters 2017-08-15 19:42:23 -05:00
Michael Larabel
aae681713b ob_auto_compare: Don't continue doing auto compare results if too slow 2017-08-15 17:32:16 -05:00
Michael Larabel
1511970f99 ob_auto_compare: New module for seamless OpenBenchmarking.org result references 2017-08-15 15:50:00 -05:00
Michael Larabel
7367b078f2 pts-core: Add module call __test_run_success_inline_result 2017-08-15 15:49:02 -05:00
Michael Larabel
f408f44dce Phoronix Test Suite 7.4.0 Milestone 2 2017-08-15 10:42:42 -05:00
Michael Larabel
78a5372294 phodevi: More tweaking for new system ID 2017-08-15 10:36:47 -05:00
Michael Larabel
24b74c4c5f phodevi: Initial "system type" support 2017-08-15 09:10:43 -05:00
Michael Larabel
ed1b2bbc7e phodevi: GPU model reporting improvement, should help AMD to report less codenames 2017-08-11 08:22:49 -05:00
Michael Larabel
3c444f1c18 pts-core: Resolve possibility of first graph missing when exporting results as PDF 2017-08-10 12:19:29 -05:00
Michael Larabel
b4183cc1eb Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2017-08-10 09:03:56 -05:00
Michael Larabel
57153279ef pts-core: Add extra line break to concise test_run_error 2017-08-10 09:03:34 -05:00
Fatima Sheremetyeva
66dae6a931 pts-core: New fallback when failing to match test, query OB an extra time 2017-08-10 09:09:12 -04:00
Michael Larabel
2d9b349907 phodevi: Add monitor detection based on parsing EDID supplied by xrandr --prop (works well for newer NVIDIA setups) 2017-08-09 19:31:08 -05:00
Michael Larabel
3ffd051e78 pts-core: Ensure test result is cloned prior to sorting it for the inline result display 2017-08-02 18:09:03 -05:00
Michael Larabel
4c180aa96d pts-core: Reverse previous commit 2017-08-02 14:59:26 -05:00
Michael Larabel
75633423f6 prs-core: Ensure test_result_buffer is cloned when cloning pts_test_result 2017-08-02 14:44:41 -05:00
Michael Larabel
54ba1572d4 Merge pull request #191 from paolo-github/sudo-fix
pts-core: Make sudo preserve environment when gaining root access
2017-08-02 10:09:53 -04:00
Paolo Valente
be9b33dc28 pts-core: Make sudo preserve environment when gaining root access
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
2017-08-02 16:05:11 +02:00
Michael Larabel
cadd0b8ad5 pts-core: Fixes/cleanups around the inline result reporting 2017-08-02 07:25:38 -05:00
Michael Larabel
9c409c12d4 phodevi: WSLFS (Windows Subsystem for Linux) file-system detection 2017-08-01 07:19:23 -05:00
Michael Larabel
891e6255fe Phoronix Test Suite 7.4 Milestone 1 2017-07-31 13:54:10 -05:00
Michael Larabel
e95a9d93a2 pts-core: Add test_run_success_inline to display mode interface to allow in-progress result graphs to only show for now in the concise display mode 2017-07-31 11:18:23 -05:00
Michael Larabel
06a9f3d529 pts-core: Allow showing existing results from a result file in-progress on test runs 2017-07-31 11:05:03 -05:00
Michael Larabel
ab54542d61 pts-core: Drop juju scripts as appears unmaintained, happy to re-add if maintained 2017-07-31 10:22:48 -05:00
Michael Larabel
1cc351dc07 pts_Graph: Color tweaking 2017-07-31 10:19:12 -05:00
Michael Larabel
062b9a6bba pts-core: Fix for potential empty needle in some conditions 2017-07-20 14:21:45 -05:00
Michael Larabel
fefd63bed9 perf_tips: PHP notice fix 2017-07-19 13:13:12 -05:00
Michael Larabel
3b4699aaac perf_tips: Add .show option for listing to user possible performance tips 2017-07-19 10:08:09 -05:00
Michael Larabel
40466a0847 pts-core: Rename perf_tip_prompter to perf_tips 2017-07-19 10:01:49 -05:00
Michael Larabel
9c1f2f4b65 pts-core: Add autoo-load-module sub-command 2017-07-19 09:54:10 -05:00
Michael Larabel
aa89ca4339 pts-core: Add phoronix-test-suite unload-module sub-command 2017-07-19 09:43:38 -05:00
Michael Larabel
39fe54abc0 perf_tip_prompter: cleanups, the code itself should work fine on non-Linux platforms 2017-07-19 09:25:54 -05:00
Michael Larabel
5637bf542a perf_tip_prompter: Remove hack checks from previous commit 2017-07-19 09:23:49 -05:00
Michael Larabel
4d6b97d39a perf_tip_prompter: Add a powersave tip, make unified handling of performance tips, style the tips nicely for CLI 2017-07-19 09:20:48 -05:00
Michael Larabel
892faf7e9d pts-core: Few API additions for use by module, will be used in next commit 2017-07-19 09:19:38 -05:00
Michael Larabel
b15d3f085e perf_tip_prompter: Report performance tips at pre-run process time rather than prior to each test execution 2017-07-19 08:42:54 -05:00
Michael Larabel
0318bb52be Merge pull request #189 from paolo-github/perf_tip_prompter
perf_tip_prompter: Add new module to alert the user if the system is …
2017-07-19 09:30:35 -04:00
Paolo Valente
c2904258f5 perf_tip_prompter: Add new module to alert the user if the system is misconfigured for the target test 2017-07-19 10:09:34 +02:00
Michael Larabel
143c775f2a phodevi: Clear up extra potential fluff in the GPU model string 2017-07-13 09:26:43 -05:00
Michael Larabel
38b36330d9 pts-core: Don't show PTS version when there is no sub-title, just leave it empty 2017-07-08 10:48:17 -05:00
Michael Larabel
8b797189b1 Phoronix Test Suite 7.2.1 2017-06-29 20:25:22 -05:00
Michael Larabel
ddf67c08bb phodevi: Typo from previous commit 2017-06-27 15:12:41 -05:00
Michael Larabel
b2ddf027d0 phodevi: AVX-512 reporting 2017-06-27 15:11:56 -05:00
Michael Larabel
5bfe99d244 Merge pull request #178 from brassh/patch-1
Update pts_network.php
2017-06-19 13:37:26 -04:00
brassh
d751e3cfbf Update pts_network.php
typo correction, should resolve error
"
[NOTICE] Undefined: ch in pts_network:166
[NOTICE] curl_setopt() expects parameter 1 to be resource, null given in pts_network:166
"
when installing tests etc. from behind authenticating proxy
2017-06-18 23:04:31 +02:00
Michael Larabel
43a3aa98f6 pts-core: Fix typo from previous commit 2017-06-13 19:55:35 -05:00
Michael Larabel
c9be9e14d2 pts-core: Fix warning in pts_test_result_parser 2017-06-13 19:38:13 -05:00
Michael Larabel
0dad2a25d4 pts-core: continue on from prev commit 2017-06-09 09:30:25 -05:00
Michael Larabel
86997d281c pts-core: Factor in run times ignored when deciding whether to dynamically increase run count 2017-06-09 09:05:08 -05:00
Michael Larabel
451b258c2d pts-core: Minor optimization to is_suite() and more easily allow explicit paths to be used, overriding what's in OB cache 2017-06-09 08:36:22 -05:00
Michael Larabel
399b796330 pts-core: Minor optimization to is_test_profile() and more easily allow explicit paths to be used, overriding what's in OB cache 2017-06-09 08:34:44 -05:00
Michael Larabel
580ffac277 pts-core: Bump core to 7201 due to change in call_test_script from earlier commits 2017-06-09 08:23:31 -05:00
Michael Larabel
31b1f964d2 pts-core: Pass install/validate-install directory in quotes due to previous change 2017-06-09 08:16:19 -05:00
Michael Larabel
5c064d7b76 pts-core: Fix null maintainer potentially in dump-tests-to-git 2017-06-09 08:15:24 -05:00
Michael Larabel
80813ce7c7 Merge pull request #177 from FeralInteractive/master
Remove globbing of arguments for pre/interim/post scripts
2017-06-09 09:12:00 -04:00
Marc Di Luzio
8fd370afd6 Remove globbing of arguments for pre/interim/post scripts so they behave like the main executable 2017-06-08 16:52:24 +01:00
Michael Larabel
4a74e67ee5 Phoronix Test Suite 7.2.0 2017-06-08 08:35:06 -05:00
Michael Larabel
a02d0c8c70 pts-core: Few last minute updates 2017-06-06 16:30:42 -05:00
Michael Larabel
f8eaa96156 pts-core: Shift where the CharsToSpace parsing happens 2017-06-05 09:05:51 -05:00
Michael Larabel
2cfb430256 pts-core: Add TurnCharsToSpace support to result parser 2017-06-05 08:58:14 -05:00
Michael Larabel
6ad454b881 pts-core: Thanks to previous commit, this check can be removed 2017-06-04 08:13:22 -05:00
Michael Larabel
9c64945f7f pts-core: Allow partial matches on normalize against 2017-06-04 08:12:38 -05:00
Michael Larabel
af987e6608 pts_Graph: Fix multi-way comparison detection 2017-06-03 09:41:32 -05:00
Michael Larabel
662360012f Phoronix Test Suite 7.2.0 M4 2017-06-03 08:18:06 -05:00
Michael Larabel
fe898279bb pts_Graph: Allow optionally specifying custom colors via the GRAPH_HIGHLIGHT environment variable 2017-06-03 07:04:17 -05:00
Michael Larabel
cf86a9b209 ChangeLog: Add the pts_Graph work done in previous commit 2017-06-03 06:23:11 -05:00
Michael Larabel
35a752b10a pts-core: Add basic dump-suites-to-git sub-command 2017-06-03 06:22:26 -05:00
Michael Larabel
70cbb94301 pts-core: clean up some strings 2017-06-01 13:18:22 -05:00
Michael Larabel
311eca9777 pts-core: Add "vulkan-development" external dependency 2017-05-31 12:34:52 -05:00
Michael Larabel
bcb3283993 pts-core: Additional safety checks around loading test result arguments from a result file 2017-05-31 12:00:36 -05:00
Michael Larabel
d8ec874d6c pts-core: Result parser fixes/improvements 2017-05-30 16:44:43 -05:00
Michael Larabel
346672145e pts-core: Fix for cachebench parsing of " " search key 2017-05-30 16:33:16 -05:00
Michael Larabel
2bce5cdd02 pts-core: Add Git executable check for dump-tests-to-git 2017-05-30 14:28:24 -05:00
Michael Larabel
28aa93b15c pts-core: Add basic dump-tests-to-git sub-command 2017-05-30 13:18:45 -05:00
Michael Larabel
322b266b48 phoromatic: fix priority matching when editing test schedule 2017-05-30 08:51:02 -05:00
Michael Larabel
1a92c4faaa phoromatic: Show the Run priority on schedules page 2017-05-30 08:50:05 -05:00
Michael Larabel
0bf2e84eec phoromatic: Introduce support for setting a run-priority on test schedules 2017-05-30 08:45:12 -05:00
Michael Larabel
8f4335954c phoromatic: Infrastructure changes for introducing RunPriority on test schedules 2017-05-30 08:32:20 -05:00
Michael Larabel
a7995738ec pts-core: If a OB upload fails with system logs, try again without system logs 2017-05-27 07:56:14 -05:00
Michael Larabel
d5a2587daa pts_Graph: Don't make empty identifier entries alert/red in result file table 2017-05-26 11:59:32 -05:00
Michael Larabel
dde42d8ffc Phoronix Test Suite 7.2 Milestone 3 2017-05-26 08:00:52 -05:00
Michael Larabel
40829023c3 pts_Graph: Line graph key tweak 2017-05-23 14:08:26 -05:00
Fatima Sheremetyeva
118cff1799 pts-core: Result parser fix for DXMD 2017-05-23 15:07:47 -04:00
Michael Larabel
e06e304a24 pts_Graph: Fix typo in previous commit 2017-05-23 11:09:35 -05:00
Michael Larabel
f4f08bd210 pts-core: Update tweaks for previous commits 2017-05-23 11:07:56 -05:00
Michael Larabel
67b304248c pts_Graph: Show all results in result file table, including runs with null identifiers 2017-05-23 10:56:56 -05:00
Michael Larabel
6b4d99816a pts-core: Fix appending to test arguments yielding excess mess when re-running tests 2017-05-23 10:45:10 -05:00
Michael Larabel
ec6c58756f pts_Graph: Don't allow duplicate identifiers 2017-05-22 09:35:07 -05:00
Michael Larabel
3465b95292 pts-core: Add dump-file-info helper 2017-05-19 16:01:38 -05:00
Michael Larabel
45259478a4 phoromatic: Handling for non-PCNTL support in Phoromatic client 2017-05-18 12:17:58 -05:00
Michael Larabel
872b071670 phodevi: Monitor *DEBUG* environment variables 2017-05-18 08:30:50 -05:00
Michael Larabel
4b8ef61a4b phodevi: Fallback for being able to read I/O scheduler on NVMe device on Linux 2017-05-04 19:46:29 -05:00
Michael Larabel
ec8acf9ed9 Phoronix Test Suite 7.2.0 Milestone 2 2017-05-04 06:08:29 -05:00
Michael Larabel
b155c1ea90 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2017-05-03 16:00:56 -05:00
Michael Larabel
d7cd61deb1 perf_per_dollar: Fix error, missing variable from copy paste fail 2017-05-03 16:00:38 -05:00
Fatima Sheremetyeva
9720bc7e16 pts-core: Result parser fix for strip result / strip result posfix 2017-05-03 09:41:34 -04:00
Fatima Sheremetyeva
e283682246 phodevi: Add PGI compiler detection 2017-05-02 08:47:25 -04:00
Michael Larabel
580fd6c441 pts-core: Make force_recover_from_file() static, patch from Stefan Dösinger 2017-05-02 07:32:46 -05:00
Michael Larabel
9507f952c6 pts-core: Use spl_autoload_register rather than __autoload

2017-04-27 01:45:30 -05:00
Michael Larabel
8af17a0a6c pts-core: Small update on top of previous commit 2017-04-19 10:07:47 -05:00
Michael Larabel
8740216864 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2017-04-19 10:04:52 -05:00
Michael Larabel
7f5028f3ce perf_per_dollar: Allow custom units, support LIB results 2017-04-19 10:04:27 -05:00
Fatima Sheremetyeva
631cb56662 pts-core: Parser improvements for time with test profiles like Blender 2017-04-18 10:18:35 -04:00
Michael Larabel
95b4caa7e2 pts-core: Add SKIP_TESTS_HAVING_ARGS environment variable 2017-04-17 08:33:00 -05:00
Michael Larabel
27e9e5a56c documentation: Drop reference to detailed-system-info that was removed from PTS 7.0 when system-info became more verbose by default 2017-04-14 14:39:00 -05:00
Michael Larabel
dfc0b8978a documentation: Drop reference to detailed-system-info that was removed from PTS 7.0 when system-info became more verbose by default 2017-04-14 14:38:04 -05:00
Michael Larabel
90d3fe2783 Phoronix Test Suite 7.2.0 Milestone 1 2017-04-14 08:09:06 -05:00
Michael Larabel
92426aedc5 pts-core: Fix for potential warning 2017-04-14 08:03:29 -05:00
Michael Larabel
62c9f10ea4 pts-core: About time to bump this for TRYSIL cycle 2017-04-06 09:13:11 -05:00
Michael Larabel
07d85ef98e phodevi: Fix for listing dual 4K displays and other select multi-monitor configurations 2017-04-06 09:11:18 -05:00
Michael Larabel
a84d3c0e31 pts-core: Clear the result identifier on multiple runs of same result identifier 2017-04-06 08:42:42 -05:00
Michael Larabel
eb210e506e phoronix-test-suite: Add eopkg php helper to script 2017-04-06 07:41:47 -05:00
Michael Larabel
7f232753cd pts-graph: some tweaking 2017-04-06 07:41:39 -05:00
Michael Larabel
e87e83a289 system_monitor: Fix for when individual monitoring is disabled 2017-03-31 11:46:49 -05:00
Michael Larabel
6cee52c416 pts-core: Ensure c++ is present on Fedora systems with gcc-c++ being separate from gcc 2017-03-30 19:30:14 -05:00
Michael Larabel
a7a38b2fc0 pts-core: Add AppendToArgumentsDescription option to result parser capabilities 2017-03-30 11:03:28 -05:00
Michael Larabel
8b6a1490bb pts-core: Fix for showing max-result 2017-03-29 09:53:54 -05:00
Fatima Sheremetyeva
b71fb80c7e pts-core: Parser improvement 2017-03-29 10:08:42 -04:00
Michael Larabel
82672e54d7 Phoronix Test Suite 7.0.1 2017-03-28 07:59:47 -05:00
Michael Larabel
3981d4a169 pts-core: Avoid duplicate entries in auto-disk-partitions 2017-03-27 13:00:55 -05:00
Michael Larabel
b82cce0531 pts-core: Fix misspelled variable name 2017-03-21 11:51:26 -05:00
Michael Larabel
6d1e06bf51 pts-core: Improve formatting of text in 'info' sub-command 2017-03-21 08:24:28 -05:00
Michael Larabel
daa583d783 pts-core: Minor adjustment to pts_network, unrelated change in phodevi_gpu just commented out 2017-03-21 06:31:26 -05:00
Michael Larabel
dec8a5b346 pts-core: Improve formatting of "to install" text table 2017-03-17 10:22:06 -05:00
Michael Larabel
fe67cb459b pts-core: Remove " FB" references when pulling from /sys/class/graphics/fb0/name 2017-03-17 07:14:36 -05:00
Michael Larabel
13ea3d230f phodevi: Add a fallback detection for PowerVR graphics 2017-03-16 16:17:01 -05:00
Michael Larabel
155e21e9ad pts-core: Bold some install strings 2017-03-16 13:19:44 -05:00
Michael Larabel
f87a035117 phodevi: Add a possible last fallback for GPU reporting of using fb0 name if no other choice is available 2017-03-16 13:07:13 -05:00
Michael Larabel
2e0ccb9c48 pts-core: Use new password option on prompt_user_input() during OB login 2017-03-16 10:55:44 -05:00
Michael Larabel
74f0c18b40 pts-core: Support for network proxies with username/password requirement
Cleaned up version of: https://www.phoronix.com/forums/forum/phoronix/phoronix-test-suite/938264-connection-to-a-proxy-with-authentication
2017-03-16 10:17:57 -05:00
Michael Larabel
6e9e05e3fa phodevi: Add fallback detection for ARM Mali 2017-03-15 16:53:49 -05:00
Michael Larabel
e744b886c3 report_test_run_times: Add INSTALL_SIZES_ARE_A_BENCHMARK=1 option for generating install size graphs 2017-03-15 12:52:56 -05:00
Michael Larabel
4df4c975c3 report_test_run_times: Add INSTALL_TIMES_ARE_A_BENCHMARK=1 option for generating install time graphs 2017-03-15 12:09:14 -05:00
Michael Larabel
8c60566f5f pts-core: Remove a debug line, update changelog 2017-03-15 11:32:48 -05:00
Michael Larabel
0f5bb82f87 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2017-03-13 22:17:49 +00:00
Michael Larabel
4a679bc3a3 phodevi: Expanded sensor coverage for Tegra 2017-03-13 22:17:19 +00:00
Michael Larabel
d4a9c04e96 pts-core: Clean up string 2017-03-13 07:15:36 -05:00
Michael Larabel
2c8b703a0d phodevi: Improved detection for Quill AArch64 board and possibly other boards 2017-03-10 10:25:35 -06:00
Michael Larabel
59948042c2 pts-core: Always enable CURLOPT_SSL_VERIFYPEER 2017-03-08 17:03:59 -06:00
Michael Larabel
1b1f7f191f Phoronix Test Suite 7.0.0 prepping... 2017-03-06 16:30:48 -06:00
Michael Larabel
516b41017a phodevi: Expand GCC version detection when -dumpversion isn't supported (e.g. gcc-snapshot of gcc 7.0.1) 2017-03-06 13:41:42 -06:00
Michael Larabel
0ea2375c87 pts-core: Last testing before 7.0.0 2017-03-04 09:38:37 -06:00
Michael Larabel
be1a4dec8a pts-core: Improve formatting of PDF generation on large result files 2017-03-01 20:35:07 -06:00
Michael Larabel
7aadba1d57 pts-core: Make the AppStream meta data happy 2017-03-01 06:43:45 -06:00
Michael Larabel
7bf6c03113 Phoronix Test Suite 7.0.0 Milestone 5 2017-02-28 19:52:06 -06:00
Michael Larabel
60716494e6 pts-core: Show results in text mode when show-result sub-command is run without DISPLAY 2017-02-28 13:59:15 -06:00
Michael Larabel
51acdc67c7 pts-core: Trivial changes 2017-02-28 11:42:57 -06:00
Michael Larabel
c279b0a3a3 report_test_run_times: new module to report test run times as result graphs 2017-02-23 06:59:01 -06:00
Michael Larabel
bf2e8dcc16 pts-core: There's now a use-case for using microtime() over time() in pts_test_execution (new module next commit) 2017-02-23 06:58:22 -06:00
Michael Larabel
791d82ecdf pts-core: Only preserve the original raw result string if it differs from the final result 2017-02-22 14:59:30 -06:00
Michael Larabel
ed27e1a36f pts-core: Allow bzip2 compression of result file uploads to OpenBenchmarking.org 2017-02-21 18:44:44 -06:00
Fatima Sheremetyeva
da86cd5046 pts-core: Adjustment to previous commit 2017-02-21 09:20:04 -05:00
Fatima Sheremetyeva
78b7da54ef Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2017-02-21 08:26:17 -05:00
Fatima Sheremetyeva
f8f16f3e87 pts-core: Allow parsing of frame times in format to be used by HITMAN test profile 2017-02-21 08:24:55 -05:00
Michael Larabel
6885629cb7 pts_Graph: Remove rogue debug comment left 2017-02-16 12:03:19 -06:00
Michael Larabel
024189d25d Make it very clear PHP 7 is fully supported since some still seem to be confused... 2017-02-16 08:40:57 -06:00
Michael Larabel
8782fcdaa5 Phoronix Test Suite 7.0 Milestone 4 2017-02-16 08:16:10 -06:00
Michael Larabel
5bbf8a8caf pts_Graph: Improve rendering a bit of results for multi-way comparisons 2017-02-15 19:29:45 -06:00
Michael Larabel
1d21ea4a53 pts-core: Better normalizing for multi-way comparisons by inverting the current behavior 2017-02-15 19:22:04 -06:00
Michael Larabel
ea890b7b8b pts-core: More minor tweaks 2017-02-12 17:44:43 -06:00
Michael Larabel
da2648fec8 pts-core: Color the value rather than the scale on line graph results sent to CLI display 2017-02-09 17:15:48 -06:00
Michael Larabel
767e8641e1 pts_Graph: Make box plot parts more prominent 2017-02-09 16:46:42 -06:00
Michael Larabel
1658bf1e65 pts_Graph: Final optimizations for now.... 2017-02-09 16:42:05 -06:00
Michael Larabel
5245f152a1 pts_Graph: Further optimize the size of the box plot graphs 2017-02-09 16:21:02 -06:00
Michael Larabel
3cae6d56a6 pts_Graph: typo fix 2017-02-09 11:53:36 -06:00
Michael Larabel
22e0a1134a pts-core: Drop some more rounding 2017-02-09 11:51:12 -06:00
Michael Larabel
18f8662c24 pts_Graph: More values that should have been rounded 2017-02-09 11:50:28 -06:00
Michael Larabel
42b9a5b6fd pts-core: Ensure top_end is rounded 2017-02-09 11:48:32 -06:00
Michael Larabel
2e57174e46 pts_Graph: Get rid of some artificial 0.5 +/- 2017-02-09 11:45:05 -06:00
Michael Larabel
39aef2d526 pts_Graph: More optimizations 2017-02-09 11:42:00 -06:00
Michael Larabel
9af4fe7a0e pts_Graph: Some optimizations to compact systems table 2017-02-09 11:17:56 -06:00
Michael Larabel
894364a09c pts_Graph: Various SVG size/efficiency optimizations 2017-02-09 10:48:27 -06:00
Michael Larabel
3bbd06d599 pts_Graph: Various graph tweaks / minor improvements 2017-02-09 09:41:05 -06:00
Michael Larabel
1907838b35 pts_Graph: Slightly increase per_identifier_height size on multi-way comparisons 2017-02-09 08:58:07 -06:00
Michael Larabel
8eda4a5a91 pts-core: Just some trivial updates 2017-02-08 21:00:55 -06:00
Michael Larabel
712de905a4 pts-core: Improve some styling for the 'info' sub-command 2017-02-08 20:41:15 -06:00
Michael Larabel
a1d05a987c pts-core: Improved styling for 'help' sub-command 2017-02-08 20:32:26 -06:00
Michael Larabel
abbe900f13 pts-core: UI improvements for system-sensors and compact systems table 2017-02-08 18:31:53 -06:00
Michael Larabel
5a96db3380 pts_Graph: Refine the multi-way bar height algo 2017-02-08 17:39:53 -06:00
Fatima Sheremetyeva
56ef1a00b6 phodevi: Append LLVM version to OpenGL driver string where relevant 2017-02-08 12:50:27 -05:00
Michael Larabel
e6f19c8988 pts-core: Few text formatting improvements 2017-02-08 11:43:09 -06:00
Michael Larabel
0d768702e0 pts_Graph: Allow more compact multi-way comparison graphs 2017-02-08 08:57:13 -06:00
Michael Larabel
a45895b0ff pts-core: stress-run styling improvements 2017-02-07 12:30:52 -06:00
Michael Larabel
c1a6dcc851 pts_Graph: Continued tweaking of graph UI 2017-02-07 10:52:32 -06:00
Michael Larabel
eafc5b7a7f phodevi: Continued tweaking on the new system information view 2017-02-07 09:25:58 -06:00
Michael Larabel
1c31a919b6 pts-core: OpenSUSE exdep installer should be set to non-interactive 2017-02-07 06:46:36 -06:00
Michael Larabel
5e02c1202c pts-core: OpenSUSE external dependency updates 2017-02-07 06:45:09 -06:00
Michael Larabel
2c9cfa4aa7 Phoronix Test Suite 7.0 M3 2017-02-06 20:30:31 -06:00
Michael Larabel
9b22974ea4 pts-core: Only color-code results when there are more than 1 result to be listed 2017-02-05 20:49:34 -06:00
Michael Larabel
bee7eeb30a pts-core: Some more CLI formatting improvements 2017-02-05 19:46:21 -06:00
Michael Larabel
a7a0a85183 pts-core: Rogue $ at EOF 2017-02-03 07:41:59 -06:00
Michael Larabel
be6ee9b44e pts-core: More coloring improvements 2017-02-03 07:20:16 -06:00
Michael Larabel
98a9f44146 pts-core: Various console coloring improvements 2017-02-02 21:02:40 -06:00
Michael Larabel
9004ab7410 pts-core: Restore setting the OpenBenchmarking.org ID to the ReferenceID field in the result file when cloning from OpenBenchmarking.org 2017-02-02 20:28:52 -06:00
Fatima Sheremetyeva
43e0657d62 pts-core: Add debug-result-parser sub-command as a way to debug test profile result-parser defintions, just scan for old test log files and don't actually execute test 2017-02-02 16:10:14 -05:00
Michael Larabel
639a4739e5 pts-core: Trivial text modifications 2017-02-01 20:20:45 -06:00
Michael Larabel
5d988fb686 pts-core: tweaking text string for test results 2017-02-01 20:01:04 -06:00
Michael Larabel
602ad4bd8e pts-core: Bump core version for clarity 2017-02-01 19:42:35 -06:00
Michael Larabel
7ea7799327 pts-core: Text improvements when using cache share 2017-02-01 19:27:45 -06:00
Michael Larabel
edce918fc2 pts-core: More result handling work 2017-02-01 19:08:32 -06:00
Fatima Sheremetyeva
66966c63bd pts-core: Drop secondary_linked_results handling now that all tests can create multiple result outputs natively, use that code path 2017-02-01 19:42:29 -05:00
Fatima Sheremetyeva
4fdbf3e04d pts-core: Adjustments for piping secondary linked runs over to the new code paths 2017-02-01 19:39:36 -05:00
Michael Larabel
28689112ef pts-core: Allow one test run to generate multiple result outputs (graphs, etc) from multiple result-definition entries 2017-02-01 15:50:54 -06:00
Michael Larabel
bfbd5600bf pts-core: Almost done plumbing for multiple result outputs 2017-02-01 13:23:15 -06:00
Michael Larabel
4ba6342b94 pts-core: big cleanup around active-> handling in test execution 2017-02-01 11:02:08 -06:00
Michael Larabel
d72518f471 pts-core: Add AppendToArgumentsDescription to the results-parser schema for appending a string to the used arguments description string on test execution
pts-core: Add the result-scale to the test profile comparison_hash (NOTE: any external data stores making use of the comparison_hash should thus rebuild their hash indexes)
2017-02-01 09:36:48 -06:00
Michael Larabel
e1340308aa pts-core: Dropping of some deprecated checks 2017-01-31 19:59:05 -06:00
Michael Larabel
e9788b9f35 pts-core: Fix from yesterday's changes causing sensor-based result tests from registering results with the new interfaces 2017-01-31 09:48:15 -06:00
Michael Larabel
3b65a0329e ChangeLog: Cleanup change-log entries, drop pre-4.0 work 2017-01-30 21:01:43 -06:00
Michael Larabel
7c02413dc6 pts-core: Last of the result parser changes for now, probably 2017-01-30 20:47:11 -06:00
Michael Larabel
9a4d519a18 pts-core: More test result parsing debug improvements 2017-01-30 20:26:55 -06:00
Michael Larabel
218f5cfab0 pts-core: add more debugging helpers for test result parsing 2017-01-30 20:24:19 -06:00
Michael Larabel
82389c8e6a pts-core: Streamline the min/max handling in the test result parser 2017-01-30 19:48:05 -06:00
Michael Larabel
fd26da038a pts-core: Introduce parse_result_process_entry to pts_test_result_parser 2017-01-30 19:37:27 -06:00
Michael Larabel
0c84dd460c pts-core: continued pts_test_result_parser restructuring 2017-01-30 19:19:48 -06:00
Michael Larabel
05e5b13b17 pts-core: More cleansing of pts_test_result_parser 2017-01-30 19:00:13 -06:00
Michael Larabel
976a1564c2 pts-core: Streamline PASS/FAIL result handling 2017-01-30 17:01:40 -06:00
Michael Larabel
803e11d274 pts-core: More cleaning in pts_test_result_parser 2017-01-30 16:45:18 -06:00
Michael Larabel
4f60331beb pts-core: Better safeguard against returning bad data in pts_test_result_parser 2017-01-30 16:20:21 -06:00
Michael Larabel
5219e0a08d pts-core: More refactoring of pts_test_execution / pts_test_result_parser 2017-01-30 15:47:15 -06:00
Michael Larabel
c166443a11 pts-core: Move result post-processing from test_run_manager into pts_test_execution... working towards one-run-multi-result parsing support 2017-01-30 15:24:26 -06:00
Michael Larabel
d8d72f6d4e pts-core: Some improved detection of generic external dependency packages 2017-01-28 08:20:19 -06:00
Michael Larabel
4be09f1155 pts-core: Formatting improvements plus add percentages for winners-and-losers 2017-01-28 07:57:29 -06:00
Michael Larabel
c4a82ae8f6 pts-core: Don't pass files greater than ~50MB to the result parser as likely too big to parse and invalid data like lots of warnings/errors from test 2017-01-27 17:33:08 -06:00
Michael Larabel
a19b10d401 pts-core: fix another case of installed_test data potentially being unset 2017-01-26 11:05:34 -06:00
Michael Larabel
5d941004e2 pts-core: Avoid possible case of unset compilerdata 2017-01-26 10:43:25 -06:00
Michael Larabel
c3c47d7829 pts-core: for winners-and-losers ensure each result object has at least two results 2017-01-26 09:48:29 -06:00
Michael Larabel
ec013399f0 pts-core: Add winners-and-losers sub-command for providing some first/last place finish stats 2017-01-25 16:02:51 -06:00
Michael Larabel
60154761b5 phodevi: CPU cache size string 2017-01-23 10:41:49 -06:00
Michael Larabel
afa41dcb8b phodevi: Add 'cpu' 'cache-size' support on macOS 2017-01-23 10:39:18 -06:00
Michael Larabel
200f25160d Phoronix Test Suite 7.0 Milestone 2 2017-01-23 05:27:04 -06:00
Michael Larabel
a21ae0bbc1 phodevi: Add microcode version reporting on Linux 2017-01-22 20:11:06 -06:00
Michael Larabel
ffdd31d273 pts-core: Slight optimization as that string at that point for now is always null 2017-01-22 20:10:48 -06:00
Michael Larabel
460fda86bf pts-core: Small cleanups 2017-01-22 19:48:12 -06:00
Michael Larabel
7607477254 pts-core: Condense list-test-usage lines 2017-01-22 18:57:58 -06:00
Michael Larabel
1bf2f3239a pts-core: Cleanup phoronix-test-suite list-test-usage 2017-01-22 18:54:04 -06:00
Michael Larabel
c569da824c pts-core: Copy paste fail previous commit 2017-01-22 18:44:30 -06:00
Michael Larabel
f3891dc41d pts-core: Cleanup XML usage in pts_installed_test 2017-01-22 18:40:20 -06:00
Michael Larabel
c5908f1979 pts-core: Cleanup XML usage in pts_exdep_generic_parser 2017-01-22 18:32:14 -06:00
Michael Larabel
7b734c9cd9 pts-core: Cleanup XML handling in pts_exdep_platform_parser 2017-01-22 18:23:33 -06:00
Michael Larabel
e1d75936de pts-core: Drop nye_XmlReader abstraction in pts_test_result_parser 2017-01-22 17:50:39 -06:00
Michael Larabel
7d0b809ea9 pts-core: Eliminate pts_parse_results_nye_XmlReader abstraction 2017-01-22 16:42:20 -06:00
Michael Larabel
a71bd2cbf8 pts-core: Eliminate pts_test_downloads_nye_XmlReader 2017-01-22 16:35:15 -06:00
Michael Larabel
8941860e9b phodevi: typo from previous commit 2017-01-17 15:52:54 -06:00
Michael Larabel
a000c0ef20 phodevi: No reason to show thread count if same as core count 2017-01-17 15:52:12 -06:00
Michael Larabel
e4b47aa5a4 pts-core: Drop detailed-system-info sub-command now that system-info is more verbose 2017-01-16 15:26:48 -06:00
Michael Larabel
3b95afe1f0 phodevi: Don't rely upon X.Org DDX driver logic for determining GPU frequency since it's not portable to Wayland or with -modesetting DDX 2017-01-16 15:25:58 -06:00
Michael Larabel
d279629ee4 phodevi: Fix for hanging Windows client when requesting disk mount options 2017-01-16 12:36:57 -06:00
Michael Larabel
a28727598e Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2017-01-16 08:49:49 -06:00
Michael Larabel
5f23296e9b pts-core: More system info string improvements 2017-01-16 08:49:29 -06:00
Michael Larabel
09e721cfda pts-core: Add coloring to system_centralized_view section headers 2017-01-16 07:21:48 -06:00
Michael Larabel
a87b8fbad7 Merge pull request #153 from nevion/master
add lapacke and opencl-headers
2017-01-16 06:00:05 -05:00
Jason Newton
2ccaf6eab9 add opencl-headers to opensuse 2017-01-16 03:51:10 -05:00
Jason Newton
5d26bc75ab add lapacke to lapack-development 2017-01-16 03:50:56 -05:00
Michael Larabel
38b813186e pts-core: Few more tweaks for earlier commit 2017-01-15 22:02:50 -06:00
Michael Larabel
f66269971b pts-core: More system_centralized_view improvements 2017-01-15 21:53:02 -06:00
Michael Larabel
b10d6d62bb pts-core: Introduce new view of system software/hardware details on test run and system-info command 2017-01-15 21:34:56 -06:00
Michael Larabel
d2f7ef4d59 pts-core: Indicate HIB/LIB result proportion when dumping results as CSV 2017-01-14 12:04:31 -06:00
Michael Larabel
eaac34ce9b pts-core: OB trivial updates 2017-01-14 12:02:12 -06:00
Michael Larabel
4f3c6d1046 TODO: some test profile updates 2017-01-13 17:28:08 -06:00
Michael Larabel
ee17c558b5 build-package-deb: php5-cli is only dependency needed, php-cli php-xml separation was for PHP7 2017-01-13 13:31:06 -06:00
Michael Larabel
1adc5604d7 pts-core: Check for headers if needed in /usr/include/x86_64-linux-gnu/ during external dependency resolution 2017-01-13 07:23:49 -06:00
Michael Larabel
c5d6fbe9b7 Phoronix Test Suite 7.0 M1 2017-01-12 05:29:52 -06:00
Michael Larabel
c6170880ed pts-core: Add estimate-run-time sub-command for estimating test/suite/result-file run length 2017-01-11 15:48:54 -06:00
Michael Larabel
bba7a462b7 ChangeLog: Add from previous commit 2017-01-07 20:46:55 -06:00
Michael Larabel
a023c9ffb8 phoromatic: Report status updates more often 2017-01-07 20:46:27 -06:00
Michael Larabel
98f536a827 pts_Graph: More color branding changes 2017-01-07 19:12:59 -06:00
Michael Larabel
aec95545da pts_Graph: Add "Pentium" product string to Intel's coloring 2017-01-06 10:05:44 -06:00
Michael Larabel
e10563d25c pts-core: Add apt-file to the Ubuntu external dependencies as it is needed for the reverse dependency handling 2017-01-05 12:55:44 -06:00
Michael Larabel
360b2ea52c 2017 copyright updates for main files 2017-01-04 20:54:31 -06:00
Michael Larabel
d7000da52b pts-core: Cleanup PTS_USER_LOCK / run-lock handling 2017-01-04 19:16:10 -06:00
Michael Larabel
52f97d07fe Bump for Phoronix Test Suite 7.0-Ringsaker early development 2017-01-04 18:44:05 -06:00
Michael Larabel
a469cd9b24 phoromatic: Set by default for SQLite database WAL journal mode / NORMAL synchronous 2017-01-04 18:23:18 -06:00
Michael Larabel
d3c26130d8 phoronix-test-suite: Recommend php7 packages for zypper over php5 2016-12-29 15:57:19 -06:00
Michael Larabel
b6958aea66 pts-core: More external dependency coverage for BSDs 2016-12-21 10:02:51 -06:00
Michael Larabel
cd9f20a553 pts_Graph: Add "Ryzen" product string to AMD's coloring 2016-12-13 15:56:13 -06:00
Michael Larabel
327315004f Phoronix Test Suite 6.8.0-Tana 2016-12-05 18:41:32 -06:00
Michael Larabel
b1cabd5cce Add Phoronix Test Suite 7.x codenames, towns within Hedmark Norway 2016-12-04 20:54:26 -06:00
Michael Larabel
9cf7ecd68c FPDF: update 2016-12-01 17:32:20 -06:00
Michael Larabel
2fd7fd58ca phodevi: Rearrange ATI/AMD graphics checks 2016-11-30 17:15:03 -06:00
Michael Larabel
1939c50960 pts-core: More tweaks 2016-11-29 13:29:49 -06:00
Michael Larabel
2d6953fe67 pts-core: Fix for previous commit 2016-11-29 13:27:42 -06:00
Michael Larabel
7592fd09b1 phoromatic: allow clearing warnings/errors of a system from the systems page 2016-11-29 13:25:35 -06:00
Michael Larabel
c271719825 Phoronix Test Suite 6.8 Milestone 3 2016-11-27 20:48:43 -06:00
Michael Larabel
de63dcd52e devi: vRAM detection change to help AMDGPU-PRO 2016-11-27 18:42:10 -06:00
Michael Larabel
fbb21fcba7 phodevi: Some cleanup 2016-11-22 12:41:28 -06:00
Fatima Sheremetyeva
358e0e019e phodevi: GPU model improvements 2016-11-22 13:37:56 -05:00
Michael Larabel
6e15b68e82 phodevi: Round memory when needed to nearest 128MB 2016-11-22 12:25:57 -06:00
Michael Larabel
6347c3f982 log_exporter: fix for older versions of PHP 2016-11-22 05:09:34 -06:00
Michael Larabel
d152ee6166 phodevi: Memory string fix to help Kingston DIMMs that otherwise get ruled out 2016-11-21 20:51:26 -06:00
Michael Larabel
f28d8eff3d Phodevi: strip Mesa DRI when querying GLX renderer 2016-11-21 20:40:07 -06:00
Michael Larabel
4049811246 phodevi: Improved video RAM detection via GLX_MESA_query_renderer 2016-11-21 20:36:32 -06:00
Michael Larabel
7b2446ee52 pts-core: Ubuntu external dependency script fix 2016-11-21 18:00:08 -06:00
Michael Larabel
e30f391520 Phoronix Test Suite 6.8 Milestone 2 2016-11-15 08:31:35 -06:00
Michael Larabel
32073ad075 log_exporter: Allow easily exporting test run and system logs via COPY_TEST_RUN_LOGS_TO and COPY_SYSTEM_LOGS_TO env vars 2016-11-15 08:29:32 -06:00
Michael Larabel
5b1da20a39 pts-core: Add new module hooks for __test_log_output() and __post_test_run_system_logs() 2016-11-15 08:09:26 -06:00
Michael Larabel
01b3030ef8 phodevi: Don't load Phodevi sensors prior to PHP 5.3 due to compatibility issues 2016-11-10 11:06:50 -06:00
Michael Larabel
d35d61ed7a pts_Graph: Add Intel color highlighting for "Celeron" too 2016-11-09 07:15:27 -06:00
Michael Larabel
86ccf1f872 pts-core: Add PHP GD check as first thing when attempting to use result-file-to-pdf 2016-11-08 09:46:54 -06:00
Michael Larabel
7277d957d2 pts-core: Add new remove_inactive_systems option on systems page 2016-11-03 17:03:43 -05:00
Michael Larabel
3742302f6a Merge pull request #137 from sunnyflunk/master
pts-core: Update latest Solus dependency libs
2016-11-03 06:00:30 -04:00
Michael Larabel
04e0bb96ed results_custom_export: Example module for dumping PTS test results in custom formats 2016-10-31 11:27:00 -05:00
Michael Larabel
6f9e7feb1f pts_Graph: Just add a TODO comment 2016-10-31 11:26:28 -05:00
Michael Larabel
60ce0b5727 flamegrapher: Experimental new module to generate Linux perf / FlameGraph graphs for each test being executed when active 2016-10-31 11:05:13 -04:00
Michael Larabel
c6da014d03 Prep changes for next commit 2016-10-31 11:03:28 -04:00
Michael Larabel
dcd5b41ae7 pts-core: Fix malforming graphs when feeding many line graph results that are in a tracking-like manner that should be compacted to box plot 2016-10-27 07:59:45 -05:00
Michael Larabel
bdc952bd0c Phoronix Test Suite 6.8.0 Milestone 1 (Tana) 2016-10-27 07:15:40 -05:00
Michael Larabel
f823d6475f pts-Graph: Warning fix 2016-10-24 16:27:35 -05:00
Peter O'Connor
3c5e61286b pts-core: Update latest Solus dependency libs 2016-10-24 14:31:09 +11:00
Michael Larabel
63bc93c74c pts-core: Proper handling for when PHP ctype functions are not present 2016-10-17 09:29:59 -05:00
Michael Larabel
f3575e663a pts-core: Strip http/https from proxy address if needed 2016-10-17 07:12:28 -05:00
Michael Larabel
fefc17b87c phodevi: Also look for Vulkan ICDs at /usr/share/vulkan/icd.d/*.json 2016-10-06 15:14:30 -05:00
Michael Larabel
a26f2f5223 pts-core: Add PHOROMATIC_HTTP_PORT environment variable for overriding Phoromatic Server HTTP port on starting it 2016-10-06 06:21:18 -05:00
Michael Larabel
81dc40f174 Merge pull request #130 from sunnyflunk/Solus
pts-core: Update Solus external dependency handling
2016-09-30 06:01:23 -04:00
Peter O'Connor
283ea3f704 pts-core: Update Solus external dependency handling 2016-09-30 16:34:38 +10:00
Michael Larabel
97619f5014 pts-core: Don't preserve really large system logs (~1MB or greater) 2016-09-29 16:45:02 -05:00
Michael Larabel
bf934fb90b Phoronix Test Suite 6.6.1 2016-09-29 12:23:56 -05:00
Michael Larabel
f497023529 pts-core: Change file check for python-sklearn 2016-09-28 15:23:44 -05:00
Michael Larabel
6ee8cb107d pts-core: Add python-scipy and python-sklearn external dependencies 2016-09-28 08:37:37 -05:00
Michael Larabel
7330df29ae phoromatic: Fix "Password" text in the login page 2016-09-27 12:29:05 -05:00
Michael Larabel
a314034df7 pts-core: Add a note about the Linux RAM speed change 2016-09-26 19:38:25 -05:00
Michael Larabel
e78beb7e8a phodevi: Support for reporting memory frequency when overclocked if reported via "Configured Clock Speed" in dmidecode for RAM 2016-09-26 19:29:01 -05:00
Michael Larabel
4628e1cbb3 pts-core: Add list-not-installed-tests command (alias: list-uninstalled-tests) 2016-09-26 16:41:56 -05:00
Michael Larabel
0b8fdfc13f pts-core: Add list-uninstalled-tests command 2016-09-26 16:32:58 -05:00
Michael Larabel
dd0b6056a6 pts-core: Drop LIMIT_STRESS debug message 2016-09-22 14:21:38 -05:00
Michael Larabel
b9d5108479 pts-core: Don't pass test by reference 2016-09-22 14:05:54 -05:00
Michael Larabel
566ae6d648 pts-core: Introduce skip_test_check in pts_stress_run_manager 2016-09-22 10:22:39 -05:00
Michael Larabel
fdd0f5c6d1 pts-core: Add debug message on stress-run skipping over env var 2016-09-20 09:35:17 -05:00
Michael Larabel
f4435c54f6 pts-core: Add LIMIT_STRESS_*_TEST_COUNTS env var option 2016-09-09 11:44:56 -05:00
Michael Larabel
5c765b0b86 Documentation rebuild for previous commit 2016-09-08 13:46:19 -05:00
Michael Larabel
01efc7eeb7 pts-core: Add "phoronix-test-suite php-conf" sub-command to dump more useful PHP information for debugging 2016-09-08 13:44:19 -05:00
Michael Larabel
8b01a910f6 phoronix-test-suite: Move PHP7 binary detection to higher priority than PHP5 2016-09-07 10:56:13 -05:00
Michael Larabel
22a966553b pts-core: Detection for qupzilla browser when no alternative exists 2016-09-07 10:11:03 -05:00
Michael Larabel
8bc6d4ab3c pts-core: Cleanups for dragonflybsd external dependency handling 2016-09-06 17:20:17 -05:00
Michael Larabel
e28ab9feaf pts-core: Silly typo for previous commit 2016-09-06 17:16:31 -05:00
Michael Larabel
916bf5ef25 pts-core: Add check for ctype_alnum safeguard 2016-09-06 17:15:52 -05:00
Michael Larabel
9dea655699 phoronix-test-suite: Update pkg helper references to php70 rather than php5 2016-09-06 16:56:31 -05:00
Michael Larabel
160210de1f Phoronix Test Suite 6.6.0-Loppa 2016-09-06 10:01:12 -05:00
Michael Larabel
85b8fa1561 pts_Graph: On multi-way comparisons, always condense line graphs to modified box plots 2016-08-30 10:22:04 -05:00
Michael Larabel
390552847f Phoronix Test Suite 6.6.0 M3 2016-08-26 11:09:05 -05:00
Michael Larabel
041a10ab71 pts-core: Add a SVG DOM HTML back-end for lowering common SVG into pure HTML for cases like email clients where no SVG is supported 2016-08-24 19:07:21 -05:00
Michael Larabel
a6f0208080 pts-core: After running tests, if no browser/display is available, offer to show results via CLI graph/text rendering 2016-08-22 19:04:50 -05:00
Michael Larabel
afc3319808 pts-core: Another mail PDF sending tweak 2016-08-18 20:11:52 -05:00
Michael Larabel
04e34a9785 pts-core: Fix for previous commit 2016-08-18 19:49:18 -05:00
Michael Larabel
669d64fccd pts-core: Add PDF attachment to html_results_export email 2016-08-18 14:37:21 -05:00
Michael Larabel
d34da778eb system_monitor: Improve formatting when no sensors end up being used 2016-08-15 21:06:56 -05:00
Michael Larabel
2e7f7004bc pts-core: Make some objects easier to follow during the test execution result phase 2016-08-15 19:38:59 -05:00
Michael Larabel
924b3f1ebf pts-core: Don't actually need to return the active result buffer from pts_test_execution::run_test(), the output isn't really used 2016-08-15 19:33:57 -05:00
Michael Larabel
6bee435df4 pts-core: Add OpenMandriva/urpmi PHP dependency helper to launcher 2016-08-15 17:31:18 -05:00
Michael Larabel
914a1632dd html_results_export: New module exposed via EXPORT_RESULTS_HTML_EMAIL_TO and EXPORT_RESULTS_HTML_FILE_TO env vars for exporting HTML results 2016-08-15 16:39:16 -05:00
Michael Larabel
3a68779c1b pts-core: Update ubuntu-packages.xml 2016-08-15 16:39:04 -05:00
Michael Larabel
6e1a5fe51f pts-core: Add additional font paths in pts_svg_dom_gd 2016-08-09 12:26:13 -05:00
Michael Larabel
a63d7ccbe4 pts_Graph: When highlighting graph values, darken the color rather than use static color 2016-08-09 11:04:33 -05:00
Michael Larabel
2c05f1a225 phoromatic: Adjust function 2016-08-08 07:06:39 -05:00
Michael Larabel
f1866f7675 pts-core: color detection improvement 2016-08-07 10:00:50 -05:00
Michael Larabel
47bab9f402 Phoronix Test Suite 6.6 Milestone 2 2016-08-07 07:30:36 -05:00
Michael Larabel
131812eb54 pts-core: Another color tweak 2016-08-06 18:46:42 -05:00
Michael Larabel
d22ab87bd3 pts-core: More colored CLI text work 2016-08-06 18:38:48 -05:00
Michael Larabel
5172376256 pts-core: Initial work on CLI terminal colored text output 2016-08-06 18:34:09 -05:00
Michael Larabel
4a48da0cf4 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-08-06 16:54:17 -05:00
Michael Larabel
372e3102bd pts-core: Fix notice in graphics_event_checker on FreeBSD 2016-08-06 16:54:03 -05:00
Fatima Sheremetyeva
b6a42d4fae Merge pull request #123 from fatima-sheremetyeva/master
phoromatic: Additional UI tweaks
2016-08-06 14:39:05 -05:00
Fatima Sheremetyeva
c42e629d12 phoromatic: Additional UI tweaks 2016-08-06 14:37:22 -05:00
Michael Larabel
eb241892bb pts-core: Restructure bash on windows check 2016-08-06 13:02:29 -05:00
Michael Larabel
ea65b2f735 pts-core: Ensure DragonFlyBSD pkg installation is done automatically 2016-08-06 12:16:28 -05:00
Michael Larabel
84de65a0b2 Merge pull request #122 from fatima-sheremetyeva/master
phoromatic: More UI work
2016-08-06 12:23:18 -04:00
Michael Larabel
a9e05b8296 phodevi: Show mdstat RAID Details when available 2016-08-06 09:07:09 -05:00
Michael Larabel
db31e1536d pts_Graph: Show extra disk details on system graph 2016-08-06 08:55:51 -05:00
Michael Larabel
1536c6160d pts-core: Show local suites in list-suites 2016-08-03 19:10:14 -05:00
Michael Larabel
f1a480380a pts-core: Introduce pts_tests::local_tests() 2016-08-03 19:06:23 -05:00
Michael Larabel
edbde811fc pts-core: Fix for upload-test-suite (on OpenBenchmarking.org side too) 2016-08-01 15:31:51 -05:00
Michael Larabel
e38d5bedc2 Merge pull request #121 from iuno/master
pts-core: prevent reinstall of present packages
2016-07-24 07:58:34 -04:00
iuno
5ee3eb0a29 pts-core: prevent reinstall of present packages 2016-07-24 13:50:11 +02:00
Michael Larabel
12f25faebe pts-core: Tweak to CSV 2016-07-18 19:42:05 -05:00
Michael Larabel
506d650e9e pts-core: Use identifier rather than test title on CSV output 2016-07-18 12:12:27 -05:00
Michael Larabel
0229f0a924 pts-core: Better parsing of time 2016-07-11 07:43:02 -05:00
Fatima Sheremetyeva
88c627b624 phoromatic: More UI work 2016-07-08 10:47:02 -05:00
Michael Larabel
f6d4ddd838 deploy: Update Debian packaging script 2016-07-06 20:20:22 -05:00
Michael Larabel
7bb2550573 Phoronix Test Suite 6.6 Loppa Milestone 1 2016-07-06 08:05:21 -05:00
Michael Larabel
bbb5009e80 pts-core: Disable stress-run messages about testing indefinitely 2016-07-01 15:42:29 -05:00
Michael Larabel
1ca04b1f70 pts-core: Disable test cache share when run in stress-run mode 2016-07-01 15:36:00 -05:00
Michael Larabel
dff1263dab Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-06-27 10:21:08 -05:00
Michael Larabel
f50fd289ed pts-core: Fix 2016-06-27 10:20:52 -05:00
Michael Larabel
2cc521ee61 pts_Graph: Color string tweaks 2016-06-26 08:01:43 -05:00
Michael Larabel
7c87cbcf35 phodevi: Fix to allow GPU temperature sensor to work with AMDGPU-PRO driver stack 2016-06-25 12:17:29 -05:00
Michael Larabel
a5e4944c0f pts-core: add sys/xattr.h check to attr generic package check 2016-06-22 13:59:46 -05:00
Fatima Sheremetyeva
59b63bc26d pts-core: Add Solus external dependency handling 2016-06-22 13:51:20 -05:00
Michael Larabel
c364e89793 pts-core: Add OpenCV to external dependencies list 2016-06-20 09:23:52 -05:00
Michael Larabel
3a88d83254 phoromatic: Allow custom versions to be manually specified on test suite web UI page 2016-06-19 16:40:17 -05:00
Michael Larabel
0015567d24 pts_Graph: Show min/max results on multi-way comparisons 2016-06-18 07:27:00 -05:00
Michael Larabel
30d79511bf pts-core: Ensure "none" isn't part of a word when stripping it from Phodevi interfaces 2016-06-03 11:20:31 -05:00
Michael Larabel
e6a12eceb4 pts-core: Fix previous commit 2016-06-03 09:33:24 -05:00
Michael Larabel
b05ca034c9 pts-core: Update possible merge combinations 2016-06-03 09:32:53 -05:00
Michael Larabel
b9da25a040 Phoronix Test Suite 6.4.0 2016-06-02 06:23:35 -05:00
Michael Larabel
f23f336477 pts-core: Update the update checker 2016-06-01 18:41:27 -05:00
Michael Larabel
41168d7dd5 system_monitor: Protect against potential problem if a test is locked 2016-06-01 18:00:18 -05:00
Michael Larabel
493ebd2b41 phoromatic: Sort tests on local suite page by title ASC 2016-06-01 15:56:42 -05:00
Michael Larabel
a351cdd3ba pts-core: Check to ensure this define call doesn't get hit multiple times to avoid a NOTICE 2016-06-01 07:59:09 -05:00
Michael Larabel
e1e10bbd75 deploy: Remove 'php5' references from the Debian package build script 2016-05-31 18:00:17 -05:00
Michael Larabel
88a7740dfb Phoronix Test Suite 6.4 Milestone 4 2016-05-31 13:01:51 -05:00
Michael Larabel
b318833d1d phoromatic: Support editing and deleting tests in local suites from the Phoromatic Server UI 2016-05-31 12:41:49 -05:00
Michael Larabel
296485afac pts-core: Remove pts_test_suite_writer now that it's no longer used due to new pts_test_suite API replacing it 2016-05-31 11:49:49 -05:00
Michael Larabel
d280772507 pts-core: Finish porting from pts_test_suite_writer to pts_test_suite API new 2016-05-31 11:48:57 -05:00
Michael Larabel
29fcf362a1 pts-core: Port result-file-to-suite to new pts_test_suite API 2016-05-31 11:36:56 -05:00
Michael Larabel
28710178d5 pts-core: Finish new pts_test_suite API, port build-suite to it 2016-05-31 11:18:21 -05:00
Michael Larabel
b20f9c7e29 pts-core: Fix for IE not scaling SVGs in the results viewer 2016-05-31 09:22:43 -05:00
Michael Larabel
dfe945e04c pts-core: Change the color ordering on pts_Graph_passfail 2016-05-31 08:47:24 -05:00
Michael Larabel
ed1455e68f pts-core: Fix get_estimated_run_time() from previous commit 2016-05-30 17:37:08 -05:00
Michael Larabel
2ecb8426c8 pts-core: Prevent duplicate tests/setting combinations from entering the same test run manager queue 2016-05-29 12:47:33 -05:00
Michael Larabel
a92ac2c2c6 pts-core: Update for perl-digest-md5 2016-05-28 18:02:04 -05:00
Michael Larabel
165e824630 pts-core: Fixes for Ubuntu's MD5 PERL digest dependenct 2016-05-28 17:46:34 -05:00
Michael Larabel
24128fc243 pts-core: Add perl-digest-md5 to external dependencies list 2016-05-28 17:39:49 -05:00
Michael Larabel
e2942f164c pts-core: Don't load empty tests on finish-run command 2016-05-28 17:27:07 -05:00
Michael Larabel
d8189a32ec phodevi: More detection improvements for NVMe devices on Linux 2016-05-28 16:48:31 -05:00
Michael Larabel
744d380253 pts-core: Get rid of debug print from previous message 2016-05-26 18:51:36 -05:00
Michael Larabel
ad9aace274 pts-core: Automatically add used extra OpenBenchmarking.org repositories to the linked list 2016-05-26 18:51:09 -05:00
Michael Larabel
42cac172f3 Phoronix Test Suite 6.4 Milestone 3 2016-05-26 08:21:07 -05:00
Michael Larabel
89d094f990 pts-core: Add note 2016-05-26 08:19:50 -05:00
Michael Larabel
f2b8d5406e pts-core: API Additions for pts_test_suite 2016-05-20 11:17:05 -05:00
Michael Larabel
4e3de6da21 pts-core: Some sleeps in pts_test_execution to try to settle down a bit between tests 2016-05-19 16:59:08 -05:00
Michael Larabel
8242022047 Bump core version to rebuild cache to find new module 2016-05-19 16:31:00 -05:00
Michael Larabel
d582c84f5a watchdog: New PTS module 2016-05-19 16:30:01 -05:00
Michael Larabel
73abf2bda8 pts-core: Fix for test suite when collapsing pts_test_suite_parser into pts_test_suite 2016-05-19 11:56:44 -05:00
Michael Larabel
d58fe95958 pts-core: Skip most of pts_test_suite initialization when identifier is null 2016-05-19 11:54:54 -05:00
Michael Larabel
8257565f1e pts-core: Step 2 of pts_test_suite rewrite 2016-05-19 11:36:18 -05:00
Michael Larabel
8bc425049e pts_Graph: Take care of possible divide by zero in pts_graph_lines 2016-05-19 11:00:35 -05:00
Michael Larabel
502ef8ee6d pts-core: Should be safe wiping this 2016-05-19 10:49:39 -05:00
Michael Larabel
934a1334d4 pts-core: Step 1 of the pts_test_suite rewrite 2016-05-19 10:49:05 -05:00
Michael Larabel
999fc361d1 pts-core: Test patch for adding fallback to result parser on funky data (spacing issue) workaround reported by Vlado Djerk 2016-05-19 09:13:37 -05:00
Michael Larabel
1aa0cd3020 phoromatic: Fix for testing ticket listing 2016-05-18 17:17:19 -05:00
Michael Larabel
ab9a509ded phoromatic: Add tickets to Testing page 2016-05-18 17:15:42 -05:00
Michael Larabel
1569432b97 phoromatic: Add generalized "Testing" page to Phoromatic Server 2016-05-18 16:43:06 -05:00
Michael Larabel
44c73e0bb0 pts-core: Changelog update 2016-05-18 11:46:04 -05:00
Michael Larabel
d719cb2a40 pts-core: On stress-run don't show empty brackets 2016-05-18 11:45:24 -05:00
Michael Larabel
650056633f pts-core: Actively work to make sure no zombies get queued up in stress-run manager 2016-05-18 11:42:08 -05:00
Michael Larabel
326cfa2025 pts-core: Only disable XML formatting when on Openbenchmarking.org or forced to 2016-05-18 11:05:48 -05:00
Michael Larabel
42498edb51 phodevi: Support for reading AMDGPU OverDrive overclock offset 2016-05-15 11:18:56 -05:00
Michael Larabel
6ee7341e31 pts-core: Exit 0 with stress-run 2016-05-15 11:18:37 -05:00
Michael Larabel
92343153de phoronix-test-suite: Update some helper scripts around PHP7 2016-05-09 09:15:41 -05:00
Michael Larabel
09dda94575 Phoronix Test Sutie 6.4 Milestone 2 2016-05-06 07:25:53 -05:00
Michael Larabel
6c594d4266 phodevi: Add ambient.temp sensor for reporting ambient temperature, currently supports temperv14 USB sensors 2016-05-05 09:04:02 -05:00
Michael Larabel
64dbfad097 phodevi: Add ambient.temp sensor for reporting ambient temperature, currently supports temperv14 USB sensors 2016-05-05 09:03:31 -05:00
Michael Larabel
092d4eacad pts-core: Bump PTS_CORE_VERSIOn to 6311 2016-05-05 07:06:08 -05:00
Michael Larabel
2f51c1cea7 pts-core: Don't show starting/ending test messages in log when in stress-run mode, but still show for CLI 2016-05-05 07:05:20 -05:00
Michael Larabel
f4627c0119 pts-core: Allow up to 8GB as memory_limit during stress-run testing 2016-05-05 06:54:55 -05:00
Michael Larabel
a5bce454bc phoromatic: Don't show title and description on result page when merging multiple results 2016-05-03 11:52:07 -05:00
Michael Larabel
2ac16b4feb phoromatic: Make logic on previous commit more clear 2016-05-03 11:02:31 -05:00
Michael Larabel
0462cbbcc8 phoromatic: Don't unconditionally set title to "Phoromatic Results" on page 2016-05-03 10:59:57 -05:00
Michael Larabel
d3a4bc7c5d pts-core: Ensure title gets set on merge if empty on original result file 2016-05-03 10:54:50 -05:00
Michael Larabel
87b6be4094 pts-core: Set description on result merge if original pts_result_file description is null 2016-05-03 10:46:05 -05:00
Michael Larabel
964155f6f6 phoromatic: Ensure description is set on the Phoromatic Server result page 2016-05-03 10:21:12 -05:00
Michael Larabel
389be3a5af pts-core: More tweaking of the points_of_possible_interest() algo 2016-05-01 07:41:33 -05:00
Michael Larabel
3a513f7741 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-05-01 07:41:24 -05:00
Michael Larabel
4762cba5b8 pts-core: Statically set dynamic_run_count_on_length_or_less to 60 2016-05-01 07:40:26 -05:00
Michael Larabel
58f06fec29 phoromatic: Add PTS_NO_REBOOT_ON_NETWORK_FAILURE environment variable for clients where if network failure occurs, Phoromatic clients will not reboot 2016-04-30 19:13:13 -05:00
Fatima Sheremetyeva
d8ec55f206 phoromatic: Make CSS mobile improvements to exported results viewer 2016-04-28 15:44:47 -05:00
Michael Larabel
1c21aecdcb phoromatic: Ensure when removing results and suites everything is properly deleted 2016-04-28 15:32:16 -05:00
Michael Larabel
4db83fd42b pts-core: Print more helpful environment variable messages when using stress-run 2016-04-28 15:17:49 -05:00
Michael Larabel
a177e0865c phoromatic: Cleanup for suite deletions 2016-04-28 14:49:52 -05:00
Michael Larabel
c20fd451a8 Typo of previous commit 2016-04-28 14:48:06 -05:00
Michael Larabel
15949b11d8 phoromatic: Add basic support for deleting "local suites" from Phoromatic web UI 2016-04-28 14:47:22 -05:00
Michael Larabel
3048d6753a phoromatic: Do hard deletes when deleting results from admin area or results page 2016-04-28 14:43:36 -05:00
Michael Larabel
7fc086e792 pts-core: Add "redis-server" as a potential external dependency for providing Redis 2016-04-28 11:12:59 -05:00
Michael Larabel
3046b4d707 pts-core: Fix https://github.com/phoronix-test-suite/phoronix-test-suite/issues/117 2016-04-28 10:59:51 -05:00
Michael Larabel
4d388174a5 phoromatic: Report build/runtime errors to users when notifying of email regressions 2016-04-28 10:05:33 -05:00
Michael Larabel
bda8ebc88d phoromatic: Only export a month's worth of errors 2016-04-28 09:09:52 -05:00
Michael Larabel
ae90e14b49 phoromatic: Increase memory limit when generating result export dump 2016-04-28 09:06:41 -05:00
Michael Larabel
55f5eefb3f phoromatic: Tweak 2016-04-28 09:03:48 -05:00
Michael Larabel
3ddc3f1f53 phoromatic: Allow exporting system test run/build errors to the exported public results viewer 2016-04-28 08:58:54 -05:00
Michael Larabel
080a3574e9 pts-core: Adaptively increase regression threshold level in points_of_possible_interest() when too many results are being flagged 2016-04-28 08:28:16 -05:00
Michael Larabel
50fd4f6c3b pts_Graph: Clean up system table for Phoromatic / multi-way system comparisons 2016-04-28 08:05:16 -05:00
Michael Larabel
676373d32a phoromatic: Add arguments description on regression notification emails 2016-04-28 07:49:10 -05:00
Michael Larabel
e68f0c1ad0 phoromatic: In the export result viewer allow passing regression_threshold environment variable to override threshold value 2016-04-28 07:47:06 -05:00
Michael Larabel
d4bbd9569f phoromatic: Fix selecting the same test itself on the "build suite" page 2016-04-26 11:49:17 -05:00
Michael Larabel
db6856ef47 pts-core: Remove infinite string in summary report of stress-run 2016-04-26 11:43:51 -05:00
Michael Larabel
7fa2427eb7 pts-core: Don't show lines of empty args in stress-run 2016-04-26 11:35:47 -05:00
Michael Larabel
2d889bca8b pts-core: Fix typo from previous commit of getting arguments description 2016-04-26 11:29:37 -05:00
Michael Larabel
6f8d84dbc3 pts-core: Fix warning on stress_print_and_log() when not in Phoromatic mode 2016-04-26 11:28:44 -05:00
Michael Larabel
045be30ab5 pts-core: Fix TOTAL_LOOP_TIME set string being divided incorrectly 2016-04-26 11:27:30 -05:00
Michael Larabel
153f7fed30 pts-core: Reformat stress-run log messages 2016-04-26 11:24:28 -05:00
Michael Larabel
5d71f521a1 pts-core: Allow XML formatting from the Phoromatic Server web interface 2016-04-25 14:09:16 -05:00
Michael Larabel
2a74fb3cdc Phoronix Test Suite 6.4 Milestone 1 2016-04-25 06:45:25 -05:00
Michael Larabel
18498c11ea phoromatic: Don't reset fields when building suite and adding additional tests 2016-04-19 10:38:25 -05:00
Michael Larabel
ca12daceac pts-core: Drop USE_HOME_DIR 2016-04-19 10:32:49 -05:00
Michael Larabel
a2e8b3ffb4 pts-core: Fix for previous commit 2016-04-19 10:32:03 -05:00
Michael Larabel
6a4489701c phoromatic: Reduce width on local suite showing 2016-04-19 10:29:41 -05:00
Michael Larabel
c26817bfbd phoromatic: Font weight 800 2016-04-18 19:49:03 -05:00
Michael Larabel
402bd85cc9 phoromatic: Polish up group listing 2016-04-18 19:48:18 -05:00
Michael Larabel
c4da765b71 phoromatic: Fix account ID handling in previous commit 2016-04-18 19:47:27 -05:00
Michael Larabel
0c0d9ad583 phoromatic: Show systems in groups on benchmark ticketing page 2016-04-18 19:46:06 -05:00
Michael Larabel
29afd4c7fb phoromatic: Only run tests once each time called upon in stress-run mode 2016-04-18 19:31:28 -05:00
Michael Larabel
415e2e4038 Merge pull request #116 from gogoxiaoxiao/phoromatic
phoromatic: Fix post run context script
2016-04-18 07:07:49 -04:00
Haishuang Yan
f466eb0775 phoromatic: Fix post run context script 2016-04-18 15:43:25 +08:00
Michael Larabel
9afcd28ee6 phoromatic: Clear benchmark ticket ID after stress run 2016-04-15 15:14:19 -05:00
Michael Larabel
f81c3fcc57 phoromatic: Link directly to logs from links just added for benchmark tickets 2016-04-15 14:48:22 -05:00
Michael Larabel
157fc269a3 phoromatic: Update few strings 2016-04-15 14:44:39 -05:00
Michael Larabel
4f5390a40d phoromatic: Add links to schedules/tickets from dashboard and system pages for active schedule/ticket on that system at the moment 2016-04-15 14:32:59 -05:00
Michael Larabel
7899b11cb1 pts-core: Supply benchmark ticket IDs (when available) in the phoromatic update_system_status communications 2016-04-15 14:17:45 -05:00
Michael Larabel
669990ddd1 phoromatic: Say "Stress Testing - XXX" as Phoromatic status messages when in stress-run mode 2016-04-15 14:06:46 -05:00
Michael Larabel
e4f0c5f788 pts-core: Append date to phoronix-test-suite-stress-XXX.log when running stress-run 2016-04-15 13:59:30 -05:00
Michael Larabel
6820316a92 phoromatic: A few more tweaks to the export viewer 2016-04-14 19:37:44 -05:00
Michael Larabel
20f6e77a72 phoromatic: Add first result time to export viewer 2016-04-14 19:34:36 -05:00
Michael Larabel
2cee8b9ed7 phoromatic: Add basic email notification support to the Phoromatic export results viewer 2016-04-13 18:24:05 -05:00
Michael Larabel
ba4f9cc7be phoromatic
: Add last_result_time to JSON of export dumps of Phoromatic data
2016-04-13 10:50:06 -05:00
Michael Larabel
4d9515ea7c pts-core: Bump CORE version to 6301 2016-04-12 18:12:33 -05:00
Michael Larabel
9758c83067 pts-core: Additional fallback for locating if running PTS as a user from their home directory 2016-04-12 18:10:35 -05:00
Michael Larabel
31ec58a747 pts-core: Drop day of week from logger date prefix 2016-04-12 14:50:26 -05:00
Michael Larabel
2c4a2aa320 phoromatic: Allow "repeat ticket" to work for stress runs on benchmark tickets 2016-04-12 14:44:36 -05:00
Michael Larabel
e4c69e609b pts-core: Stress run log add a line break at first 2016-04-12 14:32:29 -05:00
Michael Larabel
e007f901f8 phoromatic: Provide some basic highlighting in stress-log fil 2016-04-12 14:31:59 -05:00
Michael Larabel
0943b37e69 pts-core: More phoromatic stress-run client side work 2016-04-12 14:21:49 -05:00
Michael Larabel
d65daf9f8f pts-core: Phoromatic stress-run fixes 2016-04-12 14:13:52 -05:00
Michael Larabel
fd7c47bb91 pts-core: Fix for previous commit 2016-04-12 14:08:23 -05:00
Michael Larabel
4470c5fec8 phoromatic: Initial client-side implementation of new stress-run support 2016-04-12 14:07:14 -05:00
Michael Larabel
081e03ddc0 phoromatic: Initial server-side implementation of new stress-run support via Phoromatic Server when going to "Run A Benchmark" and opting for stress mode 2016-04-12 13:18:51 -05:00
Michael Larabel
c4b5638538 pts-core: Add test start/end to phoronix-test-suite-stress.log 2016-04-12 11:26:38 -05:00
Michael Larabel
c2825d0346 pts-core: Add default logging support while running stress-run using phoronix-test-suite-stress.log filename 2016-04-12 11:17:42 -05:00
Michael Larabel
130da0b0b0 pts-core: Add hostname to summary reports on stress-run 2016-04-12 08:25:56 -05:00
Michael Larabel
7fcd9e553a pts-core: Fix for system-sensors not printing some supported sensors 2016-04-11 13:54:05 -05:00
Michael Larabel
8ecf60f515 pts-core: Switch to timezone abbreviation for previous commit 2016-04-11 08:51:53 -05:00
Michael Larabel
3b48647c21 pts-core: Add timezone on stress-run 2016-04-11 08:49:46 -05:00
Michael Larabel
09ed6afa51 pts-core: capitalize time 2016-04-11 08:49:25 -05:00
Michael Larabel
3ae1b271ed pts-core: Stress-run stuff 2016-04-11 08:40:49 -05:00
Michael Larabel
5fdaf18860 pts-core: Add system info to summary report on stress log 2016-04-11 08:36:17 -05:00
Michael Larabel
95982a1c3c Update documentation in respective sources based upon changes made in 65d9d3deb7 2016-04-11 06:38:00 -05:00
Michael Larabel
3602260228 pts-core: Update headers in stress-run 2016-04-10 11:22:06 -05:00
Michael Larabel
753edc4e1c pts-core: Few more tweaks to stress-run text 2016-04-10 11:11:03 -05:00
Michael Larabel
b6ba411800 pts-core: Work on timer 2016-04-10 10:42:59 -05:00
Michael Larabel
084914dfdf pts-core: enough work during stress-run is going on for master thread that there's no reason to sleep anymore 2016-04-10 10:34:01 -05:00
Michael Larabel
4972815427 pts-core: Don't print reports on child threads in stress-run 2016-04-10 10:32:40 -05:00
Michael Larabel
e6671137cd pts-core: Add basic signo handling work with stress-run 2016-04-10 10:29:28 -05:00
Michael Larabel
16164afac9 pts-core: More stress-run toying 2016-04-10 10:22:10 -05:00
Michael Larabel
918ac8834a pts-core: Clean up stress_run_manager code 2016-04-10 10:11:43 -05:00
Michael Larabel
03b83fb293 pts-core: Report number of tests executed and times occurred 2016-04-10 09:50:56 -05:00
Michael Larabel
2e943c8a1d pts-core: FIx 2016-04-10 09:40:39 -05:00
Michael Larabel
2ca8dcc896 pts-core: More stress-run fun 2016-04-10 09:39:56 -05:00
Michael Larabel
84f73d952b pts-core: Typo fix :) 2016-04-10 09:33:05 -05:00
Michael Larabel
111bab9c27 pts-core: Use pts_math::set_precision() rather than round(x, 2); 2016-04-10 09:32:32 -05:00
Michael Larabel
547738f354 pts-core: Adjust display_table_text extra width 2016-04-10 09:29:29 -05:00
Michael Larabel
f95218a616 pts-core: More text table work in stress-run 2016-04-10 09:23:38 -05:00
Michael Larabel
1c7849239c pts-core: Better format text in stress-run 2016-04-10 09:09:30 -05:00
Michael Larabel
1f09021a4a pts-core: Split the stress-run code in pts_test_run_manager into pts_stress_run_manager 2016-04-10 08:59:14 -05:00
Michael Larabel
caa4594972 pts-core: Start working on BASH_FOR_WINDOWS 2016-04-10 07:31:16 -05:00
Michael Larabel
b6dd727ea3 pts-core: Add sensor monitoring overview reporting to stress-run 2016-04-09 18:37:21 -05:00
Michael Larabel
9876d4b554 pts-core: Remove unneeded line 2016-04-09 15:03:19 -05:00
Michael Larabel
f6b1ea4990 pts-core: Typo fix :) 2016-04-09 15:02:48 -05:00
Michael Larabel
3a29cf1d63 pts-core: More efficient system monitoring on stress-run 2016-04-09 15:02:05 -05:00
Michael Larabel
f61e10589e pts-core: Add "Current" to clear up system sensors in stress-run 2016-04-09 14:04:44 -05:00
Michael Larabel
14c4658425 pts-core: Initial stab at sensor monitoring while stress-run 2016-04-09 14:01:39 -05:00
Michael Larabel
82da68b23e pts-core: align PID size 2016-04-08 16:08:44 -05:00
Michael Larabel
404b804616 pts-core: More stress-run text formatting work 2016-04-08 16:06:08 -05:00
Michael Larabel
9c6b50367d pts-core: Fix typo of previous commit 2016-04-08 15:48:43 -05:00
Michael Larabel
2234680bf6 pts-core: Add ELAPSED TIME and TIME REMAINING outputs on stress-run 2016-04-08 15:48:02 -05:00
Michael Larabel
5029fc62e7 pts-core: Don't print "Started Run X" verbage in short display mode 2016-04-08 15:44:11 -05:00
Michael Larabel
2cf8eed156 pts-core: Add alternate CSV information output hidden behind PTS_CSV_ALTERNATE_DESCRIPTION=1 environment variable 2016-04-08 12:54:33 -05:00
Michael Larabel
ab84278515 pts-core: Stress-run infinite fix 2016-04-08 11:48:16 -05:00
Michael Larabel
c318e1c07f pts-core: Extra line break here on stress-run 2016-04-08 11:44:28 -05:00
Michael Larabel
9aadf99d39 pts-core: This should fix up the stress-run behavior regarding testing 2016-04-08 11:38:22 -05:00
Michael Larabel
bc9e566e38 pts-core: Push a halt-testing flag to interrupt tests earlier in stress-run 2016-04-08 10:53:19 -05:00
Michael Larabel
7ec6c6f214 pts-core: Remove earlier debug statements in stress-run 2016-04-06 16:22:46 -05:00
Michael Larabel
d2a33177a7 pts-core: typo fix 2016-04-06 15:22:33 -05:00
Michael Larabel
7918bd4cc4 pts-core: Another temporary debugging tweak 2016-04-06 14:27:30 -05:00
Michael Larabel
a89ce4375b pts-core: More stress-run debug temporary 2016-04-06 14:26:00 -05:00
Michael Larabel
553f5d16cf pts-core: temporary debugging info on stress-run path 2016-04-06 12:02:33 -05:00
Michael Larabel
420c570b09 pts-core: Add extra stress-run message 2016-04-06 08:03:54 -05:00
Michael Larabel
d99e57fb68 pts-core: Add some debug comments to stress-run 2016-04-06 07:53:02 -05:00
Michael Larabel
9aec757040 Rebuild documentation for Hasvik 2016-04-04 16:28:04 -05:00
Michael Larabel
7cbf772db5 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-04-04 16:27:10 -05:00
Michael Larabel
70e6bc7825 pts-core: Mark as 6.4.0m0 Hasvik for new development series now that it's strayed enough from Hasvik 2016-04-04 16:26:39 -05:00
phoronix
63d1401f0e pts-core: More stress-run work 2016-04-04 17:05:33 -04:00
phoronix
3908736fd9 pts-core: Fixes for stress-run 2016-04-04 16:17:27 -04:00
Michael Larabel
e7a5b8b6ec pts-core: More stress-run testing 2016-04-04 10:29:07 -05:00
Michael Larabel
4628a69c1d pts-core: Sleep 2 on stress-run 2016-04-04 10:13:51 -05:00
Michael Larabel
e45b81b8a2 pts-core: Stress-run debug 2016-04-04 10:01:55 -05:00
Michael Larabel
ef7be984ac pts-core: More stress-run work 2016-04-04 09:57:14 -05:00
Michael Larabel
290f28394c pts-core: Add basic report counter to stress-run for helping debug/analyze situation 2016-04-04 09:38:47 -05:00
Michael Larabel
d0cbc9c46a pts-core: Add Midori to supported browser list 2016-03-25 13:22:17 -05:00
Michael Larabel
4db4ce29b3 pts-core: Arch packaging tweak 2016-03-25 11:23:50 -05:00
Michael Larabel
daee43f7a1 pts_Graph: Tweak the color pallet 2016-03-22 13:02:10 -05:00
Michael Larabel
c82e6509d6 Phoronix Test Suite 6.2.2 commit from last week 2016-03-14 12:56:47 -05:00
Michael Larabel
d21d59fdee pts-core: Few tweaks for Alpine Linux 2016-03-07 08:40:43 -06:00
Michael Larabel
14d9bc8d81 pts-core: Alpine Linux (APK) external dependency support 2016-03-06 20:06:53 -06:00
Michael Larabel
c3d8bc31e9 phoronix-test-suite: Add Zenwalk/Slackware package helper to launcher 2016-03-06 09:22:38 -06:00
Michael Larabel
61d0555fe5 pts-core: Add more launcher helpers 2016-03-05 20:17:25 -06:00
Fatima Sheremetyeva
106d565ffd void-packages: Few more tweaks 2016-03-05 19:21:58 +00:00
Fatima Sheremetyeva
716a2635eb id-packages: Few more Void Linux packaging tweaks 2016-03-05 19:14:03 +00:00
Fatima Sheremetyeva
5d2f5ac6eb pts-core: Fix typo in code comment :) 2016-03-05 19:11:06 +00:00
Fatima Sheremetyeva
c2193e9844 pts-core: Add Void Linux external dependency handling support 2016-03-05 19:10:04 +00:00
Michael Larabel
c501adc0f9 pts-core: For the new result viewer, add Epiphany to the web browser list 2016-03-04 19:10:58 -06:00
Fatima Sheremetyeva
7954f94868 pts-core: Add OpenSUSE dependency handlery 2016-03-04 19:47:35 -05:00
Michael Larabel
3fad54cefe pts-core: Fix for stress-run 2016-03-03 11:07:13 -06:00
Michael Larabel
54e667ed2b Merge pull request #112 from atom-symbol/master
Remove superfluous quote from phoromatic.css
2016-02-28 07:49:53 -06:00
Jan Ziak (⚛)
ce1acaa6fb Remove superfluous quote from phoromatic.css 2016-02-28 14:43:52 +01:00
Michael Larabel
2a730dc94a phoromatic: Don't use a proxy (if available) when trying to connect from Phoromatic client to server 2016-02-25 10:56:07 -06:00
Michael Larabel
c1f92941cb Phoronix Test Suite 6.2.1 2016-02-22 20:13:19 -06:00
Michael Larabel
a2b0ff2c76 pts_Graph: Add some more product series to the color lookup table 2016-02-22 15:10:21 -06:00
Michael Larabel
70834b9d0a perf_per_dollar: Another fix for module 2016-02-22 13:54:44 -06:00
Michael Larabel
4d1413e5d5 perf_per_dollar: Fix for uninitialized test_result object 2016-02-22 13:48:47 -06:00
Michael Larabel
678b3d95b9 phodevi: Add OpenCL version reporting to system software string 2016-02-21 18:23:17 -06:00
Michael Larabel
33cab40573 deploy: Use DRI3 by default in farm system scripts 2016-02-21 17:06:28 -06:00
Michael Larabel
0cf46fd198 pts-core: Update copyright on the local results viewer 2016-02-21 12:56:43 -06:00
Michael Larabel
cea88fe829 phodevi: Extra Vulkan information reportingphodevi: Extra Vulkan information reporting 2016-02-17 08:02:23 -06:00
Michael Larabel
2b3246f88b pts-core: Bump version for release 2016-02-15 19:07:56 -06:00
Michael Larabel
fe7563d3ad module: Some version bumps, prepping for release 2016-02-15 19:06:34 -06:00
Michael Larabel
cbbcb0cb9a ChangeLog: Prep 2016-02-15 19:05:38 -06:00
Michael Larabel
8bd52e82f0 documentation: rebuild 2016-02-15 19:04:32 -06:00
Michael Larabel
480cf94d0c phodevi: Missing copyright updates 2016-02-15 19:03:06 -06:00
Michael Larabel
5748a84a88 Begin prepping for Gamvik final 2016-02-15 12:20:33 -06:00
Michael Larabel
7e05c67dde pts_Graph: Support for branded colors on more graphs 2016-02-15 12:20:09 -06:00
Michael Larabel
4a87fb301e phodevi: plumbing v 2016-02-15 12:19:02 -06:00
Michael Larabel
472fdeea03 Merge pull request #109 from numerant/sensors
Monitoring and MATISK fixes
2016-02-15 08:30:08 -06:00
Jakub Maleszewski
d7186a11ac pts-core: monitoring results are now properly distinguished between both normal and MATISK test runs 2016-02-13 18:17:23 +01:00
Jakub Maleszewski
9896d0a1d5 pts-core: fix missing "self::" in MATISK 2016-02-13 15:10:09 +01:00
Jakub Maleszewski
1887b4431d pts-core: update environmental variables in system_monitor 2016-02-13 14:51:01 +01:00
Michael Larabel
fa006e04f6 pts_Graph: Compact to scalar of line graphs at 8 rather than 10 2016-02-12 14:02:03 -06:00
Michael Larabel
dc18aa5b0c system_monitor: Don't append test X string to the description 2016-02-12 12:51:32 -06:00
Michael Larabel
470f2dbd80 pts_Graphs: Some tweaks 2016-02-10 09:31:31 -06:00
Michael Larabel
b026cb1ada pts_Graph: Add make_identifiers_web_links hook to horizontal bar graph 2016-02-09 16:05:41 -06:00
Michael Larabel
ab1adb6276 pts-core: Fix pts_test_profile_parser() failing to open test profile ZIP files 2016-02-09 10:21:08 -06:00
Michael Larabel
2755eff0ac Phoronix Test Suite 6.2 Milestone 5 2016-02-05 09:26:44 -06:00
Michael Larabel
a29af9da51 ChangeLog: Drop pre-3.0 changes from the shipped ChangeLog 2016-02-05 09:07:40 -06:00
Michael Larabel
3673eaf57d system_monitor: Typo from copy paste of previous commit :) 2016-02-03 15:14:51 -06:00
Michael Larabel
2b698d630c system_monitor: Handling for posix_kill absence in code 2016-02-03 15:03:29 -06:00
Michael Larabel
47417cc126 phodevi: Sensor clean-up and fixes (Jakub Maleszewski) 2016-02-03 14:46:08 -06:00
Michael Larabel
8fac5c73b0 Merge pull request #94 from numerant/sensors
Sensor monitoring - cleanup and bugfixes
2016-02-03 14:45:07 -06:00
Michael Larabel
ee99fb31b3 pts-core: Add golang as possible external dependency 2016-02-02 15:34:34 -06:00
Michael Larabel
08ae7da2a2 changelog: Restore MATISK module 2016-02-02 06:53:08 -06:00
Michael Larabel
d565f79c05 Merge pull request #108 from numerant/matisk
MATISK module restored and updated for PTS 6
2016-02-02 06:52:18 -06:00
Jakub Maleszewski
7085e4b2cf pts-core: fixed MATISK's incompatibility with PTS 6 2016-02-02 13:39:34 +01:00
Jakub Maleszewski
c41e7b3460 pts-core: re-added MATISK module (version from 25afbd5 commit) 2016-02-02 13:35:04 +01:00
Jakub Maleszewski
7038cad520 pts-core: introduced support for NVMe and MMC in HDD sensors; replaced problematic preg_grep with globbing 2016-02-02 11:26:35 +01:00
Michael Larabel
ea9df9424f phodevi: Mention Jakub Maleszewski for the recent Phodevi sensor work 2016-02-01 16:17:06 -06:00
Michael Larabel
b580e615cf pts-core: Use http://openbenchmarking.org/PTS for connectivity check now that OB is on a better server 2016-02-01 09:43:22 -06:00
Michael Larabel
8910c2fb9a phoromatic: Also add whether power off signaling is allowed next to WoL details on maintenance page 2016-01-30 20:07:07 -06:00
Michael Larabel
070b2ed512 phoromatic: Add Wake On LAN details to the Phoromatic maintenace table page 2016-01-30 20:05:57 -06:00
Michael Larabel
a280b288ff pts_Graph: Fix warning from earlier commit 2016-01-29 15:09:55 -06:00
Michael Larabel
e792c7bef2 pts-graph: Few improvements driven by new OpenBenchmarking.org code paths 2016-01-28 10:47:08 -06:00
Michael Larabel
2ca57c5d8c pts-core: Some README.md tweaks based upon Pull request #105 2016-01-27 06:36:36 -06:00
Michael Larabel
fad2cd4e5d Merge pull request #104 from atom-symbol/master
Run graphics detection only if required
2016-01-27 06:32:44 -06:00
Jan Ziak (⚛)
0bc981e517 Run graphics detection only if required
This improves performance of "./phoronix-test-suite help" for example.
2016-01-27 11:01:24 +01:00
Michael Larabel
852fb9378b Finish of Phoronix Test Suite 6.2 M4 commit 2016-01-26 17:49:44 -06:00
Michael Larabel
db6037dd7b Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-01-26 17:48:37 -06:00
Michael Larabel
ac289cc8ff Phoronix Test Suite 6.2 Milestone 4 2016-01-26 17:48:02 -06:00
Michael Larabel
c61b7a09c0 pts_Graph: Fix for graphs sometime not rendering correctly on multi-way comparisons 2016-01-26 17:46:26 -06:00
Fatima Sheremetyeva
6c2f939266 pts-core: Fix regression of multi-way comparison graphs caused by 120638b8ff 2016-01-26 18:30:17 -05:00
Michael Larabel
64b0483248 pts-core: More tweaks pertaining to the PDF rendering and pretty XML printing 2016-01-24 20:05:11 -06:00
Michael Larabel
8765e26c5e pts-core: Rework PDF generation of test results 2016-01-24 18:19:10 -06:00
Michael Larabel
5f093b7919 pts-core: More PDF work 2016-01-24 17:18:55 -06:00
Michael Larabel
4a51138f02 pts-core: Introduce pts_result_file_output::result_file_to_pdf() 2016-01-24 17:10:20 -06:00
Michael Larabel
b2e6aa8bac pts-core: in the OB result schema allow a title of 1 char 2016-01-23 17:26:41 -06:00
Michael Larabel
077f9dd659 pts_Graph: Switch PNG for SVG logo on table 2016-01-23 15:47:00 -06:00
Michael Larabel
17ccadb307 pts-core: PTS_NO_COMPILER_MASK 2016-01-21 12:40:01 -06:00
Michael Larabel
79f0b2b535 phoromatic: Add option to result viewer for exposing possible points of interest\ 2016-01-20 19:30:22 -06:00
Michael Larabel
658d624f32 pts-core: Safeguards against API change from previous commit if in future the new options are enabled along these other code-paths 2016-01-20 15:45:27 -06:00
Michael Larabel
34c86410c2 pts-core: Add function for optionally removing unchanged results
pts-core: Add function for optionally removing noisy results
2016-01-20 15:32:45 -06:00
Michael Larabel
bc81c03158 phoromatic: UI tweaks to the export public results viewer 2016-01-20 11:00:41 -06:00
Michael Larabel
d3d8942cb6 pts-core: Allow reversing a sorted a buffer of results 2016-01-19 08:10:02 -06:00
Michael Larabel
bb5ac80ee7 pts-core: Other part of fix 2016-01-18 15:53:30 -06:00
Michael Larabel
15ab3d3434 perf_per_dollar: Fix for commit 2016-01-18 15:52:49 -06:00
Michael Larabel
a2ce8583de pts-core: Cleanups 2016-01-18 14:19:35 -06:00
Jakub Maleszewski
33a15ca53f pts-core: replace array_push() with $array[] in system_monitor 2016-01-17 14:12:17 +01:00
Jakub Maleszewski
22ea9587bb Merge branch 'sensors' 2016-01-17 14:09:32 +01:00
Jakub Maleszewski
06e7f695be Merge remote-tracking branch 'upstream/master' 2016-01-17 13:51:57 +01:00
Jakub Maleszewski
432def01d2 pts-core: per-test-try monitoring fixes 2016-01-17 13:49:34 +01:00
Jakub Maleszewski
9d677ef936 pts-core: make monitoring results distinguishable between MATISK runs 2016-01-17 11:33:17 +01:00
Michael Larabel
e428d3781b phoromatic: Report the web server 2016-01-13 10:45:51 -06:00
Michael Larabel
25fcf9f3be phoromatic: Add secret PHOROMATIC_WANTS_APACHE option 2016-01-12 18:33:04 -06:00
Michael Larabel
73fb1b3ace pts_Graph: Add bsd color for bar graphs 2016-01-12 16:40:50 -06:00
Michael Larabel
33be563142 pts-core: Add OpenBSD helper for pkg_add 2016-01-12 11:27:45 -06:00
Michael Larabel
69b1b5dc1a pts-core: Another skip for ctype_alnum 2016-01-12 09:56:52 -06:00
Michael Larabel
960245ac7b pts-core: Typo from previous commit 2016-01-12 09:56:19 -06:00
Michael Larabel
f2495baadb pts-core: Fix for ctype_alnum not showing up on dfly bsd 2016-01-12 09:54:23 -06:00
Michael Larabel
7dbde7e982 pts_Graph: Fix from earlier commit 2016-01-11 14:03:58 -06:00
Michael Larabel
849fa769e4 pts_Graph: Comment out the incomplete noisy result detection code from previous commit 2016-01-11 12:02:49 -06:00
Michael Larabel
fa34e629de pts_Graph: Add FirePro/Quadro color coding to horizontal bar too 2016-01-11 12:00:17 -06:00
Michael Larabel
99ed71c045 phoromatic: Add view_results_since support to the export results viewer 2016-01-09 17:50:01 -06:00
Michael Larabel
4fc9b5046f pts-core: Similar fix for virtual test suites 2016-01-09 07:33:05 -06:00
Michael Larabel
2276ea9611 pts-core: Fix for some test profiles not showing up in list-tests sub-command 2016-01-09 07:31:10 -06:00
Michael Larabel
7718da8d06 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-01-07 20:18:42 -06:00
Michael Larabel
b5c58544d1 bump to 6131 2016-01-07 20:18:31 -06:00
Fatima Sheremetyeva
92c5a89757 Revert "phodevi: Change array pushing"
This reverts commit 6c98586662.
2016-01-07 20:54:18 -05:00
Michael Larabel
a5639a25b1 phoromatic: When in limited network mode, reset from ping at different times 2016-01-07 18:19:06 -06:00
Michael Larabel
798a3e6fba phoromatic: Add an extra sleep on start-up when doing limited network communication 2016-01-07 18:15:01 -06:00
Michael Larabel
e2fac00203 phoromatic: Expand the random time element slightly 2016-01-07 18:11:53 -06:00
Michael Larabel
d6d64bdd13 Phoronix Test Suite 6.2 Milestone 3 2016-01-07 18:08:31 -06:00
Michael Larabel
e65f6e913f phoromatic: Add LimitNetworkCommunication option 2016-01-07 18:06:40 -06:00
Michael Larabel
0e62d0c4c1 pts-core: Add midori to browser list 2016-01-06 18:57:42 -06:00
Michael Larabel
367b8e680f pts-core: Finish most of removal of array_push() 2016-01-06 17:54:16 -06:00
Michael Larabel
6c98586662 phodevi: Change array pushing 2016-01-06 17:33:40 -06:00
Jakub Maleszewski
f17a504909 pts-core: children processes are now killed after processing results, cgroup name insertion fixed
pts_arrays::unique_push
2016-01-06 22:25:45 +01:00
Michael Larabel
835d06be2d pts-core: Add httpd as a possible external dependency 2016-01-06 09:41:58 -06:00
Michael Larabel
c1262c4476 pts-core: Optimize array usage along hot paths 2016-01-06 08:36:48 -06:00
Michael Larabel
81b2145f2a pts-core: Drop array_push usage in client objects 2016-01-06 08:24:15 -06:00
Michael Larabel
a97b5fbff8 pts-core: More array conversion 2016-01-06 08:02:50 -06:00
Michael Larabel
414098f601 pts-coreL Fix for previous commit 2016-01-06 07:55:50 -06:00
Michael Larabel
11b8283843 pts-core: More array push conversion 2016-01-06 07:54:19 -06:00
Michael Larabel
7d81b9224c pts-core: Optimize some more arrays 2016-01-06 07:28:27 -06:00
Michael Larabel
673e37a22b pts_Graph: Drop array_push usage 2016-01-06 07:21:52 -06:00
Fatima Sheremetyeva
6f8f6150a1 pts-core: Add pts-footnote support 2016-01-05 17:53:08 -05:00
Michael Larabel
1698818efb Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-01-05 16:10:08 -06:00
Michael Larabel
297bc4206d phoromatic: Fix in listing tests on schedules page when dealing with cache mismatch 2016-01-05 16:09:45 -06:00
Michael Larabel
79bee6a042 pts-core: Some copyright updates forgot to do from previous commits 2016-01-05 13:20:58 -06:00
Michael Larabel
6b6c70b649 Merge pull request #102 from juju-solutions/charms.benchmark
Charms.benchmark
2016-01-05 13:19:59 -06:00
Adam Israel
142e2f92c1 Deprecate chlp in favor of charms.benchmark 2016-01-05 11:06:27 -05:00
Michael Larabel
120638b8ff pts_Graph: rendering fix on collision of result identifiers 2016-01-04 10:55:16 -06:00
Michael Larabel
23c7f8ad8c pts-core: Add a few more safety checks 2016-01-04 10:46:48 -06:00
Adam Israel
eb6d354c94 Merge remote-tracking branch 'phoronix-test-suite/master' 2016-01-04 10:28:04 -05:00
Michael Larabel
94ace3c885 pts-core: Add system to default list of repositories 2016-01-04 07:04:28 -06:00
Michael Larabel
4a544ffb56 Phoronix Test Suite 6.2 M2 appears all good 2016-01-02 06:43:11 -06:00
Michael Larabel
54898f7377 Phoronix Test Suite 6.2 Milestone 2 2016-01-01 10:44:28 -06:00
Michael Larabel
0f51b6b3a2 pts-core: Add MinimalTestTime user configuration option 2016-01-01 08:10:19 -06:00
Michael Larabel
faf1b27b2c Merge pull request #101 from ptzafrir/timeout
set minimal test timeout by configuration variable
2016-01-01 08:09:31 -06:00
Tzafrir Poupko
610fb640ad move minimalTestTime to options/TestResultValidation 2016-01-01 16:06:14 +02:00
Tzafrir Poupko
e31385f604 set minimal test time by configuration variable 2016-01-01 15:42:45 +02:00
Michael Larabel
a3f2256336 pts-core: Add FullOutput to pts_config 2015-12-29 12:20:11 -06:00
Michael Larabel
e4b7e7f2d9 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-12-29 12:18:53 -06:00
Michael Larabel
bf78f2db13 pts-core: Add FullOutput to the default user config 2015-12-29 12:18:33 -06:00
Michael Larabel
ebb76e4752 Merge pull request #99 from ptzafrir/output
Add configuration option to print all test steps
2015-12-29 12:17:51 -06:00
Tzafrir
5fe117b776 Add configuration option to print all test steps
This address issue #95 - FullOutput configuration option is added
If set the output of pre/test/interim/post is dumped to stdout
2015-12-28 15:44:19 +02:00
Michael Larabel
1ec700cee9 phoromatic: Export viewer tweaks 2015-12-28 06:25:26 -06:00
Michael Larabel
2bab1bda45 phodevi: Fixes for the landing of PTS_NPROC 2015-12-28 06:23:41 -06:00
Michael Larabel
036b735a69 Merge pull request #97 from ptzafrir/nproc
Add support for nproc environment variable
2015-12-28 06:21:44 -06:00
Tzafrir
ab2c13b82e use std_caching 2015-12-27 16:51:59 +02:00
Tzafrir
fa148e7553 fix compile error 2015-12-27 16:24:04 +02:00
Tzafrir
8ec8eab7cb use num cpu cores in phodevi.php 2015-12-27 16:21:23 +02:00
Michael Larabel
03a122e87a Merge pull request #98 from ptzafrir/pre-post
Check pre/post scripts exit status
2015-12-27 06:17:31 -06:00
Tzafrir
5102ccd9a7 Check pre/post scripts exit status
And fail the test if the script failed
2015-12-27 13:45:36 +02:00
Tzafrir
4f14e3314c Add support for nproc environment variable
This allows to change the cpu count for multiple tests
to test performance under variable number of cpu cores used
2015-12-27 12:47:31 +02:00
Michael Larabel
3806120ef7 phoromatic: Adjust export dump rule 2015-12-20 18:39:00 -06:00
Michael Larabel
4097daeeb7 phodevi: Software string detection improvements 2015-12-16 15:04:43 -06:00
Michael Larabel
9aabbab6e5 pts-core: Use bash when available in the pts_tests call script 2015-12-16 13:27:54 -06:00
Michael Larabel
7cc0abd595 Phoronix Test Suite 6.2 Milestone 1 2015-12-15 11:18:00 -06:00
Michael Larabel
14ad1180a4 pts-core: Don't include the Extends of tests on upload-test-profile 2015-12-14 10:48:46 -06:00
Michael Larabel
5eaa004c70 pts-core: Fix for possible OB login failure 2015-12-14 10:11:06 -06:00
Michael Larabel
6b687e75f8 phodevi: Support sys.power sensor monitoring fallback on BAT1 2015-12-10 07:25:57 -06:00
Michael Larabel
597ef4c764 pts-core: Allow the SupportedPlatforms and SoftwareType to be optional (when using CTP extends) 2015-12-08 12:13:52 -06:00
Michael Larabel
48fa67f007 Time to bump the version for 6.2 Gamvik development 2015-12-08 11:57:12 -06:00
Fatima Sheremetyeva
a8fb00a7d6 pts-core: Allow Cascading Test Profiles / Extends to inherit the results-definition.xml 2015-12-08 12:56:05 -05:00
Fatima Sheremetyeva
b002052840 pts-core: Add basic Arch dependency handler using pkgfile 2015-12-08 11:30:17 -06:00
Michael Larabel
7e61625fa5 pts-core: Basic implementation of SystemDependencies for dynamically resolving system/external dependencies based on file name 2015-12-08 11:18:22 -06:00
Michael Larabel
9a5f42e0c9 pts-core: Add new TestProfile/SystemDependencies field to test profile specification, to be implemented 2015-12-08 10:23:24 -06:00
Fatima Sheremetyeva
a17e271dad pts-core: Add ubuntu dependency handler 2015-12-08 11:07:47 -05:00
Michael Larabel
d71296dd0b pts-core: Begin work on dynamic dependency handler infrastructure 2015-12-03 07:50:44 -06:00
Michael Larabel
8838244dc0 phoromatic: Allow public listing of download cache files when navigating in browser to /download-cache.php 2015-11-29 18:41:43 -06:00
Jakub Maleszewski
0208723886 pts-core: remove var_dump from system_monitor 2015-11-29 21:27:58 +01:00
Jakub Maleszewski
db92ec4195 pts-core: fix off-by-one bug in system_monitor's offset saving 2015-11-29 21:26:12 +01:00
Michael Larabel
14589143da phodevi: Assume Windows is x86_64 when PROCESSOR_ARCHITEW6432 is missing 2015-11-24 05:52:35 -06:00
Jakub Maleszewski
db4f94fdee pts-core: replaced ugly shell_exec grepping with native PHP code in HDD sensors 2015-11-22 22:03:47 +01:00
Jakub Maleszewski
95b3e69384 pts-core: formatting fixes 2015-11-22 21:47:57 +01:00
Michael Larabel
349a2a0d1a documentation rebuild 2015-11-20 09:46:01 -06:00
Michael Larabel
6b644b22ef Phoronix Test Suite 6.0.1 2015-11-20 09:43:51 -06:00
Michael Larabel
0c73c8fee2 phodevi: More fixes for the sensors code 2015-11-19 21:08:58 -06:00
Michael Larabel
d878e36de9 phodevi: Fix cpu_freq bug 2015-11-19 17:01:57 -06:00
Michael Larabel
db94680cb6 Ready Phoronix Test Suite 6.0-Hammerfest 2015-11-16 15:42:50 -06:00
Michael Larabel
7f511d0805 pts_Graph: Fix line tracking graphs 2015-11-16 11:27:34 -06:00
Michael Larabel
c76354b40e pts-core: Some warning fixes 2015-11-16 10:47:56 -06:00
Michael Larabel
700a88f598 pts-core: Some last minute minor fixes 2015-11-16 07:55:46 -06:00
Fatima Sheremetyeva
60697dd0d5 phodevi: Jetson TX1 GPU temperature monitoring support 2015-11-13 15:59:41 +00:00
Michael Larabel
b3c9e690e0 pts_Graph: add two isset() checks to fend possible warnings 2015-11-13 09:44:00 -06:00
Michael Larabel
fdf797476b pts_Graph: Fix multi-way comparison line graphs from color collision 2015-11-13 09:34:02 -06:00
Michael Larabel
01fdd8a353 pts-core: Update some colors on the PDF template 2015-11-13 07:44:31 -06:00
Michael Larabel
29d304474e pts-core: Move common dependencies later in the external dependency handling process 2015-11-13 07:08:17 -06:00
Michael Larabel
9897174f10 pts-core: Stop logging lsusb as on some systems calling the command will hang\ 2015-11-13 06:11:12 -06:00
Michael Larabel
f887a37971 pts-core: Don't load the supported sensors only when needed since most tests just want sys.time 2015-11-12 21:20:34 -06:00
Michael Larabel
fc2dabd639 pts-core: Code formatting fixes for system_monitor 2015-11-12 21:10:32 -06:00
Michael Larabel
c9c2207efc phodevi: Add another safety check 2015-11-12 19:54:03 -06:00
Michael Larabel
50cb6ce77a phodevi: Fixes 2015-11-12 19:44:22 -06:00
Michael Larabel
98c05394d3 Phoronix Test Suite 6.0 Milestone 6 2015-11-12 18:45:29 -06:00
Michael Larabel
e7b31a2f43 pts-core: pts_openbenchmarking::available_tests() don't show deprecated test profiles by default 2015-11-12 18:36:19 -06:00
Michael Larabel
3d204682b5 phodevi: More formatting fixes 2015-11-12 17:07:41 -06:00
Michael Larabel
11ab3743e6 phodevi: Formatting fixes, etc 2015-11-12 17:04:57 -06:00
Michael Larabel
7aeaeca131 phodevi: Support reporting /sys/firmware/devicetree/base/model for part of motherboard/SBC string 2015-11-12 16:30:57 -06:00
Michael Larabel
a31749f1cd phoromatic: Dashboard update 2015-11-12 16:11:53 -06:00
Michael Larabel
82f3231b35 phoromatic: More 2015-11-12 16:07:59 -06:00
Michael Larabel
91b3ece67d phoromatic: More CSS 2015-11-12 16:06:33 -06:00
Michael Larabel
c05d0ce5c2 phoromatic: More CSS tweaks 2015-11-12 16:03:27 -06:00
Michael Larabel
a706dbb72d phoromatic: Update test profiles page 2015-11-12 15:43:28 -06:00
Michael Larabel
5396c9961d Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-11-12 15:20:49 -06:00
Michael Larabel
9139fbaefc phoromatic: More tweaking 2015-11-12 15:20:37 -06:00
Fatima Sheremetyeva
1ffa9c6da7 phoromatic: Add changelog note 2015-11-12 14:39:18 -06:00
Michael Larabel
f8c4acb98a phoromatic: Style the em 2015-11-12 14:22:39 -06:00
Michael Larabel
c80df7572e phoromatic 2015-11-12 14:21:38 -06:00
Michael Larabel
2b505aa3c6 phoromatic: Dashboard take 2 2015-11-12 14:19:56 -06:00
Michael Larabel
9402058de9 phoromatic: Dashboard styling 2015-11-12 14:17:22 -06:00
Michael Larabel
84c3d11373 phoromatic: Color tweak 2015-11-12 14:12:50 -06:00
Michael Larabel
a446543681 phoromatic: fff 2015-11-12 14:10:20 -06:00
Fatima Sheremetyeva
1e77843914 Phoronix 2015-11-12 14:03:58 -06:00
Michael Larabel
e2c5bd1cc8 phoromatic: Replace PNG with SVG for the pts-white-logo 2015-11-12 13:11:22 -06:00
Michael Larabel
f1a0ecba6d pts-core: Fix warning in pts_client::fork when PCNTL is not present 2015-11-12 11:00:18 -06:00
Michael Larabel
f539b25374 pts-core: Bump PTS_CORE_VERSION 2015-11-12 10:49:11 -06:00
Michael Larabel
bf4625ab70 Merge pull request #92 from numerant/master
Sensor monitoring changes
2015-11-11 16:51:38 -06:00
Michael Larabel
e4f156072b pts-core: Fix regression with multiple result scales for single test profile 2015-11-10 16:41:32 -06:00
Michael Larabel
ff972c3729 pts-core: Documentation rebuild 2015-11-07 16:37:29 -06:00
Michael Larabel
8e37ba9957 Merge pull request #83 from rkingsbury/windows-install-doc
Add documentation for Windows installation, troubleshooting, and improve .bat file
2015-11-07 16:35:15 -06:00
Michael Larabel
3f27a44916 Merge pull request #84 from rkingsbury/fix-hophop-typo
Fix typo in Facebook HipHop section of documentation
2015-11-07 16:33:10 -06:00
Michael Larabel
33c942b5a4 pts-core: Add invalid command helper to result-file-to-suite 2015-11-07 07:20:36 -06:00
Michael Larabel
b593bec216 pts-core: Fix a warning for virtual test suite when running pts/installed e.g. in auto or batch mode 2015-11-06 12:42:45 -06:00
Michael Larabel
a905d212d9 pts-core: Add !$restored_from_cache check 2015-11-05 06:57:36 -06:00
Michael Larabel
8a3dfe542c pts-core: Add sleep during open_basedir warning to make it easier to see 2015-11-04 16:53:33 -06:00
Jakub Maleszewski
894b08eb1c pts-core: fix zero values not being included on graphs 2015-11-04 23:24:59 +01:00
Jakub Maleszewski
67210f71a1 Revert "pts-core: first part of phodevi_sensor_monitor changes"
This reverts commit 5fad4a2a82.
2015-11-04 23:06:49 +01:00
Jakub Maleszewski
3ee4d142c3 pts-core: read_sensor now creates temporary sensor object if it isn't passed as parameter 2015-11-04 22:57:42 +01:00
Jakub Maleszewski
5fad4a2a82 pts-core: first part of phodevi_sensor_monitor changes 2015-11-04 22:10:05 +01:00
Michael Larabel
ab295eac25 Phoronix Test Suite 6.0 Milestone 5 2015-11-04 10:43:17 -06:00
Michael Larabel
6b6f0c7977 phoronix-test-suite: Separate the yum and dnf messages 2015-11-04 10:36:44 -06:00
Jakub Maleszewski
52f8e0ab8c Merge remote-tracking branch 'upstream/master' 2015-11-04 14:35:51 +01:00
Michael Larabel
8e585dcbd4 documentation: More cleanup 2015-11-03 18:18:23 -06:00
Michael Larabel
38ae716570 documentation: Update HTML template style 2015-11-03 18:13:10 -06:00
Michael Larabel
c38c9d10b2 pts-core: More work on the new result viewer 2015-11-03 17:38:40 -06:00
Michael Larabel
ab2342035b pts-core: Add OpenGL prefix to string in webui 2015-11-03 17:15:39 -06:00
Michael Larabel
f0d0ee0866 pts-core: Adjust ordering on zypper before apt-get 2015-11-03 13:21:27 -06:00
Michael Larabel
039d70827b pts-core: Rewrite of the local results viewer, now use HTML+JS rather than XSL 2015-11-03 12:58:45 -06:00
Michael Larabel
f118eb4f48 pts-core: Properly handle spaces in shell_exec() export 2015-11-03 10:26:21 -06:00
Michael Larabel
2059360879 pts-core: Fix CSV result output when there are missing results 2015-11-03 08:24:45 -06:00
Michael Larabel
d118bb0b6e phodevi: Support for finding the Xorg.0.log in ~/.local/share/xorg/ with Debian now using that for non-root X Server 2015-11-03 08:03:53 -06:00
Michael Larabel
4b846a6778 pts-core: Fix results getting compacted into single result comparison object when using a local test without version post-fix 2015-11-02 16:12:56 -06:00
Michael Larabel
0d2d37f14b phoromatic: REMOTE_ACCESS define isn't used anywhere 2015-11-01 16:23:29 -06:00
Michael Larabel
259e0f4e9d pts-core: Fix finish-run command functionality 2015-11-01 08:43:47 -06:00
Michael Larabel
2671b36d23 pts-core: Tighten up the "test run ended prematurely" characteristics 2015-11-01 07:17:57 -06:00
Michael Larabel
190aad8ce7 phoromatic: Fix reporting of results total 2015-10-31 09:50:32 -05:00
Michael Larabel
68b5d3776e phoromatic: Tweak 2015-10-31 09:08:21 -05:00
Michael Larabel
37d3696aff pts-core: Tweak the force line graph 2015-10-30 14:05:38 -05:00
Michael Larabel
df4cc7fa65 phoromatic: Add "Force Line Graph" option to result page 2015-10-30 13:31:24 -05:00
Jakub Maleszewski
8003b1205d Merge remote-tracking branch 'upstream/master' 2015-10-28 12:43:02 +01:00
Michael Larabel
6adcb24f1d Phoronix Test Suite 6.0 Milestone 4 2015-10-25 17:22:27 -05:00
Michael Larabel
8be5e74092 pts-graph: Fix bad copy paste from previous commit 2015-10-25 12:29:24 -05:00
Michael Larabel
9fc24919c7 pts-Graph: Tweaks 2015-10-25 11:26:55 -05:00
Michael Larabel
ae90fae8a8 pts-core: Tweaks 2015-10-21 08:31:35 -05:00
Michael Larabel
a574958843 phoromatic: Add test_results_total() 2015-10-18 12:35:00 -05:00
Michael Larabel
ef57724ae2 pts-core: Various improvements 2015-10-18 10:42:02 -05:00
Michael Larabel
e344551fea pts-core: Bump PTS_CORE_VERSION 2015-10-13 17:23:02 -05:00
Michael Larabel
2e08a956f4 linux_perf: Add new module to provide perf output reporting on a per-test-run basis when LINUX_PERF=1 environment variable is set 2015-10-13 17:21:12 -05:00
Michael Larabel
ef18199cbc pts-core: Few minor changes to make some modules more capable 2015-10-13 17:19:57 -05:00
Michael Larabel
fa5f02aaf6 phoromatic: Support for exporting results as XML via the viewer 2015-10-13 16:06:31 -05:00
Michael Larabel
734fdeb3e3 pts-core: Reimplement is_results_tracker() 2015-10-13 08:42:16 -05:00
Michael Larabel
a3ac1d50e3 phoromatic: Tweaks 2015-10-12 15:33:14 -05:00
Michael Larabel
28c90a0822 phoromatic: Change the blue 2015-10-12 09:54:00 -05:00
Jakub Maleszewski
de7e80ba6b pts-core: OS X CPU frequency retrieval fix; indentation fixes in phodevi class 2015-10-11 23:10:15 +02:00
Michael Larabel
81ce4e894c phoromatic: Tweak 2015-10-11 16:04:51 -05:00
Jakub Maleszewski
a521a04c78 pts-core: updated module information in system_monitor 2015-10-11 21:55:19 +02:00
Jakub Maleszewski
e8137f7328 Merge branch 'sensors' 2015-10-11 21:41:07 +02:00
Jakub Maleszewski
27a88e1cd4 Merge remote-tracking branch 'upstream/master' 2015-10-11 21:40:52 +02:00
Jakub Maleszewski
643f454568 pts-core: renamed "sensors-new" directory to "sensors", as all the sensor classes are already ported 2015-10-11 21:37:52 +02:00
Jakub Maleszewski
01a6b50e06 pts-core: ported network_usage sensor 2015-10-11 21:34:37 +02:00
Jakub Maleszewski
51af8a47ba pts-core: cpu_freq doesn't show CPU0 as device name on systems not supporting per-CPU monitoring anymore 2015-10-11 20:46:41 +02:00
Jakub Maleszewski
6310f9f87c pts-core: fixed sys_voltage sensor being unnecessarily loaded on OS X 2015-10-11 20:41:33 +02:00
Jakub Maleszewski
f8f3002882 pts-core: fixed cpu_freq sensor on OS X 2015-10-11 20:39:32 +02:00
Jakub Maleszewski
524caa60b0 pts-core: fixed memory_usage sensor on OS X 2015-10-11 20:36:29 +02:00
Jakub Maleszewski
6639c56762 pts-core: clear test try monitoring offsets after successful test run 2015-10-11 11:48:57 +02:00
Jakub Maleszewski
41c57a9414 pts-core: make system_monitor recognize "all." sensor names again (for the sake of compatibility) 2015-10-11 10:54:55 +02:00
Jakub Maleszewski
872e9eb1cd pts-core: prevent system_monitor from running when results are not saved to a file 2015-10-11 10:20:36 +02:00
Michael Larabel
c2eeb47041 phoromatic: More UI work 2015-10-10 16:05:26 -05:00
Michael Larabel
bb86af2ee3 phoromatic: More work 2015-10-10 15:58:09 -05:00
Michael Larabel
25e4f51629 phoromatic: Start of major web UI rework 2015-10-10 15:24:01 -05:00
Jakub Maleszewski
9e890c7df5 pts-core: fixed module unloading 2015-10-10 20:59:14 +02:00
Jakub Maleszewski
a3222463ac pts-core: fix for the last commit (cgroup exclusion when 'all' option is used) 2015-10-10 20:21:30 +02:00
Jakub Maleszewski
a53df5b4ff pts-core: excluded cgroup sensors from monitoring when 'all' option is specified 2015-10-10 20:16:33 +02:00
Michael Larabel
e779ffdeaf phoromatic: Remove one more query from hot path, can be replaced by simple directory check 2015-10-09 13:53:41 -05:00
Michael Larabel
fdb6d0f1b6 Phoronix Test Suite 6.0 Milestone 3 2015-10-09 11:10:57 -05:00
Michael Larabel
26d157ebee pts-core: Fix pts-test-description 2015-10-09 09:52:32 -05:00
Michael Larabel
06bb9cdaeb pts-core: Fix multi-pass fail parsing regression 2015-10-09 09:45:25 -05:00
Michael Larabel
6224ff2341 pts-core: Fix for commit yesterday 2015-10-09 07:43:38 -05:00
Michael Larabel
be5a7c4d39 pts-core: FreeBSD tweaks/fixes 2015-10-08 17:23:23 -05:00
Michael Larabel
f6a1eac273 pts-core: Unset it too 2015-10-08 16:38:20 -05:00
Michael Larabel
b7b9d7a979 Get ready for Phoronix Test Suite 6.0 M3 2015-10-08 16:26:00 -05:00
Michael Larabel
ffb6f0227f phoromatic: Always ensure DB gets closed 2015-10-08 16:25:15 -05:00
Michael Larabel
19fd1a389b pts-core: Updates to debug-test-download-links 2015-10-08 16:00:01 -05:00
Michael Larabel
b821807895 pts-core: Add NO_HTTPS environment variable option for systems that have trouble with HTTPS 2015-10-08 15:22:01 -05:00
Michael Larabel
e03fc64a46 pts-core: String_bool should be good now 2015-10-08 14:03:08 -05:00
Michael Larabel
2924a1a959 pts-core: Improve the new string_bool fallback 2015-10-08 13:56:31 -05:00
Michael Larabel
ee61f69e0f pts-core: Rewrite the DragonFlyBSD external dependency handling to now use dports pkg rather than pkgsrc 2015-10-08 13:52:49 -05:00
Michael Larabel
a7183c313a pts-core: Fix for filter_var() not being enabled in the DragonFlyBSD php package 2015-10-08 13:37:29 -05:00
Michael Larabel
c2983ee7f0 pts-core: Add "smartmontools" as new PTS External Dependency 2015-10-08 10:50:36 -05:00
Michael Larabel
2f3b7ad195 pts-core: Improve pass/fail detection 2015-10-08 10:37:47 -05:00
Michael Larabel
8149dadb52 pts_Graph: Fix bug in pass fail graph 2015-10-08 10:34:11 -05:00
Michael Larabel
e9aa202a80 pts-core: Add extra warning about RequiresRoot=TRUE tests 2015-10-08 10:20:12 -05:00
Michael Larabel
09a74f1b12 pts-core: Detect NVMe drives when looking for block devices for disk testing 2015-10-08 10:14:06 -05:00
Michael Larabel
5e7f241682 pts-core: Fix "auto-disks" test option to not show partitions 2015-10-08 10:10:03 -05:00
Michael Larabel
03f5fa199b pts-core: Add "FAILED" also to pass/fail parser 2015-10-08 09:48:14 -05:00
Jakub Maleszewski
417ddc89a2 pts-core: first part of performance per watt fixes 2015-10-07 23:44:45 +02:00
Jakub Maleszewski
c7598310b9 pts-core: sys_power sensor ported 2015-10-07 23:07:28 +02:00
Jakub Maleszewski
cf0d4c2fd0 pts-core: ported sys_temp sensor 2015-10-07 22:48:37 +02:00
Jakub Maleszewski
ef4fb2eae1 pts-core: ported sys_iowait sensor 2015-10-07 22:42:31 +02:00
Jakub Maleszewski
4ff4c7a333 pts-core: ported sys_fanspeed sensor 2015-10-07 22:35:04 +02:00
Jakub Maleszewski
840d19faaf pts-core: ported hdd_temp sensor 2015-10-07 21:57:46 +02:00
Michael Larabel
6f831b6a83 pts-core: Fix issue in test_run_manager 2015-10-05 13:13:41 -05:00
Michael Larabel
24bfaecfca phoromatic: Fix missing dc_exists 2015-10-05 10:04:47 -05:00
Michael Larabel
a7d825b6a5 pts-core: Finish work on auto-authenticating clients / settings page option to automatically approve newly added systems by default 2015-10-04 10:57:08 -05:00
Michael Larabel
02a4fdf2e6 pts-core: Fix for potential system log prompt on OB uploads when in batch or auto mode 2015-10-04 10:26:33 -05:00
Michael Larabel
344633e96a pts-core: Fix for menu enty 2015-10-04 10:20:44 -05:00
Jakub Maleszewski
62838ca856 pts-core: set INSTANT_MEASUREMENT to false for several sensors 2015-10-04 13:52:30 +02:00
Jakub Maleszewski
d32f62965e pts-core: instant measurement check fixed, cleanup in phodevi_sensor class 2015-10-04 13:28:45 +02:00
Jakub Maleszewski
a273e35ecc pts-core: fixed disk speed sensors not recognizing multiple devices 2015-10-04 12:20:40 +02:00
Jakub Maleszewski
afaf83d0f3 pts-core: fixed gpu_usage sensor, dropped fences/s and commands/s support 2015-10-04 12:04:39 +02:00
Jakub Maleszewski
335f422f99 pts-core: update system_monitor's module info 2015-10-04 11:33:17 +02:00
Jakub Maleszewski
2ef8300927 pts-core: fixed sensor list in interactive mode 2015-10-03 12:39:59 +02:00
Jakub Maleszewski
1f8eb41fa0 pts-core: temporarily disabled gpu_usage sensor 2015-10-03 12:17:20 +02:00
Michael Larabel
36ee0ba814 pts-core: Fix warnngs on test profile page of phoromatic 2015-09-29 15:41:16 -05:00
Jakub Maleszewski
6f6360c722 pts-core: added ability to specify if sensor shuould be monitored in a separate process 2015-09-28 17:53:01 +02:00
Michael Larabel
88cf1f29e2 pts-core: Tweak previous commit 2015-09-28 10:48:49 -05:00
Michael Larabel
efcdddeece pts-core: Fix warnings on empty test options 2015-09-28 10:47:28 -05:00
Michael Larabel
7f42665dcf pts-core: Fix fatal error in cleanup_tests_to_run() as shouldn't be static 2015-09-28 10:45:32 -05:00
Jakub Maleszewski
a46c231a1f pts-core: swap_usage sensor ported 2015-09-28 16:59:54 +02:00
Jakub Maleszewski
b4c8d27e70 pts-core: fixed cgroup creation and removal 2015-09-28 16:37:57 +02:00
Jakub Maleszewski
ca3ee1635f Merge branch 'sensors' 2015-09-25 15:54:55 +02:00
Jakub Maleszewski
7f070caca2 Merge remote-tracking branch 'upstream/master' 2015-09-25 15:54:16 +02:00
Jakub Maleszewski
ac1d806826 pts-core: disk speed sensors ported to the new interface, related flaw fixed in phodevi_linux_parser 2015-09-25 15:48:36 +02:00
Michael Larabel
e5b807de54 pts-core: Fix class names from yesterday's changes 2015-09-25 08:39:10 -05:00
Michael Larabel
6e3e89eb41 pts-core: Check for posix kill more 2015-09-24 17:03:26 -05:00
Michael Larabel
f938146c2c pts-core: Some missing cleanup 2015-09-24 17:01:03 -05:00
Michael Larabel
60db32bff9 pts-core: Fix for previous commit 2015-09-24 16:53:16 -05:00
Michael Larabel
5a1420ed7d pts-core: Various cleaning, try to avoid phoromatic using pts_client::init, etc 2015-09-24 16:52:41 -05:00
Michael Larabel
11eca4c258 pts-core: Redo the init path a bit 2015-09-24 15:48:01 -05:00
Michael Larabel
bd9ce2b541 pts_Graph: Fix notes text 2015-09-24 15:14:26 -05:00
Michael Larabel
2d1678ebad pts_Graph: SVG version of OpenBenchmark icon 2015-09-24 12:32:38 -05:00
Michael Larabel
44d1b6ec8f pts_Graph: Another small SVG optimization 2015-09-24 11:57:15 -05:00
Michael Larabel
b7a5644216 Phoronix Test Suite 6.0 Milestone 2 2015-09-24 11:20:33 -05:00
Michael Larabel
0bc2849a07 pts-core: Small fixes 2015-09-24 11:14:59 -05:00
Michael Larabel
2fa2c072c7 phoromatic: Typo in previous commit 2015-09-23 10:48:06 -05:00
Michael Larabel
b6d08efcb5 phoromatic: Try to optimize the test profile page 2015-09-23 10:47:33 -05:00
Michael Larabel
60c3715ab7 phoromatic: Don't uselessly re-read the JSON cache download so many times 2015-09-23 10:33:59 -05:00
Michael Larabel
a92793152e phoromatic: Drop pre-5.4 client connection support 2015-09-22 10:19:36 -05:00
Jakub Maleszewski
3bfc86c3b1 Merge branch 'sensors' 2015-09-22 17:03:54 +02:00
Jakub Maleszewski
29c709cd3c Merge remote-tracking branch 'upstream/master' 2015-09-22 17:01:54 +02:00
Michael Larabel
01f784ce49 pts-core: Optimize pts_sys_graph with SVG groups 2015-09-22 09:54:45 -05:00
Jakub Maleszewski
9035b8c4a0 pts-core: ported system voltage monitoring to the new interface; single class supports all the system voltages now 2015-09-22 16:36:22 +02:00
Jakub Maleszewski
4b6b7b3b58 pts-core: ported gpu_voltage sensor 2015-09-22 15:11:42 +02:00
Jakub Maleszewski
67d64b164a pts-core: gpu_usage sensor ported 2015-09-22 15:05:07 +02:00
Jakub Maleszewski
913a0a66d8 pts-core: ported gpu_temp sensor 2015-09-22 14:58:43 +02:00
Jakub Maleszewski
1184bd468d pts-core: ported gpu_power sensor 2015-09-22 14:54:09 +02:00
Jakub Maleszewski
415058062b pts-core: gpu_freq sensor ported, gpu_fanspeed class name fixed 2015-09-22 14:35:51 +02:00
Jakub Maleszewski
3dad2c0cd3 pts-core: ported gpu_fanspeed sensor 2015-09-22 14:29:39 +02:00
Jakub Maleszewski
c3c668b863 pts-core: ported cpu_voltage sensor, minor cpu_temp cleanup 2015-09-22 14:01:37 +02:00
Jakub Maleszewski
6c9ed8ec67 pts-core: cpu_temp sensor ported, small cpu_usage cleanup 2015-09-22 13:52:32 +02:00
Michael Larabel
7a35da766d pts-core: Finish merging phx-graph back into pts_Graph 2015-09-19 14:06:48 -05:00
Michael Larabel
ba9a280db7 Add back pts_graph_core from renaming in previous commit 2015-09-19 14:03:04 -05:00
Michael Larabel
78e1ff1463 pts-core: Drop the unused old graph files 2015-09-19 14:02:35 -05:00
Michael Larabel
d59d48fed1 pts-core: Default to using new graphing code 2015-09-19 13:45:22 -05:00
Michael Larabel
1bf75bdd5e pts-core: Various optimizations, tweaks, fixes 2015-09-19 13:37:37 -05:00
Michael Larabel
f401b4aa32 phx-graph: Port over scatter plot 2015-09-19 12:54:44 -05:00
Michael Larabel
9e155e42ae pts-core: Drop unused PIE_CHART type 2015-09-19 12:38:35 -05:00
Michael Larabel
76f13e29e5 pts-core: Port over pass fail graph to phx-graph codebase 2015-09-19 12:32:59 -05:00
Michael Larabel
1a602c6b4a pts-core: Fix breakage of pass/fail type tests in result parser 2015-09-19 12:04:54 -05:00
Michael Larabel
23e93187ac phx-graph: Minor optimization to IQC graph 2015-09-19 11:35:00 -05:00
Michael Larabel
ad17aa6d52 phx-graph: Merge IQC image comparison graphs into new interfaces 2015-09-19 11:32:44 -05:00
Michael Larabel
57ba629867 phx-graph: More SVG compacting 2015-09-19 11:04:03 -05:00
Michael Larabel
6a21fc9bdc phx-graph: More SVG grouping optimizations 2015-09-19 10:53:28 -05:00
Jakub Maleszewski
bc7da46250 pts-core: BSD, OS X and Solaris support restored in cpu_usage sensor, obsolete class deleted 2015-09-19 13:05:09 +02:00
Jakub Maleszewski
e5ee7200bd pts-core: removed obsolete classes already ported to the new monitoring interface 2015-09-19 12:45:45 +02:00
Jakub Maleszewski
892913cea3 pts-core: CPU frequency sensor ported to the new monitoring interface 2015-09-19 12:43:48 +02:00
Jakub Maleszewski
545728bd60 pts-core: CPU fan speed sensor ported to the new monitoring interface 2015-09-19 11:57:45 +02:00
Jakub Maleszewski
948044a809 pts-core: support_check function moved to phodevi_sensor from its subclasses 2015-09-19 11:52:24 +02:00
Jakub Maleszewski
b7d0f8c648 pts-core: cpu_power sensor converted to the new monitoring interface 2015-09-19 11:45:16 +02:00
Michael Larabel
4f1ecf6e4f pts-core: Optimizations to handling of nodes in pts svg dom 2015-09-18 15:13:44 -05:00
Michael Larabel
fbb7386a30 phx-graph: More space optimizations 2015-09-18 15:05:33 -05:00
Michael Larabel
4fc35f0304 pts-core: More SVG work 2015-09-18 14:50:17 -05:00
Michael Larabel
0297d70ea2 phx-graph: More G work 2015-09-18 14:25:38 -05:00
Michael Larabel
7be51e615f pts-core: Add support for emitting SVG files with g tag to save space 2015-09-18 14:15:41 -05:00
Michael Larabel
8aa6273250 phx-graph: Fixes 2015-09-18 13:12:51 -05:00
Michael Larabel
2ee7deefb3 Merge pull request #88 from xorgy/align-pts-graph-strokes
Align phx_graph strokes with the pixel grid.
2015-09-17 21:15:22 -05:00
Aaron Hamilton
d4eaee2c3d Align phx_graph strokes with the pixel grid. 2015-09-18 01:35:11 +00:00
Michael Larabel
0430d89ee4 phx-graph: More cleaning up work 2015-09-17 10:35:50 -05:00
Michael Larabel
7992908b9d phx_graph: Get rid of true that was used when testing 2015-09-17 09:05:02 -05:00
Michael Larabel
47f617ef80 pts_Graph: Support coloring based on brand 2015-09-17 08:50:10 -05:00
Michael Larabel
ab1e967cf2 pts-core: Remove debug comment 2015-09-17 08:49:38 -05:00
Michael Larabel
61066a4e10 pts-core: More cleanup/fix 2015-09-16 17:19:45 -05:00
Michael Larabel
d6e1dbf8d5 phx_graph: Port over box plot graph 2015-09-16 16:48:02 -05:00
Michael Larabel
cfb534aa2b pts-core: Drop old/unused/deprecated code 2015-09-16 15:48:00 -05:00
Michael Larabel
f3143d1e50 pts-core: Fix graph alignment 2015-09-16 14:52:06 -05:00
Michael Larabel
19cadf6a62 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-09-16 12:42:31 -05:00
Michael Larabel
0d0b19ed61 phx_graph: More cleaning up 2015-09-16 12:42:01 -05:00
Michael Larabel
1933ffa349 phx-graph: More work 2015-09-16 12:31:54 -05:00
Michael Larabel
483b08e584 pts-core: Fixes 2015-09-16 11:11:30 -05:00
Michael Larabel
067c9e2995 Merge pull request #87 from xorgy/align-pts-graph-image-transform
Align logo to pixel grid in pts_Graph as well.
2015-09-16 10:10:36 -05:00
Aaron Hamilton
89dae4f137 Align logo to pixel grid in pts_Graph as well. 2015-09-16 15:09:29 +00:00
Michael Larabel
859da61732 Merge pull request #86 from xorgy/align-image-transform
ceil() calculated translation values to align them to whole pixels
2015-09-16 09:56:57 -05:00
Aaron Hamilton
a2c514c4e3 ceil() calculated x and y translation values to align them to whole pixels for better rasterization. 2015-09-16 14:53:17 +00:00
Michael Larabel
55246e453a More phx_graph work 2015-09-16 09:51:59 -05:00
Michael Larabel
2702958233 pts-core: Typo fixes 2015-09-16 09:29:17 -05:00
Michael Larabel
9e226552cb pts-core: Avoid duplicate systems in results 2015-09-16 09:23:20 -05:00
Michael Larabel
e469794c89 pts-core: Avoid duplicate result identifier/values in results 2015-09-16 09:21:03 -05:00
Michael Larabel
b986bccd46 pts_Graph: The meta http_link attribute doesn't work on raw path 2015-09-16 08:57:58 -05:00
Michael Larabel
b430d883c6 pts_Graph: Switch to small SVG version of pts logo thanks to xorgy 2015-09-16 08:53:14 -05:00
Jakub Maleszewski
ded8b0e28d pts-core: updated some system_monitor comments, function name changed in phodevi_sensor 2015-09-15 22:53:12 +02:00
Jakub Maleszewski
d3f457ba4b pts-core: fixed "all" suffix support in system_monitor 2015-09-15 22:20:54 +02:00
Jakub Maleszewski
00251658b2 pts-core: removed unnecessary MONITOR_PARAM_FILE environmental variable from system_monitor 2015-09-15 21:38:26 +02:00
Michael Larabel
7110810bbc phx-graph: More work on the new pts_Graph 2015-09-15 13:14:31 -05:00
Michael Larabel
7cf8ba5dc7 pts-core: More work on the new phx_graph code 2015-09-14 15:06:47 -05:00
Michael Larabel
4df0f25898 Fork pts_Graph into phx_graph to begin work on new graphing interface 2015-09-14 11:07:07 -05:00
Jakub Maleszewski
59767a93fe pts-core: following YAGNI principle removed JSON configuration support from sensor monitoring module. Sensors can now take a single parameter. Fixed some system-sensors bugs. 2015-09-14 12:53:21 +02:00
Michael Larabel
f80adcb8a0 pts-core: Don't pre-set gcc as CC if CC is set 2015-09-10 21:05:09 -05:00
Jakub Maleszewski
e163437c8c pts-core: some work on showing more information in 'system-sensors' 2015-09-10 23:54:44 +02:00
Michael Larabel
69824dc939 pts-core: Warning fix 2015-09-09 19:50:46 -05:00
Michael Larabel
4f596f7b8f pts-core: Fix if test doesn't end up starting up due to lock 2015-09-09 17:05:00 -05:00
Michael Larabel
e6af7a2675 pts-core: Get rid of multi_way_compact 2015-09-09 14:07:58 -05:00
Michael Larabel
8e6aa772c4 pts-core: Fix saving system-logs 2015-09-09 10:56:33 -05:00
Jakub Maleszewski
875820aa78 pts-core: renamed cpu.usage-per-core sensor to cpu.usage 2015-09-08 23:07:36 +02:00
Jakub Maleszewski
e61f1b7400 pts-core: implemented Linux part of memory.usage sensor, fixed some bugs 2015-09-08 22:31:42 +02:00
Jakub Maleszewski
3ff2a9690f pts-core: restored ability to parse comma-separated sensor list passed in MONITOR variable 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
1536d5356c pts-core: compatibility fix in system_monitor for PHP 5.3 users 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
b9e055b4ec pts-core: system_monitor refactoring and fixes, part two 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
7d4058d90c pts-core: phodevi's functions working on sensor objects now take references instead of vaules 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
2655819be6 pts-core: significant system_monitor module refactoring and fixes, part one 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
c476f28dd8 pts-core: made static variables private in system_monitor. Cgroup name is now stored in a variable. 2015-09-08 21:19:05 +02:00
Jakub Maleszewski
07823c37a0 Merge remote-tracking branch 'upstream/master' 2015-09-08 21:12:34 +02:00
Michael Larabel
d10a3e736f pts_Graph: Will get rid of lots of empties in the result table 2015-09-08 12:27:34 -05:00
Michael Larabel
78a8f8fe26 pts-core: Fix secondary results merging 2015-09-08 11:00:15 -05:00
Michael Larabel
06d672b969 pts-core: Silly fixes 2015-09-08 10:20:33 -05:00
Ryan S. Kingsbury
309e66c4fb fix directory instructions 2015-09-06 18:02:23 -04:00
Ryan S. Kingsbury
7b7e330d20 Add Windows and general troubleshooting notes to docs 2015-09-06 17:59:59 -04:00
Ryan S. Kingsbury
751ae49d7d Expand PHP search paths on Windows 2015-09-06 17:59:36 -04:00
Ryan S. Kingsbury
2003299875 Fix typo in Facebook HipHop section 2015-09-06 11:49:45 -04:00
Michael Larabel
53932a23f4 pts-core: Just mention PHP 5.3 as the new base requirement. Code still should largely work with PHP 5.2, but don't advertise it 2015-09-05 10:19:22 -05:00
Michael Larabel
08a02584ff pts-core: Typo for previous commit 2015-09-05 07:50:13 -05:00
Michael Larabel
7232b549a1 pts-core: Fix for secondary results 2015-09-05 07:46:44 -05:00
Michael Larabel
c79cd9a341 pts-core: One more fix 2015-09-04 13:02:25 -05:00
Michael Larabel
2f799644cd pts-core: Missed that line 2015-09-04 12:58:24 -05:00
Michael Larabel
4cf4978f6f pts-core: Rename emalloc line 2015-09-04 12:56:55 -05:00
Michael Larabel
b9f4cb393e pts-core: Another fix for recent restructuring 2015-09-04 12:54:56 -05:00
Michael Larabel
ffdc063cbc pts-core: Fixes 2015-09-04 12:50:53 -05:00
Michael Larabel
65b09adf6e pts-core: Add some extras to debug-self-test 2015-09-04 11:59:07 -05:00
Jakub Maleszewski
82a3224ccf Post-merge fixes. 2015-09-04 12:42:35 +02:00
Jakub Maleszewski
6f08299562 Merge cgroups
Conflicts:
	pts-core/modules/system_monitor.php
2015-09-04 12:21:36 +02:00
Jakub Maleszewski
e9ef328b49 Root access script fixes (now it uses /bin/echo). 2015-09-04 11:48:57 +02:00
Michael Larabel
53fb5570ee phoromatic: More stuff 2015-09-03 21:03:17 -05:00
Michael Larabel
d72aa3625f phoromatic: Add "Tests" page 2015-09-03 17:25:49 -05:00
Michael Larabel
7f233b2d9f phoromatic: No need to update that system info so often 2015-09-03 16:36:12 -05:00
Michael Larabel
b2f76bf424 phoromatic: Fixes 2015-09-03 15:09:40 -05:00
Michael Larabel
c22702e591 pts-core: More restructuring 2015-09-03 14:11:24 -05:00
Jakub Maleszewski
76528582ba Fixed backslash escapes not being interpreted in root access wrapper. 2015-09-03 21:07:18 +02:00
Michael Larabel
34b2463350 pts-core: Get rid of test_result_parser_writer 2015-09-03 13:21:21 -05:00
Michael Larabel
65437851f8 pts-core: Get rid of another unused class 2015-09-03 13:14:01 -05:00
Michael Larabel
f8c9cdf013 pts-core: Latest round of mega rework, restructuring, and cleaning 2015-09-03 13:02:42 -05:00
Michael Larabel
d3e7a4d1a5 pts-core: Fixes for reordering 2015-09-03 09:33:30 -05:00
Michael Larabel
274c12a65c pts-core: Next part of the big rework! So far no apparent regressions aside from still needing to implement attributes 2015-09-03 08:24:48 -05:00
Jakub Maleszewski
a12089475b Cgroups are now automatically created by PTS. 2015-09-03 13:46:51 +02:00
Michael Larabel
a8ad8334f4 pts-core: MASSIVE REWORK of handling of test result generation through result_manager 2015-09-02 21:24:57 -05:00
Jakub Maleszewski
fe8240cbbe Basic cgroup-based CPU monitoring implemented. 2015-09-02 23:56:29 +02:00
Michael Larabel
c432861f31 pts-core: More refactoring 2015-09-02 16:14:55 -05:00
Michael Larabel
e80b48f74f pts-core: Update merge-results 2015-09-02 15:43:47 -05:00
Michael Larabel
ea4550fb01 pts-core: Update extract-from-result-file to new API 2015-09-02 15:20:59 -05:00
Michael Larabel
ca4d333056 pts-core: Drop copy-run-in-result-file, update edit-result-file for new API 2015-09-02 15:11:12 -05:00
Michael Larabel
0f85d39ac9 pts-core: Port auto-sort-result-file to new API 2015-09-02 14:57:19 -05:00
Michael Larabel
c83672bf20 pts-core: Rework reorder-result-file to use new APIs 2015-09-02 14:49:04 -05:00
Michael Larabel
8b540a428f pts-core: Make use of new APIs for remove-from-result-file 2015-09-02 14:02:38 -05:00
Michael Larabel
4cfe873dac pts-core: Some cleaning to pts_result_file 2015-09-02 12:10:58 -05:00
Michael Larabel
ca321c594f pts-core: Fix for accessing result file from radar overview 2015-09-02 10:50:16 -05:00
Michael Larabel
3124472ff5 pts-core: HHVM no longer seems to have problems with create comment 2015-09-02 10:35:11 -05:00
Michael Larabel
732c150321 pts_Graph: Drop the codename in comment to save bit of space 2015-09-02 10:29:12 -05:00
Michael Larabel
b8e7817a8b pts_Graph: Don't embed the PNG logo directly into the SVG file, but rely on HTTPS link 2015-09-02 10:16:01 -05:00
Michael Larabel
3eb475733d pts-core: Do test execution with proc_open(), allow modules to tap the process 2015-09-02 09:53:00 -05:00
Michael Larabel
e27f2cd4f5 pts-core: Fix local graph rendering in some instances of the graphs not saving 2015-09-02 09:50:23 -05:00
Jakub Maleszewski
7cb188c075 Applied Michael Larabel's patch allowing obtainment of benchmark script's PID. 2015-09-02 10:24:41 +02:00
Michael Larabel
28e4024346 pts-core: Change raw_xml 2015-09-01 20:30:23 -05:00
Michael Larabel
e8131f8f6e pts-core: Updates 2015-09-01 17:42:16 -05:00
Jakub Maleszewski
df0ab2c3a7 Added ability to show sensor monitoring results on chart per test try.
Also deleted some "sleeps" (or made them shorter) to improve chart accuracy.
2015-09-02 00:22:24 +02:00
Michael Larabel
4e9dd6093f pts-core: Start on a new, faster result merger 2015-09-01 17:01:29 -05:00
Michael Larabel
0dd9037d7c pts-core: Add rename support into result file and result buffer itself 2015-09-01 16:49:07 -05:00
Michael Larabel
a0fca3a7ce pts-core: Add memory usage to debug-render-test 2015-09-01 16:31:00 -05:00
Michael Larabel
fc076ca6f1 pts-core: Dump the debug-render-test results 2015-09-01 16:29:42 -05:00
Michael Larabel
296fa8120e pts-core: Should have been part of last commit 2015-09-01 15:58:10 -05:00
Michael Larabel
f4de8dbaaa pts-core: Clean things up here 2015-09-01 15:57:49 -05:00
Michael Larabel
7542d5e9ce pts-core: Immediately parse the XML for pts_result_file 2015-09-01 15:50:39 -05:00
Michael Larabel
8285b21d17 pts-core: Add basic caching to the pts_result_file 2015-09-01 15:07:15 -05:00
Michael Larabel
a0d18794ba pts-core: Fix for previous commit 2015-09-01 14:53:27 -05:00
Michael Larabel
abcf66fded pts-core: More result file clean-ups 2015-09-01 14:52:25 -05:00
Michael Larabel
190131429f pts-core: Rework handling of system data in result files 2015-09-01 14:40:57 -05:00
Michael Larabel
6e5a42759f pts-core: Should be all safe cleanups 2015-09-01 13:21:07 -05:00
Jakub Maleszewski
bac1b88951 Code reformat. 2015-09-01 14:32:23 +02:00
Jakub Maleszewski
de378032de Memory usage sensor added to sensors-new. 2015-09-01 13:14:10 +02:00
Jakub Maleszewski
f7cc4be402 Parameter correctness checking added to system monitor.
Minor bugfixes.
2015-09-01 13:06:43 +02:00
Jakub Maleszewski
84f6e8e1a3 System-sensors command fixed. 2015-09-01 13:01:00 +02:00
Michael Larabel
505b4071af Revert "pts-core: Some memory optimizations"
This reverts commit 6d15fcc721.
2015-08-31 18:43:18 -05:00
Michael Larabel
1b94484a5a Revert "ppts-core: another add"
This reverts commit 9f67da01bd.
2015-08-31 18:43:03 -05:00
Michael Larabel
9f67da01bd ppts-core: another add 2015-08-31 18:36:10 -05:00
Michael Larabel
6d15fcc721 pts-core: Some memory optimizations 2015-08-31 18:33:50 -05:00
Michael Larabel
3703a1636a Merge pull request #81 from StuntsPT/master
Added support for https in test-profile definitions URLs.
2015-08-31 18:31:24 -05:00
Francisco Pina Martins
2041283b29 Added support for https in test-profile definitions URLs. 2015-09-01 00:08:19 +01:00
Michael Larabel
570acd1ae1 pts-core: Fix for export public viewer in Phoromatic 2015-08-31 17:36:12 -05:00
Michael Larabel
a1a8d6beb2 pts-core: More opt work 2015-08-31 14:49:16 -05:00
Michael Larabel
f281a47a3b pts-core: Decode the JSON later in result buffer item 2015-08-31 13:08:37 -05:00
Michael Larabel
f66ddc072c pts-core: Pass it through 2015-08-31 12:57:01 -05:00
Michael Larabel
63e0277f7d pts-core: Fixes 2015-08-31 12:43:18 -05:00
Michael Larabel
9b33ee556a pts-core: Fix pass by ref 2015-08-31 12:24:48 -05:00
Michael Larabel
afa5dcd193 pts-core: More 2015-08-31 12:23:59 -05:00
Michael Larabel
7833413e65 pts-core: Continuing opt work 2015-08-31 12:14:20 -05:00
Michael Larabel
bdc2613613 pts-core: See if can always do a non-normal init from the ptes_result_file parser 2015-08-31 11:37:59 -05:00
Michael Larabel
923bc85ebe pts-core: Possible pts_test_profile_parser optimizations 2015-08-31 11:33:05 -05:00
Michael Larabel
05ebc7d1bc Add debug-render-test for helping to optimize the graph/result rendering process 2015-08-31 11:00:22 -05:00
Jakub Maleszewski
5ec87112cc Sensors are now monitored in separate processes.
When monitoring multiple sensors which need some time to be read (like CPU usage, where it's about a second) polling frequency might become much lower than set by MONITOR_INTERVAL environment variable. Reading their values in parallel (instead of one by one) makes the problem less noticeable.
Changes in system_monitor entailed modifications in pts_timed_function and pts_fork_function (parameters can now be passed to the called function).
2015-08-30 19:50:28 +02:00
Michael Larabel
d7d1528412 phodevi: AMDGPU Linux detection improvements 2015-08-30 09:27:10 -05:00
Michael Larabel
becf3cd9ed pts-core: Add FileFormat to the parser writer 2015-08-29 17:37:13 -05:00
Michael Larabel
3838aa2565 pts-core: Add FileFormat optional tag to result parser with CSV support 2015-08-29 14:50:46 -05:00
Jakub Maleszewski
c4df437840 Implemented basic functionality of parametrized sensor monitoring (in CLI, no Phoromatic support yet).
- system_monitor: sensors are now stored as objects, results are logged separately for each of them
- system_monitor: monitoring parameters are now read from JSON file; path has to be specified in MONITOR_PARAM_FILE
environment variable
- phodevi_sensor: it is now an abstract class with some functions implemented
- phodevi_sensor: objects of its subclasses should now store their instance number (for identification)
- phodevi_sensor: get_readable_params() function added for getting instance-specific parameters in human-readable, easy to
understand form (for example in "Sensors To Be Logged:")
- cpu_usage_per_core: the first sensor supporting system monitor changes; allows per-core and total CPU usage monitoring
- phodevi: added helper sensor parameter reading fuctions taking sensor object as a parameter instead of array with sensor
name and type
- phodevi: updated read_sensor function to make it work on phodevi_sensor objects
- phodevi: until transition is finished, updated sensors are stored in "sensors-new" subdirectory
2015-08-28 05:04:23 +02:00
Michael Larabel
a2e41e5cec 6.0m1 documentation update 2015-08-26 20:19:48 -05:00
Michael Larabel
1a5ec4bab1 Phoronix Test Suite 6.0 Milestone 1 2015-08-26 20:19:01 -05:00
Michael Larabel
8ec2cc189b pts-core: Fix bash completion 2015-08-25 17:55:25 -05:00
Michael Larabel
a802571353 pts-core: WebSocket fixes 2015-08-22 07:47:06 -05:00
Michael Larabel
7e6cf58a1e Merge pull request #76 from NickZ/master
Socket_select timeout and forking issues fixed
2015-08-22 07:45:57 -05:00
Nicholas Zatkovich
53ea8d57ac Fixed a few forking issues.
#1: pts_web_socket failed to kill its child processes after they finished processing data, so it effectively became a Fork bomb.
#2: SIDCHLD wasn't being caught from dead child processes, so they became zombies. Installing a SIGCHLD handler fixed this.
#3: a child process using the "exit(0)" function instead of the process being killed resulted in all the current child processes being zombified. Replaced that with posix_kill-ing itself.
2015-08-21 21:33:18 -07:00
Nicholas Zatkovich
cc6e7dcefb Changed socket_select timeout from '0' to 'null'
remember this bug? If you put 0 for the timeout value of socket_select, it just keeps spinning in place and chews up the cpu. Setting it to 'null' makes it block instead, and boosts performance.
2015-08-21 17:14:37 -07:00
Nicholas Zatkovich
fed8b63258 Merge remote-tracking branch 'upstream/master' 2015-08-21 15:40:48 -07:00
Michael Larabel
9f3855df61 phodevi: Add BcacheFS superblock 2015-08-21 11:03:27 -05:00
Michael Larabel
9c811bded1 phoronix-test-suite: Helper updates 2015-08-21 11:02:21 -05:00
Michael Larabel
e11b9faa07 system_monitor: Support reporting a meta/overall performance-per-Watt result at end of result file when activated 2015-08-20 18:37:02 -05:00
Michael Larabel
2c1ff71aa3 perf_per_dollar: Make easy performance-per-dollar benchmarks 2015-08-20 11:09:56 -05:00
Michael Larabel
8d26c39037 pts-core: Fixes for test profile validation following recent restructuring 2015-08-19 10:18:18 -05:00
Michael Larabel
cc43f12ab6 pts_Graph: Support reporting a min result on graphs when there is no max value to be reported 2015-08-17 17:03:53 -05:00
Michael Larabel
c530590922 pts-core: Bad keyboard 2015-08-17 16:56:10 -05:00
Michael Larabel
5109dabd47 pts-core: Another fix from recent XG work 2015-08-17 16:55:45 -05:00
Michael Larabel
a0ec388f1c pts-core: API fix 2015-08-17 16:55:10 -05:00
Michael Larabel
eb24e07602 pts-core: Don't report vars that are statically set 2015-08-17 15:08:01 -05:00
Michael Larabel
af8fca7503 pts-core: Unconditionally always ensure __GL_SYNC_TO_VBLANK=0 2015-08-17 15:06:05 -05:00
Michael Larabel
a12b9b4e7c toggle_screensaver: GNOME 3 update 2015-08-17 11:05:56 -05:00
Michael Larabel
7edb910c35 pts-core: Addd /DRAM 2015-08-15 11:15:07 -05:00
Michael Larabel
378e1438f1 pts-core: Minor optimization in analyzer 2015-08-14 18:17:30 -05:00
Michael Larabel
5310e8889a pts-core: Should have bumped for 6.0-HAMMERFEST devel earlier, but do it now 2015-08-14 15:13:29 -05:00
Michael Larabel
e254c1a6f5 pts-core: More pts_test_profile_parser tweaks 2015-08-14 15:09:52 -05:00
Michael Larabel
dc88345069 pts-core: Fix 2015-08-14 14:40:22 -05:00
Michael Larabel
e19504328e pts-core: Allow bypassing normal init on test profile parser 2015-08-14 14:36:38 -05:00
Michael Larabel
7ac0cdffc1 pts-core: Drop the __clone on profile parser 2015-08-14 13:45:03 -05:00
Michael Larabel
66b1474564 pts-core: Regression fixes 2015-08-14 13:41:41 -05:00
Michael Larabel
419c77f2d1 pts-core: Fixes 2015-08-14 13:39:27 -05:00
Michael Larabel
47ad3e82b0 pts-core: Fixes 2015-08-14 13:35:34 -05:00
Michael Larabel
755646ff19 pts-core: Minor result file optimization 2015-08-14 13:19:10 -05:00
Michael Larabel
37ab81a488 pts-core: Fix for previous commit 2015-08-14 13:15:30 -05:00
Michael Larabel
2834582dff pts-core: Add new test profile parsing back-end 2015-08-14 13:13:22 -05:00
Michael Larabel
5ab9ff4669 phoromatic: Fixes 2015-08-14 10:00:06 -05:00
Michael Larabel
2ff04c4b19 pts-core: Show estimated date/time next to estimated duration left on tests 2015-07-27 13:05:18 -05:00
Michael Larabel
b8af975c3d phoromatic: Go between 60 and 90 seconds for tick thread cycle 2015-07-17 16:37:28 -05:00
Michael Larabel
365318b91e Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-07-12 13:11:14 -05:00
Michael Larabel
b20c159f1f pts-core: Support /usr/lib/os-release for stateless systems 2015-07-12 13:10:52 -05:00
Michael Larabel
ddcbdc77fb Merge pull request #74 from abartol/master
Fixes dead link when clicking on: "Systems Page" link when not runnin…
2015-07-09 13:35:58 -05:00
abartol
893e1909e9 Fixes dead link when clicking on: "Systems Page" link when not running on localhost 2015-07-09 14:30:30 -04:00
Michael Larabel
96c3ae5565 pts-core: Few render optimizations 2015-07-01 11:31:56 -05:00
Michael Larabel
327c096682 phoromatic: Set the pts_results_area in public viewer 2015-06-29 15:11:44 -05:00
Michael Larabel
e6fbee9e42 phoromatic: Improvements when server addressing setup fails 2015-06-24 10:01:50 -05:00
Michael Larabel
a3a5633c73 Prep Phoronix Test Suite 5.8.1 2015-06-23 09:28:42 -05:00
Michael Larabel
3de6d52325 Merge pull request #72 from achernet/superlu-dependency-fix
Fix SuperLU missing dependency issues on Fedora
2015-06-21 07:44:37 -05:00
Alex Chernetz
540975a5a0 Fix SuperLU missing dependency issues on Fedora
libsuperlu3 is the Debian package name, it should be SuperLU-devel, but
I made it lower case in order to better match the file's conventions.
2015-06-21 04:13:37 -07:00
Michael Larabel
1cf19ce6fd phoromatic: Sort systems on main page 2015-06-20 19:16:54 -05:00
Michael Larabel
71a0ebbedf pts-core: Don't report which errors on launcher 2015-06-17 18:30:41 -05:00
Michael Larabel
3023c91df2 pts-core: Other changes 2015-06-16 10:45:05 -05:00
Michael Larabel
bfff4b08d5 pts-core: Fix batch-setup and other commands using override values 2015-06-16 10:44:21 -05:00
Michael Larabel
9285d8f342 phoromatic: Various fixes 2015-06-13 17:45:41 -05:00
Michael Larabel
87e438750d phoromatic: Set 'force_tracking_line_graph' on tracker page 2015-06-10 14:05:38 -05:00
Michael Larabel
850b65fcd4 phoromatic: Append URL in public viewer link for extra flags 2015-06-10 14:03:34 -05:00
Michael Larabel
b65b4e79be phoromatic: Result tracker detection improvements 2015-06-10 13:58:52 -05:00
Michael Larabel
2483d29b72 phoromatic: Fix closing bracket 2015-06-10 13:15:43 -05:00
Michael Larabel
3d49299ca5 phoromatic: Enhancements to the main page 2015-06-10 12:52:10 -05:00
Michael Larabel
46e9ac3c93 phoromatic: Main page reporting tweaks 2015-06-10 12:35:57 -05:00
Michael Larabel
80020ef97e phoromatic: Version locking option 2015-06-10 12:02:47 -05:00
Michael Larabel
c6d9399856 phoromatic: Allow basic sub-targeting as part of test schedule trigger URLs 2015-06-10 11:24:52 -05:00
Michael Larabel
dfde34c776 pts-core: Add force_tracking_line_graph option 2015-06-10 11:04:55 -05:00
Michael Larabel
5901e664a9 pts-core: Fix result file validation against XML schema 2015-06-10 10:21:17 -05:00
Michael Larabel
404a8af886 pts-core: Warning fix in make-openbenchmarking-cache 2015-06-10 09:47:02 -05:00
Michael Larabel
e2f35c6f0d pts-core: Don't show /boot/efi in auto-disk-mount-points 2015-06-09 20:51:03 -05:00
Michael Larabel
3c31134e17 pts-core: Change blas-development detection to libblas.so 2015-06-09 12:08:35 -05:00
Michael Larabel
85052a3e7e pts-core: Add another TTF font found on Fedora 22 Server 2015-06-09 10:51:12 -05:00
Michael Larabel
8e0ab94813 phoromatic: Pass attributes 2015-06-09 10:47:50 -05:00
Michael Larabel
df3ee07729 phoromatic: Play with SVG width 2015-06-09 10:42:35 -05:00
Michael Larabel
fe8884506e phoromatic: Pass extra attributes during PDF generation to allow for PDF sorting, etc 2015-06-09 10:41:25 -05:00
Michael Larabel
ff700ff4c7 phoromatic: No wrapping on benchmark page of checkboxes 2015-06-08 19:23:50 -05:00
Michael Larabel
c977238115 phoromatic: Fix in previous commit 2015-06-05 14:43:11 -05:00
Michael Larabel
3afe8da5a0 phoromatic: Add button to schedules page to allow skipping current trigger 2015-06-05 14:41:14 -05:00
Michael Larabel
9bb99e691d installer: Fix for missing xdg-mime and xdg-icon-resource 2015-06-05 08:23:02 -05:00
Michael Larabel
e7e5a1e5d9 Phoronix Test Suite 5.8.0 2015-06-04 15:21:49 -05:00
Michael Larabel
35baecb3b8 phoromatic: Last minute tweaks 2015-06-04 13:39:28 -05:00
Michael Larabel
b20bf0ddc5 Bump again, almost ready..,. 2015-06-04 12:28:07 -05:00
Michael Larabel
8ff4eb8536 pts-core: Fix for reading multiple dependency names 2015-06-04 12:15:15 -05:00
Michael Larabel
9cdf6b1874 pts-core: Add attr as an external dependency 2015-06-04 12:05:39 -05:00
Michael Larabel
4d12ddba96 phoromatic: Additional validation on result uploads 2015-06-04 10:32:27 -05:00
Michael Larabel
fc521eff35 pts-core: Automatically re-install tests if compiler flag environment variables change 2015-06-04 10:23:29 -05:00
Michael Larabel
5c192fcee6 Start getting ready for 5.8-Belev 2015-06-03 20:14:14 -05:00
Michael Larabel
9c628426ad phoromatic: Small results viewer improvements 2015-06-03 20:13:49 -05:00
Michael Larabel
09e3b9b005 phoromatic: Client update script every 20 minutes 2015-06-03 18:44:56 -05:00
Michael Larabel
b47b06b8d0 phoromatic: Updates 2015-06-03 18:42:51 -05:00
Michael Larabel
df9be063f2 phoromatic: Refresh OB repository lists prior to benchmarks 2015-06-03 18:40:55 -05:00
Michael Larabel
b531e36b6d phoromatic: Track core version of clients in database 2015-06-03 12:38:38 -05:00
Michael Larabel
0a14668df8 pts-core: Don't needlessly write out config file each time if nothing relevant has changed 2015-06-03 12:30:28 -05:00
Michael Larabel
ce91b466b1 phoromatic: Tweak 2015-06-03 11:49:47 -05:00
Michael Larabel
769683c183 phoromatic: Fix on commit too 2015-06-03 11:48:26 -05:00
Michael Larabel
09489ac54f phoromatic: Fix updater when \r only 2015-06-03 11:45:52 -05:00
Michael Larabel
ede9b430b8 phoromatic: Allow OB uploads on more than standalone results 2015-06-03 09:58:19 -05:00
Michael Larabel
0311405892 phoromatic: Typo in previous commit 2015-06-03 09:45:05 -05:00
Michael Larabel
da8c868247 phoromatic: Don't clash names on ticket runs 2015-06-03 09:43:45 -05:00
Michael Larabel
a80cc38d31 phoromatic: Add global checkbox to key pages 2015-06-03 09:34:33 -05:00
Michael Larabel
8b280457f3 phoromatic: Add checkboxes to benchmark page 2015-06-03 09:19:55 -05:00
Michael Larabel
3082df135c pts-core: Add invalid command helper to finish-run 2015-06-02 09:24:43 -05:00
Michael Larabel
417122edce phodevi: Some basic hardware reporting improvements that help the MIPS Creator CI20 2015-06-01 17:32:02 -05:00
Michael Larabel
ea6304afc9 phoromatic: Fix what was overlooked 2015-06-01 17:20:21 -05:00
Michael Larabel
517900be99 phoromatic: Fix on odd systems 2015-06-01 17:19:12 -05:00
Michael Larabel
f09bca90c7 Phoronix Test Suite 6.x codenames 2015-05-31 20:52:03 -05:00
Michael Larabel
25372703cb TODO updates 2015-05-31 19:13:36 -05:00
Michael Larabel
d881c8ed73 phoromatic: Be safer when calling fetchArray() 2015-05-30 09:29:32 -05:00
Michael Larabel
49b7802a00 pts-core: Another step to try to ensure /etc/phoronix-test-suite.xml doesn't get messed up 2015-05-30 09:15:31 -05:00
Michael Larabel
d42633c44a ChangeLog: update 2015-05-29 09:30:52 -05:00
Michael Larabel
8a6275295c phoromatic: Try rebooting system if communication fails 10+ times 2015-05-29 09:30:00 -05:00
Michael Larabel
86cc320f4b pts-core: Try change in PTS_IS_DAEMONIZED_SERVER_PROCESS 2015-05-29 09:27:32 -05:00
Michael Larabel
a28fc90efe Phoronix Test Suite 5.8 Milestone 5 2015-05-28 20:26:44 -05:00
Michael Larabel
27033a5192 phoromatic: Report benchmark result total on main page 2015-05-26 12:29:05 -05:00
Michael Larabel
93dabe6b7b phoromatic: Rebuild docs 2015-05-26 11:04:55 -05:00
Michael Larabel
e3730e423b phoromatic: Change shell_exec on update_script 2015-05-26 11:03:34 -05:00
Michael Larabel
a224760c6f phoromatic: Add "All Results" option on the export viewer 2015-05-25 16:50:43 -05:00
Michael Larabel
0ed5f440f1 phoromatic: More export viewer work 2015-05-25 15:01:39 -05:00
Michael Larabel
65d6dc457e phoromatic: Add the Phoromatic Export Viewer 2015-05-25 14:45:52 -05:00
Michael Larabel
9edbc87f01 phoromatic: Index change on export 2015-05-25 13:22:34 -05:00
Michael Larabel
b2d61b843b phoromatic: Add phoromatic.export-results-for-account-schedules option 2015-05-25 12:50:48 -05:00
Michael Larabel
b63e475e3b phoromatic: Various improvements to Tracker 2015-05-25 10:52:29 -05:00
Michael Larabel
de2f726f71 phoromatic: Scale SVG result graphs to better page size 2015-05-25 10:00:31 -05:00
Michael Larabel
ed8fb8ecad phoromatic: Work on some changes to tracker 2015-05-25 09:45:06 -05:00
Michael Larabel
f626509133 phoromatic: More system page graph work 2015-05-23 13:20:06 -05:00
Michael Larabel
57ce669fe5 phoromatic: Add graphs to systems page 2015-05-23 13:18:09 -05:00
Michael Larabel
5c3baf99a3 pts-core: Caching for pts_openbenchmarking::read_repository_index() 2015-05-23 13:06:57 -05:00
Michael Larabel
acd2524c42 pts-core: Another small optimization 2015-05-23 12:59:34 -05:00
Michael Larabel
ac32ff5b7c pts-core: Some minor optimizations 2015-05-23 12:45:50 -05:00
Michael Larabel
41df9c86d5 pts-core: Fix check 2015-05-23 10:29:19 -05:00
Michael Larabel
a299626b7d phoromatic: Last of sys_graph tweaks for the moment 2015-05-23 10:28:12 -05:00
Michael Larabel
2e223cba2e phoromatic: More tweaks 2015-05-23 10:23:40 -05:00
Michael Larabel
2fb030888f phoromatic: Tweaks to dashboard graphs 2015-05-23 10:19:56 -05:00
Michael Larabel
d3720e9ea0 phoromatic: Show prominent sensors via the dashboard 2015-05-23 10:13:33 -05:00
Michael Larabel
ade60887c9 phoromatic: Log tick sensors into sensors-pool 2015-05-23 09:04:58 -05:00
Michael Larabel
a276b0a4d1 phoromatic: increase the busy timeout on SQLite 2015-05-22 22:33:13 -05:00
Michael Larabel
bc76bc65d4 pts-core: Another micro optimization 2015-05-22 22:17:51 -05:00
Michael Larabel
c7f2aadc4c pts-core: Avoid possible expensive query 2015-05-22 22:06:51 -05:00
Michael Larabel
a11937081f pts-core: Fix for warnings 2015-05-22 22:02:41 -05:00
Michael Larabel
f53271ddf3 pts-core: Return false in this OB func 2015-05-22 21:59:54 -05:00
Michael Larabel
cd934d9792 pts-core: Basic fixes 2015-05-22 21:56:40 -05:00
Michael Larabel
3b65a34d15 pts-core: Change various XML things 2015-05-22 21:52:35 -05:00
Michael Larabel
051cd7dbe4 pts-core: Fixes 2015-05-22 21:33:37 -05:00
Michael Larabel
87a1aa9761 pts-core: Some more XML changes 2015-05-22 21:28:44 -05:00
Michael Larabel
03fe4ab3dd pts-core: Further cleanup with simple XML 2015-05-22 21:26:57 -05:00
Michael Larabel
f69fd06c5c pts-core: SimpleXML fixes 2015-05-22 21:23:53 -05:00
Michael Larabel
31a0163fb8 phoromatic: Re-enable some extra stuff in tracker 2015-05-22 21:17:44 -05:00
Michael Larabel
5ed245ec29 pts-core: Rewrite of pts_result_file 2015-05-22 21:07:52 -05:00
Michael Larabel
66fc8c5eac pts-core: Fix notice from previous commit 2015-05-22 12:06:53 -05:00
Michael Larabel
531e811f2a pts-core: Add possible caching layer in pts_results_nye_XmlReader 2015-05-22 12:05:51 -05:00
Michael Larabel
a0b7b0186d phoromatic: Crash fix in the event server 2015-05-22 11:33:31 -05:00
Michael Larabel
87842c0e03 pts_Graph: force_simple_keys support in graph_key_height() 2015-05-22 09:40:57 -05:00
Michael Larabel
5b59b2d909 pts_Graph: Add force_simple_keys option 2015-05-22 09:37:39 -05:00
Michael Larabel
729b30b968 phoromatic: Graph render tweaks 2015-05-22 09:25:43 -05:00
Michael Larabel
88fa6654b2 phoromaitc: Footer improvements 2015-05-22 09:06:33 -05:00
Michael Larabel
fe8fbe1b98 phoromatic: Tweaks 2015-05-22 08:54:47 -05:00
Michael Larabel
8908704fed phoromatic: Tracker page tweaks 2015-05-22 08:32:32 -05:00
Michael Larabel
bf361b50f0 phoromatic: Reporting string tweaks 2015-05-22 08:23:38 -05:00
Michael Larabel
cdf6560782 pts-core: Fix for possible race condition with config file location handling 2015-05-22 08:20:01 -05:00
Michael Larabel
f52024568e phoromatic: Allow local stress run to have greater thread count than test count 2015-05-21 12:33:02 -05:00
Michael Larabel
45bad928c5 phoromatic: Another tweak 2015-05-20 12:02:19 -05:00
Michael Larabel
2ede099f1d phoromatic: Update maintenance table layout 2015-05-20 12:01:25 -05:00
Michael Larabel
c4e635158d Rebuild docs 2015-05-20 11:55:24 -05:00
Michael Larabel
ca4d4918bb Phoronix Test Suite 5.8 Milestone 4 2015-05-20 11:54:26 -05:00
Michael Larabel
98a7883739 phoromatic: Change interface of reporting sensor values 2015-05-20 11:53:01 -05:00
Michael Larabel
7dd67a89dc phoromatic: Update 2015-05-20 11:27:01 -05:00
Michael Larabel
2f4043dc72 phoromatic: Ensure sample hash is past state of feature add 2015-05-20 10:59:51 -05:00
Michael Larabel
ceabd81039 phoromatic: Add support for specifying custom client update script via account settings page to keep clients PTS updated 2015-05-20 10:57:55 -05:00
Michael Larabel
32634dad4d Improved open-source GPU frequency detection when X Server not active 2015-05-20 10:25:16 -05:00
Michael Larabel
c5d3cf29bd phodevi: Fix for Radeon GPU voltage reporting 2015-05-20 10:16:54 -05:00
Michael Larabel
7910383f83 phodevi: Report kernel's build date when detected it's running on a daily/devel/RC kernel 2015-05-20 09:45:02 -05:00
Michael Larabel
213c29d271 phoromatic: Fix for previous commit 2015-05-19 14:17:10 -05:00
Michael Larabel
7870f61b0a phoromatic: Fix for crash test_run_manager crash 2015-05-19 14:15:31 -05:00
Michael Larabel
2880169ddb phoromatic: Another damn SQLite fix 2015-05-16 21:35:13 -05:00
Michael Larabel
e359a362c0 phoromatic: Fix 2015-05-16 21:34:29 -05:00
Michael Larabel
068cbbdcf9 phoromatic: Fix 2015-05-16 21:31:40 -05:00
Michael Larabel
9ee07e85a9 phoromatic: More SQLite fixes 2015-05-16 21:30:25 -05:00
Michael Larabel
473eca3600 phoromatic: Fix 2015-05-16 21:20:31 -05:00
Michael Larabel
e00f64c807 phoromatic: Another SQLite fix 2015-05-16 21:19:43 -05:00
Michael Larabel
d7c3a8c81e phoromatic: Another SQLite crash fix 2015-05-16 21:17:06 -05:00
Michael Larabel
50ecd84573 phoromatic: Fix 2015-05-16 21:11:29 -05:00
Michael Larabel
5f58fdc896 phoromatic: Various changes 2015-05-14 18:31:55 -05:00
Michael Larabel
e6c8d9f546 pts-core: Support for using DNF directly when available on Fedora 2015-05-12 18:39:40 -05:00
Michael Larabel
e9a07525de Phoronix Test Suite 5.8 Milestone 3 2015-05-12 15:43:24 -05:00
Michael Larabel
aed687de07 phoromatic: Don't show flagged results for the moment on the main page 2015-05-12 15:40:04 -05:00
Michael Larabel
632cb7c710 Version bump, will release M3 later today 2015-05-12 13:44:27 -05:00
Michael Larabel
1f719b1b76 phoromatic: Add support for real-time halt testing and rebooting from the Phoromatic Web UI 2015-05-12 13:40:06 -05:00
Michael Larabel
0442637fc0 phoromatic: Support for reporting system sensors and client log to systems page 2015-05-12 13:11:47 -05:00
Michael Larabel
e9d1062fac phoromatic: Tick fixes 2015-05-12 12:54:57 -05:00
Michael Larabel
d324637ba2 phoromatic: Fix for previous commit 2015-05-12 12:02:13 -05:00
Michael Larabel
7415aea898 phoromatic: Start working on tick thread 2015-05-12 11:58:41 -05:00
Michael Larabel
8c173f4fbe phoromatic: Initial support for the Mongoose Embedded Web Server, used by default if php-cgi and mongoose binaries are found in PATH 2015-05-12 10:35:39 -05:00
Michael Larabel
dab343f9b5 phoromatic: Add start of WS communication backend 2015-05-12 10:20:36 -05:00
Michael Larabel
b5905625e3 phoromatic: Lots of early Web Sockets work 2015-05-12 10:10:13 -05:00
Michael Larabel
41e422ecc9 phoromatic: Tweak available_tests() call to OB on build suite page 2015-05-11 12:15:53 -05:00
Michael Larabel
bfdb7c58e4 phoromatic: Add $dc to build_suite page 2015-05-11 11:12:22 -05:00
Michael Larabel
d9afc0d44a pts-core: Restructure phoromatic objects 2015-05-10 22:36:00 -05:00
Michael Larabel
ece7eddcfe Initial commit of WIP pts_web_socket_server_phoromatic 2015-05-10 17:38:13 -05:00
Michael Larabel
63587835a3 pts-core: Separate out WebSocket server back-ends 2015-05-10 15:48:24 -05:00
Michael Larabel
1e9796928e phoromatic: Set Phoromatic System Variables set by server on Phoromatic clients as env vars 2015-05-09 19:48:10 -05:00
Michael Larabel
d99a94d647 phoromatic: Don't print network connectivity messages 2015-05-08 16:48:33 -05:00
Michael Larabel
335b7ef931 phoromatic: Honor show_local_tests_only option via the build suite page 2015-05-08 14:05:39 -05:00
Michael Larabel
cb250655f9 Merge pull request #65 from vanillajonathan/master
Rename CHANGE-LOG to ChangeLog
2015-05-05 08:21:13 -05:00
Jonathan
d70e64d598 Rename CHANGE-LOG to ChangeLog
As per Gnits standard and most naming common convention.
http://www.gnu.org/software/automake/manual/html_node/Gnits.html#Gnits
2015-05-05 15:02:11 +02:00
Michael Larabel
0f2f41ff6c Merge pull request #64 from vanillajonathan/patch-1
Fixed markup
2015-05-05 07:09:48 -05:00
Jonathan
cd0b59bf87 Fixed markup 2015-05-05 11:16:22 +02:00
Michael Larabel
0aa62825da Merge pull request #62 from juju-solutions/juju-pts-iteration
Update maintainer email
2015-04-29 06:56:28 -05:00
Adam Israel
dc4b713855 Update maintainer email 2015-04-29 13:37:36 +02:00
Michael Larabel
9c356d59cd phoromatic: Fix jumping on page on checkbox selection when scrolling 2015-04-24 09:44:45 -05:00
Michael Larabel
9e18981850 phoromatic: Remove another IP-based claim check 2015-04-23 07:43:05 -05:00
Michael Larabel
5306cc9f54 phoromatic: Disable IP matching 2015-04-22 20:06:19 -05:00
Michael Larabel
d73b2c0bc4 Phoronix Test Suite 5.8 Milestone 2 2015-04-21 21:15:32 -05:00
Michael Larabel
788d1d3e28 phoromatic: Add "System Targets" info to benchmark ticket page & "View All Past Tickets" 2015-04-21 15:23:25 -05:00
Michael Larabel
6d2ad9ae03 pts-core: Exec in path update 2015-04-21 11:15:02 -05:00
Michael Larabel
fe613f1f54 pts-core: Add pts-core/hooks/startup 2015-04-21 11:00:10 -05:00
Michael Larabel
98acce582a pts-core: Finish removal of hhvm-server support since it's long been discontinued upstream 2015-04-21 10:27:14 -05:00
Michael Larabel
fcc0018ab1 pts-core: Spring cleaning 2015-04-21 10:23:44 -05:00
Michael Larabel
e94a9f98a6 (For Previous Commits) phodevi: Reporting of Btrfs RAID levels to system component table when running disk tests 2015-04-19 15:54:30 -05:00
Michael Larabel
2e79cbf8a6 phoromatic: Doh for previous issue 2015-04-19 15:49:56 -05:00
Michael Larabel
a2435498e1 phoromatic: More Btrfs RAID fixes 2015-04-19 15:46:04 -05:00
Michael Larabel
2109002dc7 phodevi: More BTRFS RAID reporting work 2015-04-19 15:39:32 -05:00
Michael Larabel
c8f846b4de phodevi: Btrfs RAID level reporting 2015-04-19 15:33:56 -05:00
Michael Larabel
d49785b863 pts-core: Comments on top of previous commit 2015-04-16 15:34:32 -05:00
Michael Larabel
0ed26f76e5 pts-core: Enforce CCACHE_DISABLE=1 during install/runtime testing 2015-04-16 15:32:57 -05:00
Michael Larabel
cdcecd8879 phoromatic: Start work on nginx server configuration (not yet working) 2015-04-16 08:46:28 -05:00
Michael Larabel
15127d0104 phoromatic: Update results selection on rootadmin data page 2015-04-13 21:20:30 -05:00
Michael Larabel
29f17f1fd2 phoromatic: Shorten public link text 2015-04-13 21:08:02 -05:00
Michael Larabel
63d26f7cc0 phoromatic: Fix AccountID warning on public page 2015-04-13 20:43:05 -05:00
Michael Larabel
6a84ac16f1 phoromatic: Add LetPublicViewResults option and new public results listing page 2015-04-13 12:32:04 -05:00
Michael Larabel
e2a584549d phoromatic: Workaround for instr() usage in SQLite that caused issues with older distributions 2015-04-13 08:13:38 -05:00
Michael Larabel
1d16a3645d Merge pull request #61 from cen1/sqlitefix
Sqlitefix
2015-04-13 08:11:04 -05:00
cen
11537cb636 instr changed to NOT IN sql statement 2015-04-13 10:41:29 +02:00
Michael Larabel
dde77c36c8 Merge pull request #60 from juju-solutions/juju-pts-iteration
Juju pts iteration
2015-04-10 22:00:44 -05:00
Adam Israel
6e9d91a24c Fix key name 2015-04-10 16:04:46 -04:00
Adam Israel
8f8044d52a Add support for user-config 2015-04-10 11:40:03 -04:00
Adam Israel
1dc5d21046 Fix error if key contains a space 2015-04-10 11:39:46 -04:00
Adam Israel
68e7e2eff9 Update to reflect upstream charm and new functionality 2015-04-10 11:39:22 -04:00
Michael Larabel
5d9cd6991d pts-core: Fix potential crash in list-installed-suites sub-command 2015-04-06 11:09:47 -05:00
Michael Larabel
11efbedc20 Regenerate docs for 5.8.0m1 2015-04-02 09:58:58 -05:00
Michael Larabel
77e698c91b Phoronix Test Suite 5.8 Milestone 1 2015-04-02 09:58:11 -05:00
Adam Israel
3ff13bd3e9 Rearrange directory structure to work with juju deploy 2015-04-01 12:49:47 -04:00
cen
0bec2dc635 Changed instr() into a LIKE statement, fix #56 2015-03-31 22:15:18 +02:00
Michael Larabel
dc9f14e9dc phoromatic: Fix for getting the system name on other shared results 2015-03-31 11:21:34 -05:00
Michael Larabel
5690996c9e phoromatic: Add new table to "Results Shared By Other Groups" 2015-03-31 11:20:16 -05:00
Michael Larabel
5270926b30 phoromatic: Fix benchmark right menu; sort system_check_for_open_benchmark_ticket() ASC 2015-03-30 11:00:58 -05:00
Michael Larabel
f718524330 pts-core: Drop AnonymousHardwareReporting / AnonymousSoftwareReporting as no longer used on OpenBenchmarking.org 2015-03-29 12:10:45 -05:00
Michael Larabel
6fcaa42bdb phoromatic: More alterations to UI 2015-03-28 18:36:59 -05:00
Michael Larabel
2724442416 pts-core: Bump PTS_CORE_VERSION to force refresh of cache files 2015-03-28 18:35:04 -05:00
Michael Larabel
4a19981a98 phoromatic: Remove right bar on more pages 2015-03-28 18:32:00 -05:00
Michael Larabel
2dcb331aca phoromatic: Save CSS 2015-03-28 18:15:09 -05:00
Michael Larabel
2e34d13d5c phoromatic: Start work on new main page 2015-03-28 18:13:04 -05:00
Michael Larabel
fc2066117a phoromatic: Start on something 2015-03-28 17:51:56 -05:00
Michael Larabel
22df4734b0 phoromatic: More tweaking of UI 2015-03-28 14:09:27 -05:00
Michael Larabel
9e3790b35e phoromatic: Don't show benchmark ticket page if there's no local suites 2015-03-28 13:59:39 -05:00
Michael Larabel
94d7404357 phoromatic: Move settings and users page below search area along with logout 2015-03-28 12:52:34 -05:00
Michael Larabel
3291618016 phoromatic: Header tweak 2015-03-28 12:22:13 -05:00
Michael Larabel
a8d2d096ca phoromatic: More UI tweaks 2015-03-28 11:59:13 -05:00
Michael Larabel
f645969a1b phoromatic: CSS tweaking 2015-03-28 10:55:19 -05:00
Michael Larabel
ef6aeab21e phoromatic: More CSS tweaking 2015-03-28 10:14:59 -05:00
Michael Larabel
fc2f0efe29 phoromatic: CSS color tweak 2015-03-28 10:05:18 -05:00
Michael Larabel
29dcb2e782 phoromatic: New checkbox handling on results page to manage comparisons and multi-delete results 2015-03-28 09:17:33 -05:00
Michael Larabel
f86d9f4fbf phoromatic: Add "PowerOnSystemDaily" setting option to ensure regardless of schedule that systems will at least power-up/communicate daily if enabled 2015-03-28 08:34:16 -05:00
Michael Larabel
359af64442 deploy: Add intel/radeon xorg.conf templates 2015-03-27 16:32:32 -05:00
Michael Larabel
f076848bf9 install-sh: Copy deploy/ to /usr/share/phoronix-test-suite/deploy/ 2015-03-27 16:26:21 -05:00
Michael Larabel
97963cf6b2 phoromatic: Add "System Maintenance Table" 2015-03-27 11:22:39 -05:00
Michael Larabel
2f3f06f35b phoromatic: Only show minutes if less than 4 hours 2015-03-27 08:28:30 -05:00
Michael Larabel
1e8d10b121 deploy: Add the farm-system-customizations start 2015-03-27 08:25:23 -05:00
Michael Larabel
bc9cd7f364 phoromatic: Always unset the GRUB recordfail when applicable 2015-03-27 08:12:50 -05:00
Michael Larabel
2bf416f16f phoromatic: Make checkboxes on results page (initial stab!) 2015-03-26 18:10:27 -05:00
Michael Larabel
15dd619ea1 phoromatic: Now expecting dynamic power ons to work so don't care if system tests later in day 2015-03-26 16:52:59 -05:00
Michael Larabel
3edf383248 phoromatic: Unify more code 2015-03-26 16:47:18 -05:00
Michael Larabel
b92a926614 phoromatic: Unify more code from start.php into phoromatic_server 2015-03-26 16:20:33 -05:00
Michael Larabel
1b5ff93462 phoromatic: Allow WoL power-ups for honoring benchmark tickets 2015-03-26 16:10:52 -05:00
Michael Larabel
ba2a325762 phoromatic: Get rid of block-poweroff file check in client module now that it can be done per-system from server-side 2015-03-26 13:32:43 -05:00
Michael Larabel
2aa88fd5e2 phoromatic: Allow per-system overriding of whether automatic power-offs of system are permitted 2015-03-26 13:24:05 -05:00
Michael Larabel
d5bce250dc phoromatic: Check if EstimatedTaskForTime expired before sending email 2015-03-26 13:02:39 -05:00
Michael Larabel
6684d827f8 phoromatic: Fix in admin config the function return value in write context error 2015-03-26 11:42:46 -05:00
Michael Larabel
b4b1a7eb45 phoromatic: Fix for removing a system from all groups on the "system group editing" systems page 2015-03-26 10:22:13 -05:00
Michael Larabel
70c1c4bb08 phoromatic: Allow results page search box to also search system's hardware/software components 2015-03-26 09:42:10 -05:00
Michael Larabel
9ce47ccfc5 phoromatic: Allow results page to be limited to particular hash or ticket matches 2015-03-26 09:10:56 -05:00
Michael Larabel
be1867f98d phoromatic: Don't block adding annotation after deleting annotation 2015-03-26 08:53:37 -05:00
Michael Larabel
3b47c0c12b phoromatic: Show matching ticket results in the compare results column on results page 2015-03-26 08:50:33 -05:00
Michael Larabel
2ebc4e05ff phoromatic: Ensure $right is always declared 2015-03-26 08:39:50 -05:00
Michael Larabel
db36f95508 phoromatic: Don't show empty "Benchmark Tickets" right column list 2015-03-26 08:39:20 -05:00
Michael Larabel
608b27bcf1 phoromatic: Typo fix 2015-03-25 17:03:02 -05:00
Michael Larabel
2b75139e87 phoromatic: Fix "Triggered Ago" 2015-03-25 17:02:25 -05:00
Michael Larabel
e37789f5bd phoromatic: Few more main page tweaks 2015-03-25 17:00:23 -05:00
Michael Larabel
b09dad3b56 phoromatic: Clean-up main page schedule for schedules with no associated systems 2015-03-25 16:51:41 -05:00
Michael Larabel
bebf9a7cd6 phodevi: More allowance for clients to recover Internet connection / server communication failure 2015-03-24 18:31:09 -05:00
Michael Larabel
853d37bcbe pts-core: Indent tweak for previous JSON commit 2015-03-24 11:52:19 -05:00
Michael Larabel
384619146e pts-core: Add very basic result-file-to-json sub-command 2015-03-24 11:44:31 -05:00
Michael Larabel
457d284f1e Pull in JuJu scripts from https://github.com/juju-solutions/pts to deploy/juju 2015-03-24 10:16:29 -05:00
Michael Larabel
d2d96af37c - pts-core: Move phoromatic-client and phoromatic-server Upstart job files to deploy/ 2015-03-24 10:07:05 -05:00
Michael Larabel
63669356de pts-core: Move phoromatic-client and phoromatic-server Upstart job files to deploy/ 2015-03-24 10:02:00 -05:00
Michael Larabel
cbd56b106c Post-release version bump to start Phoronix Test Suite 5.8 development 2015-03-24 09:57:11 -05:00
Michael Larabel
ad2803bcde pts-core: Start moving possible deployment scripts into deploy/ directory 2015-03-24 09:54:56 -05:00
Michael Larabel
11090103e3 CHANGE-LOG: Add date to new version 2015-03-24 07:42:06 -05:00
Michael Larabel
71ce513b02 Phoronix Test Suite 5.6.0 2015-03-24 07:40:23 -05:00
Michael Larabel
0463bb4667 phoromatic: Don't attempt to open DB in read-only mode if phoromatic.db not yet made 2015-03-23 09:03:09 -05:00
Michael Larabel
42d7246d87 pts-core: Fix potential warning in detailed-system-info sub-command 2015-03-22 11:28:01 -05:00
Michael Larabel
af8999f5d2 phodevi: Workaround Hyper Threading detection on OS X 2015-03-22 11:18:57 -05:00
Michael Larabel
681b007017 phoromatic: Fix for previous HFS+ OS X commit 2015-03-22 11:14:14 -05:00
Michael Larabel
9e5a67f4f5 phodevi: HFS+ file-system fallback detection on OS X 2015-03-22 11:09:48 -05:00
Michael Larabel
a1fd9e5e4d pts-core: cli_set_process_title() still emits error on OS X so block its usage 2015-03-22 10:59:20 -05:00
Michael Larabel
de75f7b20a phoromatic: Pass AccountID to system_id_to_name() within public viewer 2015-03-19 14:58:06 -05:00
Michael Larabel
dfa22abd4e pts-core: Detect Internet presence for enterprise-setup 2015-03-18 19:21:35 -05:00
Michael Larabel
62769ff58d pts-core: Yield /dev/mapper/* points in auto-disk-mount-points 2015-03-18 10:48:30 -05:00
Michael Larabel
c8322dfd4b phoromatic: Mark system state as unknown when communication fails and hits the event server check 2015-03-18 09:16:47 -05:00
Michael Larabel
00c86faea2 pts-core: Drop bilde_renderer since it's been deprecated for a while 2015-03-18 09:06:58 -05:00
Michael Larabel
65e5fc78c1 phoromatic: Fix line breaks in annotations 2015-03-18 08:51:23 -05:00
Michael Larabel
47d43cca9b phoromatic: Handle line breaks when adding annotation 2015-03-17 12:58:27 -05:00
Michael Larabel
4c911b9176 phoromatic: Improve formatting of annotations 2015-03-17 12:41:10 -05:00
Michael Larabel
9b6ae61e71 phoromatic: Tweak 2015-03-17 10:23:47 -05:00
Michael Larabel
28a579136c phoromatic: Dashboard tweak 2015-03-17 10:23:08 -05:00
Michael Larabel
c5dd052476 phoromatic: Add case for no results found 2015-03-12 09:24:56 -05:00
Michael Larabel
328a4366ab phoromatic: Add universal search functionality from web interface 2015-03-12 09:19:07 -05:00
Michael Larabel
c757829566 Phoronix Test Suite 5.6 Milestone 5 2015-03-11 09:31:18 -05:00
Michael Larabel
c9e3db6077 phoromatic: Add support for the user to delete annotations 2015-03-11 09:28:45 -05:00
Michael Larabel
a745fe09bb pts-core: Switch the dump-documentation sub-command to generating the README in md format 2015-03-11 09:18:38 -05:00
Michael Larabel
8ffde5b53d phoromatic: Add basic support for annotating/commenting on result files and individual graphs 2015-03-10 12:23:20 -05:00
Michael Larabel
1e95bd2cf2 phoromatic: Extra check for previous commit 2015-03-10 10:15:07 -05:00
Michael Larabel
890d7fe048 phoromatic: Dashboard improvement 2015-03-10 10:13:32 -05:00
Michael Larabel
8254fec563 pts-core: Allow 128 character result identifier strings 2015-03-09 11:32:04 -05:00
Michael Larabel
3172e49a56 phoromatic: Allow stress runs up to 24 concurrent tests 2015-03-09 10:07:59 -05:00
Michael Larabel
e7a2a7b5eb pts-core: Check twice for internet connectivity with wait while operating as server process 2015-03-08 16:51:09 -05:00
Michael Larabel
bbd4656b8b phoromatic: Fix reply-to 2015-03-05 11:59:07 -06:00
Michael Larabel
a4399578ee phoromatic: Allow stress tests up to 90 days 2015-03-05 11:57:58 -06:00
Michael Larabel
a4f0cbd53b phoromatic: Change the custom From email sender to Reply-To 2015-03-05 11:54:10 -06:00
Michael Larabel
9a3a8668e4 pts-core: Ignore test run locking in stress/multi-run mode 2015-03-05 08:56:37 -06:00
Michael Larabel
0b92c8019a phoromatic: Stress run test message changes
Signed-off-by: Michael Larabel <Michael@phoronix.com>
2015-03-05 08:49:14 -06:00
Michael Larabel
6f562d0560 phoromatic: Allow stress tests up to ten days 2015-03-05 08:43:35 -06:00
Michael Larabel
1a4995a87a phoromatic: Add "End Ticket" option to benchmark page 2015-03-05 08:34:24 -06:00
Michael Larabel
22fa761e8e phoromatic: Scroll bar on local suites page condensing 2015-03-05 08:22:07 -06:00
Michael Larabel
a6725a415d phoromatic: Send emails from rootadmin or group admin's email address where applicable rather than no-reply@ 2015-02-27 09:49:36 -06:00
Michael Larabel
6dd96ea414 phoromatic: fix 2015-02-26 18:43:05 -06:00
Michael Larabel
39ea33ae4e pts-core: Fix version appending 2015-02-26 17:46:08 -06:00
Michael Larabel
7313943017 phoromatic: Don't pass test flags there 2015-02-26 17:10:08 -06:00
Michael Larabel
db478c34fc phoromatic: Use short display mode 2015-02-26 17:09:30 -06:00
Michael Larabel
4e64bac57f phoromatic: Initial hook-up of stress-run functionality on client and rest of server 2015-02-26 16:49:25 -06:00
Michael Larabel
85f555b848 Phoronix Test Suite 5.6 M4 2015-02-25 12:29:05 -06:00
Michael Larabel
11b1ad1b14 phoromatic: Show all test versions supported via the UI 2015-02-24 16:50:44 -06:00
Michael Larabel
f4ea87131c phoromatic: Add basic support for system variables 2015-02-24 14:14:27 -06:00
Michael Larabel
18e281d5cf pts-core: Make-download-cache to attempt caching all versions of a test profile 2015-02-24 13:46:14 -06:00
Michael Larabel
82cd3c1447 phoromatic: Add support for repeating tickets 2015-02-24 12:13:33 -06:00
Michael Larabel
8e992e5c85 pts-core: Improvements to phoronix-test-suite make-download-cache 2015-02-24 11:57:27 -06:00
Michael Larabel
8f20ff042b phoromatic: Add initial support for "Test All Options" to build suite 2015-02-23 13:00:19 -06:00
Michael Larabel
78d280dc5a phoromatic: Allow creating new group accounts from the rootadmin page 2015-02-23 09:43:05 -06:00
Michael Larabel
9b77c4dbb4 phoromatic: Allow tickets to be removed from the individual benchmark page 2015-02-17 11:28:15 -06:00
Michael Larabel
95c3cf6951 phoromatic: Allow triggers to be nuked from the rootadmin page 2015-02-17 11:11:02 -06:00
Michael Larabel
99f880c34a - phoromatic: Allow for system identifier variable in benchmark tickets of .GROUP 2015-02-17 10:32:54 -06:00
Michael Larabel
b20b34c569 phoromatic: Add support for .SYSTEM variable 2015-02-17 10:27:26 -06:00
Michael Larabel
ece449f050 phoromatic: Remove original XML results when deleting result as rootadmin 2015-02-17 08:40:31 -06:00
Michael Larabel
e15b736e1f phoromatic: Tighten up initial sleep time on freshly booted system 2015-02-17 08:29:23 -06:00
Michael Larabel
9d8d1e689f phoromatic: Support nuking benchmark tickets 2015-02-16 14:44:31 -06:00
Michael Larabel
2861672bf9 phoromatic: No limits on result showing, remove from _results and _systems too 2015-02-16 14:39:27 -06:00
Michael Larabel
55593610dc phoromatic: Add "admin data" page to let the rootadmin permanently delete schedules/results/systems 2015-02-16 10:05:33 -06:00
Michael Larabel
c1c0a94cd4 Phoronix Test Suite 5.6.0 Milestone 3 2015-02-15 07:50:02 -06:00
Michael Larabel
9def58b211 phoromatic: Prepend system ID to result string when running multiple tests without variables 2015-02-12 08:46:00 -06:00
Michael Larabel
d6b6d7631f pts-core: Fix notice about JSON_PRETTY_PRINT in make-download-cache on pre PHP 5.4 2015-02-12 06:27:41 -06:00
Michael Larabel
73eef7a11a phoromatic: Fix missing rand() from sleep 2015-02-11 15:22:24 -06:00
Michael Larabel
650b689ad5 phoromatic: Don't check against title for benchmark ticket check 2015-02-11 14:34:54 -06:00
Michael Larabel
673489f6f5 phoromatic: Add option to force rebuild of results databases 2015-02-10 09:58:46 -06:00
Michael Larabel
2db7cf9660 phoromatic: Limits on the benchmark page 2015-02-09 20:22:39 -06:00
Michael Larabel
790b3625fe Test: multiple uploads on result upload failure for Phoromatic if needed 2015-02-09 14:38:13 -06:00
Michael Larabel
47b50018df phoromatic: Add some server debug log info 2015-02-09 14:31:29 -06:00
Michael Larabel
bd7d2b4e5f phoromatic: Fix CSS styling of lists 2015-02-09 11:07:57 -06:00
Michael Larabel
52f7de4ea6 phoromatic: Start on UI for stress testing and system_monitor module 2015-02-09 10:41:15 -06:00
Michael Larabel
bf83f78e96 phoromatic: Add more dummy messages 2015-02-09 08:46:49 -06:00
Michael Larabel
aaeea7372c phoromatic: Add support for viewing issued benchmark tickets 2015-02-09 08:28:35 -06:00
Michael Larabel
43ec99b830 phoromatic: Useless warning fix 2015-02-08 20:00:03 -06:00
Michael Larabel
5433279f90 phoromatic: Last of tweaks for today... The single-run benchmarking mode should be working fine as a first cut 2015-02-08 19:56:23 -06:00
Michael Larabel
18a860d32b phoromatic: Fix potential infinite loop 2015-02-08 19:49:35 -06:00
Michael Larabel
4e6872e31d phoromatic: Fix 2015-02-08 19:45:04 -06:00
Michael Larabel
859ebca16a phoromatic: Client improvements 2015-02-08 19:39:23 -06:00
Michael Larabel
4a14a868ab phoromatic: Fix 2015-02-08 19:35:45 -06:00
Michael Larabel
3a49252378 phoromatic: Tweaks to latest work 2015-02-08 19:30:44 -06:00
Michael Larabel
6d24497665 phoromatic: Typo fix 2015-02-08 19:19:35 -06:00
Michael Larabel
699ede0d95 phoromatic: Benchmark tickets now work? 2015-02-08 19:02:32 -06:00
Michael Larabel
ef968316ff phoromatic: Add benchmark page 2015-02-08 18:27:36 -06:00
Michael Larabel
6626f86cec phoromatic: Add support for local suites page 2015-02-08 17:23:57 -06:00
Michael Larabel
294bfd488b phoromatic: Working build suite page 2015-02-08 17:01:34 -06:00
Michael Larabel
92172da6b7 phoromatic: Enforce new PTS sign-on whenever the PTS core version changes due to potential interface changes 2015-02-08 13:28:47 -06:00
Michael Larabel
cb41681e9f phoromatic: Tweaks 2015-02-08 10:23:50 -06:00
Michael Larabel
4e4f2dde72 phoromatic: Add new option to results page 2015-02-08 10:20:00 -06:00
Michael Larabel
1299ac74e8 phoromatic: Add result RSS support 2015-02-08 09:40:13 -06:00
Michael Larabel
11e50f9c8b phoromatic: Rely on caching for determining pre-existing cached test profiles from the web UI
Signed-off-by: Michael Larabel <Michael@phoronix.com>
2015-02-05 19:50:43 -06:00
Michael Larabel
4167d346c6 phoromatic: Allow triggers to be deleted 2015-02-05 18:30:29 -06:00
Michael Larabel
3f93db214c phoromatic: Typo fix 2015-02-05 12:10:53 -06:00
Michael Larabel
72d69a8ccb phoromatic: Show dashboard even if just one system is live 2015-02-05 09:40:09 -06:00
Michael Larabel
3910e6f2cc pts-core: Include system-wide FPDF if it's found 2015-02-05 09:38:14 -06:00
Michael Larabel
eae98cc06a Phoronix Test Suite 5.6 Milestone 2 2015-02-04 19:19:57 -06:00
Michael Larabel
2c7b7f4ff3 phoromatic: Add phoromatic.clone sub-command for clients to clone viewable test results 2015-02-04 19:10:22 -06:00
Michael Larabel
114f94ba11 phoromatic: Work on clone option 2015-02-04 18:57:18 -06:00
Michael Larabel
2c5070d34a phoromatic: Add phoromatic.list-results sub-command for clients 2015-02-04 18:45:42 -06:00
Michael Larabel
f4508ea766 phoromatic: Work on list-result 2015-02-04 18:29:49 -06:00
Michael Larabel
cf8dc18cfd phoromatic: Support for exporting result files to download as CSV or TXT 2015-02-04 16:59:36 -06:00
Michael Larabel
25afe6313f phoromatic: Add option to pre-seed test installs to systems when otherwise idling 2015-02-04 16:13:32 -06:00
Michael Larabel
a9042dad3a phoromatic: Start work on test pre-seeding 2015-02-04 16:00:56 -06:00
Michael Larabel
08d2c9e39b phoromatic: Download latest OpenBenchmarking.org test suites/profiles in background thread from the event server 2015-02-04 15:40:59 -06:00
Michael Larabel
88c1d5e4cf phoromatic: Add "Only Advertise Cached Tests" option to rootadmin 2015-02-04 14:36:08 -06:00
Michael Larabel
440eb38920 phoromatic: Fix compare results link 2015-02-04 14:24:50 -06:00
Michael Larabel
e68049b612 phoromatic: Results improvementsd 2015-02-04 13:43:50 -06:00
Michael Larabel
35d8df0f08 phoromatic: Register module-discovered Phoromatic Servers with pts-core 2015-02-04 11:25:12 -06:00
Michael Larabel
1edd60f919 phoromatic: Changes requested by Chris 2015-02-03 16:38:51 -06:00
Michael Larabel
80a553e63d phoromatic: Improvements to test details, still working on build suite 2015-02-03 13:50:13 -06:00
Michael Larabel
ff7bf7d1de phoromatic: Stub our work on starting new build a suite page 2015-02-03 13:35:20 -06:00
Michael Larabel
bcaca6042c phoromatic: Allow merged results to be exported to PDF and sent to public viewer 2015-02-03 12:44:22 -06:00
Michael Larabel
79ecd9ae17 phoromatic: Add comparable results listing on individual result pages 2015-02-03 12:19:39 -06:00
Michael Larabel
6e1d45df7a phoromatic: Hide search button until it's fully working 2015-02-03 11:38:04 -06:00
Michael Larabel
dcfe9840fc phoromatic: Add time limit option on results page 2015-02-03 10:53:36 -06:00
Michael Larabel
2a6bec9409 phoromatic: Allow comparisons with shared results 2015-02-03 10:28:02 -06:00
Michael Larabel
58cb071b65 phoromatic: Get rid of some unneeded JS now 2015-02-03 10:10:52 -06:00
Michael Larabel
9c1a525514 phoromatic: Add back delete result capability 2015-02-03 10:03:43 -06:00
Michael Larabel
cc5b09661e phoromatic: New comparison functionality 2015-02-03 09:45:49 -06:00
Michael Larabel
09f4dea6d4 phoromatic: Fix custom CacheDirectory for download-cache 2015-02-02 17:15:46 -06:00
Michael Larabel
84ed3c504f phoromatic: Add extra debug info to download-cache 2015-02-02 17:06:27 -06:00
Michael Larabel
53a6a85909 phoromatic: Potential fix for download issue 2015-02-02 16:58:27 -06:00
Michael Larabel
f9dd9c3f2c phoromatic: Add "force result sharing" option to rootadmin to override per-account settings 2015-02-02 16:33:09 -06:00
Michael Larabel
9ee56d7ecf pts-core: RPM build fix 2015-02-02 15:38:27 -06:00
Michael Larabel
beb03041f3 phoromatic: Attempt more connectiosn if needed 2015-02-02 09:42:09 -06:00
Michael Larabel
3f09b801b2 phoromatic: Allow optional result sharing between groups / unique accounts (controlled via settings) 2015-01-31 13:42:59 -06:00
Michael Larabel
d39b7f5307 phoromatic: Compute PPRID when uploading new results 2015-01-31 13:04:58 -06:00
Michael Larabel
52c533a9ee phoromatic: Introduce PPRID structure as universal unique identifier for results between accounts 2015-01-31 13:01:29 -06:00
Michael Larabel
79351c4cbe phoromatic: Chrome JavaScript fix 2015-01-31 10:59:58 -06:00
Michael Larabel
9b3b5edd82 phoromatic: Add IP ping test to system claim page 2015-01-31 10:51:23 -06:00
Michael Larabel
83b5115aa4 phoromatic: Don't show idling systems on the dashboard 2015-01-31 10:35:08 -06:00
Michael Larabel
060f09067f phoromatic: Allow setting a main page message string to show users once logging into their account, via rootadmin's config page 2015-01-31 10:31:48 -06:00
Michael Larabel
509133e0dc phoromatic: Allow disabling new account registration by setting custom string via rootadmin's config page 2015-01-31 10:16:34 -06:00
Michael Larabel
2f68303085 phoromatic: Allow downloading results as PDF 2015-01-31 10:01:35 -06:00
Michael Larabel
a40c08c0a5 pts-core: Import copy of FPDF locally for PDF rendering 2015-01-31 09:29:13 -06:00
Michael Larabel
2718847c96 phoromatic: Add "group name" concept to Phoromatic group of accounts 2015-01-31 08:58:13 -06:00
Michael Larabel
dfb06d5679 phoromatic: Don't show inactive systems in groups 2015-01-31 08:37:27 -06:00
Michael Larabel
a609c20ee9 phoromatic: Improve boxes on main page 2015-01-31 08:35:26 -06:00
Michael Larabel
ad02af1ed3 phoromatic: Download cache changes 2015-01-30 09:35:51 -06:00
Michael Larabel
c2b3f326c1 phoromatic: Many of the requested cosmetic changes by client 2015-01-29 22:21:37 -06:00
Michael Larabel
7c6894c700 phoromatic: Fix PHOROMATIC_USER_IS_VIEWER check to be after session_start() 2015-01-28 16:42:45 -06:00
Michael Larabel
1223ef2356 phoromatic: Allow users to reset their own password by navigating to the settings page 2015-01-27 15:57:22 -06:00
Michael Larabel
ce4d002458 phoromatic: Add basic "Upload To OpenBenchmarking.org" link from test result page 2015-01-27 13:39:41 -06:00
Michael Larabel
eb04908e77 pts-core: Add a public view of test results by going to result page entry -> Result Export -> Public Viewer 2015-01-27 12:41:14 -06:00
Michael Larabel
ab9538f922 pts-core: Fix for session save path on Fedora when running as normal user 2015-01-27 12:06:50 -06:00
Michael Larabel
0261dec8df pts-core: Add hidden ?seed_accountid= option to the welcome / account creation page for custom 6 character ID 2015-01-22 13:06:48 -06:00
Michael Larabel
fa3144fdd8 pts-core: Fix fallback compression support 2015-01-22 10:36:49 -06:00
Michael Larabel
f38b88d591 pts-core: Check for posix_setid() in timed_function() of pts_client 2015-01-18 19:06:45 -06:00
Michael Larabel
5193556183 Merge pull request #41 from vanillajonathan/master
Readme file in Markdown for GitHub
2015-01-18 19:03:36 -06:00
Michael Larabel
0b0ff8ddf4 Merge pull request #42 from BryanQuigley/master
Debian packaging fixes
2015-01-18 19:02:31 -06:00
Michael Larabel
8e9eea9aa2 pts_Graph: Don't append extra s to strings already ending in s 2015-01-18 09:16:50 -06:00
Bryan Quigley
3bdee751de Fix enough lintian errors so Ubuntu Software
Center doesn't complain about package quality
Now requires fakeroot being installed
2015-01-15 13:05:14 -05:00
Bryan Quigley
68ac640236 Corrected build-package vs package-build due to name change 2015-01-15 12:01:41 -05:00
Jonathan
0a90971308 Markdown for hyperlinks 2015-01-14 11:33:20 +01:00
Jonathan
ea623095be Fixed headers 2015-01-14 11:27:29 +01:00
Jonathan
bcb5fbb03b Create README.md
Markdown file
2015-01-14 11:26:25 +01:00
Michael Larabel
e0a0715d09 pts-core: Fix for upload-test-suite 2015-01-13 21:11:40 -06:00
Michael Larabel
6d595c693c pts-core: Change MD5 failed string to Checksum failed string since SHA256 sum is also along this path 2015-01-13 20:58:30 -06:00
Michael Larabel
9c8c810226 Phoronix Test Suite 5.6 Milestone 1 2015-01-13 20:40:06 -06:00
Michael Larabel
60437b9156 pts-core: Change PTS_TEMP_STORAGE location when running as daemonized server process 2015-01-13 15:18:44 -06:00
Michael Larabel
4b0dcb428f phoromatic: Fix typo in earlier phoromatic.php commit 2015-01-13 13:00:20 -06:00
Michael Larabel
71d37b74b7 timed_screenshot: Fix for crash when PHP GD missing 2015-01-13 08:44:31 -06:00
Michael Larabel
79203b63b0 phoromatic: Better recovery of existing Phoromatic accounts on reloaded systems where the machine self ID changed 2015-01-11 16:59:18 -06:00
Michael Larabel
66f545f5d5 pts-core: Update some of the forgotten copyrights 2015-01-10 12:46:07 -06:00
Michael Larabel
257a629254 pts-core: Add support for libframetime output result parsing 2015-01-10 12:44:24 -06:00
Michael Larabel
cdd0fa9db3 pts-core: Add TOTAL_LOOP_TIME=infinite support to stress-run for testing in an infinite loop 2015-01-08 20:23:11 -06:00
Michael Larabel
4025334c5b pts-core: Fix trivial message for line 170 in stress-run 2015-01-08 11:35:41 -06:00
Michael Larabel
e25637aaf4 pts-core: More stress-run work and fix for PTS_CONCURRENT_TEST_RUNS 2015-01-07 19:18:14 -06:00
Michael Larabel
db023450cc pts-core: Whoops 2015-01-07 19:10:29 -06:00
Michael Larabel
1c11e3843b pts-core: LOOP_UNTIL_TIME tweak 2015-01-07 19:09:30 -06:00
Michael Larabel
ede496a21b pts-core: Rework the short display mode 2015-01-07 19:07:30 -06:00
Michael Larabel
e45fd1a60f stress-run: More stuff 2015-01-07 18:57:19 -06:00
Michael Larabel
9fa3fd8b97 pts-core: Add TOTAL_LOOP_TIME support to stress-run 2015-01-07 18:46:26 -06:00
Michael Larabel
a0470e588b pts-core: Fix for previous commit 2015-01-07 18:35:18 -06:00
Michael Larabel
45f2d49dc2 pts-core: More work 2015-01-07 18:34:08 -06:00
Michael Larabel
53b8b48ba3 pts-core: More stress-run work 2015-01-07 18:31:31 -06:00
Michael Larabel
e9cb4cac84 pts-core: Some code refactoring for stress-run 2015-01-07 18:28:00 -06:00
Michael Larabel
0b63f47e68 Bump for PTS 5.6 development 2015-01-07 13:29:33 -06:00
Michael Larabel
6d59c0f03a pts-core: Add stress-run command to allow for concurrent stress testing / burn-in / torture testing 2015-01-07 13:28:30 -06:00
Michael Larabel
ffd3270cab pts-core: Prep changes for stress-run 2015-01-07 13:27:28 -06:00
Michael Larabel
3379a6bf34 pts-core: Add "short" display mode 2015-01-07 10:37:15 -06:00
Michael Larabel
2c19337986 phoromatic: Query it too... 2015-01-05 10:50:24 -06:00
Michael Larabel
0148a8949c phoromatic: On tracker page use system name, not schedule name for ID 2015-01-05 10:49:43 -06:00
Michael Larabel
83a023a2a6 phoromatic: Initial commit of basic tracker page 2015-01-05 10:45:30 -06:00
Michael Larabel
4ec0dd07da Phoronix Test Suite 5.4.1-Lipki 2014-12-23 08:16:20 -06:00
Michael Larabel
9c5e30bb50 pts-core: AppData adjust screenshot size 2014-12-22 08:25:32 -06:00
Michael Larabel
41169330b6 pts-core: Update AppData and systemd service files 2014-12-22 08:22:32 -06:00
Michael Larabel
53fd3ff4a7 pts-core: Allow min/max reporting 2014-12-21 06:56:32 -06:00
Michael Larabel
cd87404c29 pts-core: Add csv-dump-frame-latencies support to result parser 2014-12-20 10:53:39 -06:00
Michael Larabel
354f63a521 phoromatic: Move IP info to separate var to avoid removal issue 2014-12-15 12:00:02 -06:00
Michael Larabel
5d9375b48b phoromatic: Attempt to detect and report IP address next to requested MAC address claim on the system claim page 2014-12-15 11:07:38 -06:00
Michael Larabel
2ab7c30cbe phoromatic: Add enterprise-setup sub-command 2014-12-15 10:45:54 -06:00
Michael Larabel
6a9a659429 phoromatic: Improve formatting of result strings when merging random result files together 2014-12-15 10:26:51 -06:00
Michael Larabel
8e43f61dee pts-core: Add PTS_SILENT_MODE to skip initial prompts 2014-12-09 11:04:37 -06:00
Michael Larabel
900e566dce Phoronix Test Suite 5.4-Lipki 2014-12-09 10:20:58 -06:00
Michael Larabel
34069838c5 phoromatic: Last tweaks 2014-12-09 10:18:58 -06:00
Michael Larabel
0c085c4ee9 phodevi: Round GPU freq when needed 2014-12-08 10:31:10 -06:00
Michael Larabel
b6b9c2e6e1 phoromatic: Few more additions to the component table 2014-12-07 21:12:41 -06:00
Michael Larabel
c9b7e2ade7 phoromatic 2014-12-06 21:50:11 -06:00
Michael Larabel
3f5f37a5af phoromatic: Condense claims listing 2014-12-06 21:45:43 -06:00
Michael Larabel
ffaa6da142 phoromatic: Last minute design tweaks 2014-12-06 21:43:37 -06:00
Michael Larabel
c96f329349 phoromatic: Tweaks 2014-12-06 20:10:48 -06:00
Michael Larabel
4ded61fd5c phoromatic: Tweaks 2014-12-06 09:38:46 -06:00
Michael Larabel
0905e4eef0 pts-core: Fix for two character binary names in FileCheck of external dependencies 2014-12-05 21:07:04 -06:00
Michael Larabel
f9e822aa69 pts-core: Add bc external dependency 2014-12-05 21:01:11 -06:00
Michael Larabel
6e403dd41f phoromatic: Minor improvements 2014-12-05 20:13:56 -06:00
Michael Larabel
247b80884e phoromatic: Typo in previous commit 2014-12-05 12:31:15 -06:00
Michael Larabel
e2b319c6df phoromatic: Put in sleep 2014-12-05 12:24:58 -06:00
Michael Larabel
e1345ca9ac phoromatic: Attempt connection multiple times if needed 2014-12-05 12:24:28 -06:00
Michael Larabel
4e1a726743 phoromatic: Fix link on component table 2014-12-05 10:01:20 -06:00
Michael Larabel
d7ca83f021 phoromatic: Fix bad CSS from previous commit 2014-12-05 09:35:02 -06:00
Michael Larabel
76c6d3ebf9 phoromatic: Add about page 2014-12-04 20:59:35 -06:00
Michael Larabel
98c4929501 phoromatic: Alt conf 2014-12-04 11:39:50 -06:00
Michael Larabel
a6674b82e9 phoromatic: Fix removing on system claim, limit isn't needed for that query 2014-12-03 12:01:59 -06:00
Michael Larabel
941906fbd0 phoromatic: Workaround false email mornings at midnight 2014-12-03 10:22:25 -06:00
Michael Larabel
1eb72b08d6 phoromatic-client: Fix init/upstart files 2014-12-02 13:04:29 -06:00
Michael Larabel
7fc4f12d16 phoromatic: Run In time recalculation 2014-12-02 12:43:01 -06:00
Michael Larabel
e395a7a2e8 pts-core: Tweaks 2014-12-02 12:36:19 -06:00
Michael Larabel
0dc404286b phoromatic: Tweaks 2014-12-02 12:27:25 -06:00
Michael Larabel
63d963e190 phoromatic: Main page update 2014-12-02 12:23:14 -06:00
Michael Larabel
1f3d9d9a71 pts-core: Other m7 update spins 2014-12-01 22:41:04 -06:00
Michael Larabel
508fb4ad21 Phoronix Test Suite 5.4 Milestone 7 2014-12-01 22:24:06 -06:00
Michael Larabel
bc6e94df52 phoromatic: Implement maintenance mode on server side 2014-12-01 20:15:42 -06:00
Michael Larabel
fcaa047d87 phoromatic: Add scheduled workload to main page 2014-12-01 19:47:52 -06:00
Michael Larabel
d6a7b3f956 phoromatic: Tweaks 2014-12-01 18:43:00 -06:00
Michael Larabel
47cef2726a phoromatic: Report Phoronix Test Suite version to the system component table 2014-12-01 17:44:53 -06:00
Michael Larabel
4789fcda0d phoromatic: Fixes 2014-12-01 16:47:19 -06:00
Michael Larabel
4027c28907 phoromatic: Fixes 2014-12-01 16:27:06 -06:00
Michael Larabel
be3eeed77a pts-core: Improve MAC acquisition 2014-12-01 15:18:58 -06:00
Michael Larabel
45facd61ac phoromatic: Formatting fix 2014-12-01 13:42:54 -06:00
Michael Larabel
53592eee0a phoromatic: Report next job in time on systems page 2014-12-01 13:41:14 -06:00
Michael Larabel
b3f0cc8a37 phoromatic: Rework idle support and add maintenance mode support to client 2014-12-01 13:16:15 -06:00
Michael Larabel
fa887ff97f phoromatic: Convert to hours when needed for dashboard 2014-12-01 12:35:22 -06:00
Michael Larabel
ac590ca50b phoromatic: Alert in dashboard on down system 2014-12-01 12:19:29 -06:00
Michael Larabel
c8e8c1b907 phoromatic: Add system check if down to dashboard 2014-12-01 12:17:08 -06:00
Michael Larabel
c9703435e2 phoromatic: Add legacy init.d script support 2014-12-01 11:57:54 -06:00
Michael Larabel
f56a153d46 phoromatic: Add JS timer 2014-12-01 11:03:25 -06:00
Michael Larabel
fc4736b124 phoromatic: Tweaking 2014-12-01 10:46:02 -06:00
Michael Larabel
f993fe45ec phoromatic: More dashboard features 2014-12-01 10:44:22 -06:00
Michael Larabel
6bec33e5df phoromatic: More dashboard formatting 2014-12-01 10:24:59 -06:00
Michael Larabel
809349340b phoromatic: More dashboard fun 2014-12-01 10:21:35 -06:00
Michael Larabel
718d09dba4 phoromatic: system dashboard tweaking 2014-12-01 10:09:53 -06:00
Michael Larabel
abc4d8906d phoromatic: Dashboard tweaks 2014-12-01 10:05:40 -06:00
Michael Larabel
11cfb8e855 phoromatic: Add system dashboard 2014-12-01 10:03:53 -06:00
Michael Larabel
64a081e052 phoromatic: Add new reporting features to server 2014-12-01 09:35:37 -06:00
Michael Larabel
ac45a9329b phoromatic: Update system component table 2014-11-30 22:02:47 -06:00
Michael Larabel
c9193a4c47 phoromatic: Add system component table 2014-11-30 21:59:09 -06:00
Michael Larabel
c89499c517 phoromatic: UI tweaks 2014-11-30 21:28:32 -06:00
Michael Larabel
a45757a3c4 phoromatic: Be smarter when detecting if trigger match is true 2014-11-30 21:15:41 -06:00
Michael Larabel
24d963b630 phoromatic: Tweaks 2014-11-30 18:10:23 -06:00
Michael Larabel
5a93331bdc phoromatic: Percent computation 2014-11-30 16:17:49 -06:00
Michael Larabel
611170c72d phoromatic: Report percent complete of task to server 2014-11-30 16:14:00 -06:00
Michael Larabel
ecede77d63 phoromatic: Hook in estimated time remaining for task 2014-11-30 16:03:28 -06:00
Michael Larabel
460bd7e7f9 phoromatic: Hook in estimated run time reporting 2014-11-30 15:49:36 -06:00
Michael Larabel
6de87fe870 phoromatic: System status string updates 2014-11-30 15:13:14 -06:00
Michael Larabel
07056907cb phoromatic: blockquote 2014-11-30 15:00:46 -06:00
Michael Larabel
d4198d0371 phoromatic: Show context scripts in schedule 2014-11-30 14:58:44 -06:00
Michael Larabel
7cc9ed0b4b phoromatic: CSS tweaks 2014-11-30 14:50:07 -06:00
Michael Larabel
a039727f74 phoromatic: Results today 2014-11-30 14:42:00 -06:00
Michael Larabel
8c7442d75c phoromatic: CSS update 2014-11-30 14:32:50 -06:00
Michael Larabel
b342bc002d phoromatic: Formatting improvements 2014-11-30 14:13:40 -06:00
Michael Larabel
73a92ed086 phoromatic: Update schedules page 2014-11-30 14:04:23 -06:00
Michael Larabel
b58582f449 phoromatic: Change around recently active systems 2014-11-30 13:41:23 -06:00
Michael Larabel
305e6d70a5 phoromatic: Show schedules/group on system page 2014-11-30 12:22:43 -06:00
Michael Larabel
e23c837082 phoromatic: Fixes 2014-11-30 11:44:08 -06:00
Michael Larabel
6a91ed45ec phoromatic: More fine tuning 2014-11-30 11:36:34 -06:00
Michael Larabel
45b3325510 phoromatic: Add custom Wake-On-LAN packet generator if etherwake isn't found on server 2014-11-30 11:30:09 -06:00
Michael Larabel
764a9588f6 phoromatic: More email reporting of hung systems / systems not running tests when they should 2014-11-30 11:09:14 -06:00
Michael Larabel
d268ebc2e4 phoromatic: Fix API from previous commit 2014-11-30 10:47:29 -06:00
Michael Larabel
5890af3a95 phoromatic: Adjust system checking if down 2014-11-30 10:46:07 -06:00
Michael Larabel
1e47011290 phoromatic: Prominently show "systems needing attention" from the server UI 2014-11-30 10:39:14 -06:00
Michael Larabel
a55dd4dd10 phoromatic: Don't show yesterday / week results on main page 2014-11-30 09:07:21 -06:00
Michael Larabel
4275af6f51 phoromatic: Fix for last commit 2014-11-29 23:05:04 -06:00
Michael Larabel
e601c740a4 phoromatic: Adjust recently active systems listing 2014-11-29 23:04:13 -06:00
Michael Larabel
1d46fdf0a9 phoromatic: Tweaks 2014-11-29 23:01:50 -06:00
Michael Larabel
e2217ddf33 phoromatic: Main page tweaks 2014-11-29 22:57:37 -06:00
Michael Larabel
eed8c5ef83 phoromatic: abs() the vari 2014-11-29 22:52:45 -06:00
Michael Larabel
1bbcdfa458 phoromatic: Increase size to report flagged results 2014-11-29 22:50:22 -06:00
Michael Larabel
4b6459dde6 pts-core: Don't prompt when dependencies fail 2014-11-29 19:08:13 -06:00
Michael Larabel
341dda1eff phoromatic: Give time to sleep after shutdown/reboot 2014-11-28 18:21:14 -06:00
Michael Larabel
9914b80db7 phoromatic: Allow blocking poweroffs by touching modules-data/phoromatic/block-poweroff 2014-11-28 18:04:01 -06:00
Michael Larabel
3805f7002d phoromatic: Styling fixes on the Phoromatic systems page 2014-11-28 17:41:42 -06:00
Michael Larabel
e6dbd74393 phoromatic: Add sleep between waking systems to make sure power doesn't spike all at the same time 2014-11-28 13:30:47 -06:00
Michael Larabel
c480868d2f phoromatic: Need to pass $elapsed_benchmark_time to upload_test_result 2014-11-28 12:03:35 -06:00
Michael Larabel
e0df691a0b phoromatic: Upstart job tweaking 2014-11-28 11:20:16 -06:00
Michael Larabel
b2961f1936 pts-core: Don't install Upstart files by default due to enabling both server/clients by default 2014-11-28 10:52:06 -06:00
Michael Larabel
e8480f0855 pts-core: Revise phoromatic Upstart files 2014-11-28 09:27:12 -06:00
Michael Larabel
00214bd8c1 phoromatic: Allow IP/MAC based system claiming from Phoromatic Server UI 2014-11-27 22:31:16 -06:00
Michael Larabel
d5b7197793 phoromatic: Tweaks 2014-11-27 21:42:50 -06:00
Michael Larabel
c6edeeef1c phoromatic: Refactor server connection setup 2014-11-27 21:24:30 -06:00
Michael Larabel
4edfa4c2b2 phoromatic: Add "configure Phoromatic client via SSH" to Phoromatic Server 2014-11-27 17:51:37 -06:00
Michael Larabel
64a6f5c197 phoromatic: Allow Phoromatic Servers to be specified via a simple text file at PTS_USER_PATH/phoromatic-servers 2014-11-27 17:05:34 -06:00
Michael Larabel
31ac494408 phoromatic: Track elapsed time during the testing process, report to Phoromatic Server 2014-11-27 16:41:35 -06:00
Michael Larabel
85d576ec68 phoromatic: Support for disabling accounts via rootadmin 2014-11-27 11:32:41 -06:00
Michael Larabel
d9d48e060d phoromatic: AdminLevel adjustments 2014-11-27 11:19:58 -06:00
Michael Larabel
03393a00cc phoromatic: Fix for rootadmin from not showing the first account 2014-11-26 13:05:41 -06:00
Michael Larabel
bf2e86002b phoromatic: Improve download-cache for large files 2014-11-26 10:54:47 -06:00
Michael Larabel
e62a1b9beb download-cache: Improvements 2014-11-26 09:25:17 -06:00
Michael Larabel
66ee94b15d phoromatic: Client module update 2014-11-26 08:53:37 -06:00
Michael Larabel
1bd6983b35 phoromatic: Add support for viewing system logs from the result page link on right hand side 2014-11-25 11:46:08 -06:00
Michael Larabel
e236dc922c phoromatic: Log improvements 2014-11-25 11:34:45 -06:00
Michael Larabel
28a90e2cc8 phoromatic: Add logs page 2014-11-25 11:29:02 -06:00
Michael Larabel
80b17dedb8 phoromatic: Arg fix 2014-11-25 11:18:46 -06:00
Michael Larabel
2457f27557 phoromatic: List context logs 2014-11-25 11:08:10 -06:00
Michael Larabel
492e8ab3e6 phoromatic: Allow logging of Phoromatic set user context execution 2014-11-25 10:35:13 -06:00
Michael Larabel
edf75419c8 phoromatic: Use pts_client::shell_exec() in user_set_context() 2014-11-25 10:03:28 -06:00
Michael Larabel
afbb3d439e phoromatic: Enforce better timing on WoL 2014-11-24 19:46:58 -06:00
Michael Larabel
22114366c7 phoromatic: Set busy time out on DB connection 2014-11-24 19:26:50 -06:00
Michael Larabel
ca36aeab22 phoromatic: Fix 2014-11-24 19:03:58 -06:00
Michael Larabel
3d22c14436 phoromatic: Don't create a persistent DB connection in the event server 2014-11-24 19:02:21 -06:00
Michael Larabel
b5cb2232a1 phoromatic: DB flags fix 2014-11-24 18:53:57 -06:00
Michael Larabel
bcc0d398ad phoromatic: Allow read-only DB connections 2014-11-24 18:51:20 -06:00
Michael Larabel
9ed9516700 phoromatic: Add option to network wake on lan (WoL) systems when needed for testing 2014-11-24 18:43:32 -06:00
Michael Larabel
aff9bc8de9 phoromatic: Add option to power off systems when no more scheduled tests are scheduled for the day 2014-11-24 17:47:18 -06:00
Michael Larabel
4947d4ef73 phoromatic: Add notification option to email to users when systems appear hung for more than an hour 2014-11-24 17:29:46 -06:00
Michael Larabel
2cb5deeb71 phoromatic: Report network's Wake-On-LAN information to Phoromatic Server 2014-11-24 16:10:40 -06:00
Michael Larabel
2ab82ed6a5 phoromatic: Report systems MAC address from the systems page 2014-11-24 09:11:23 -06:00
Michael Larabel
32d9a75975 phoronix-test-suite: Fix for mktemp on Darwin / OS X 2014-11-24 08:54:50 -06:00
Michael Larabel
e636c0c163 phoromatic: Fix salted password issue 2014-11-21 14:52:30 -06:00
Michael Larabel
223d169c3a phoromatic: String change 2014-11-21 09:56:34 -06:00
Michael Larabel
b85c72fa23 phoromatic: Allow changing the admin level for users by the main administrator from the Users page 2014-11-21 09:52:05 -06:00
Michael Larabel
919d4c0b4d phoromatic: Add add_new_users_to_account option for adding new users automatically to existing account 2014-11-21 09:34:12 -06:00
Michael Larabel
504e25bfcf pts-core: Assume http:// on download files if not set 2014-11-19 08:58:39 -06:00
Michael Larabel
0b00debf50 pts-core: Check for file before attempting to filesize() it 2014-11-19 08:53:51 -06:00
Michael Larabel
b7c8025aa0 Phoronix Test Suite 5.4 Milestone 6 2014-11-19 08:11:56 -06:00
Michael Larabel
2f354aec02 pts-core: Avoid ZIP warnings, just nuke the empty temp file 2014-11-18 20:32:22 -06:00
Michael Larabel
8d03af2570 pts-core: Append / to temp file dir 2014-11-18 20:24:12 -06:00
Michael Larabel
370199a77b pts-core: ZIP improvements for RHEL/Fedora 2014-11-18 20:22:37 -06:00
Michael Larabel
dc52fb58ef phoromatic: Ensure pts_logger is properly used 2014-11-18 20:08:00 -06:00
Michael Larabel
deea31eb01 pts-core: Use system's zip library if PHP ZIP is not available 2014-11-18 20:05:59 -06:00
Michael Larabel
ec592336cf phoromatic: Warning when system log ZIP file fails to produce 2014-11-18 19:41:34 -06:00
Michael Larabel
eae06fdfb8 phoromatic: Fix 2014-11-18 19:35:47 -06:00
Michael Larabel
04ed24fcbc phoromatic: Fixes 2014-11-18 19:24:52 -06:00
Michael Larabel
3134144a58 phoromatic: Explore network setting improvements 2014-11-18 19:22:30 -06:00
Michael Larabel
c4c2912817 phoromatic: Fix 2014-11-18 19:21:08 -06:00
Michael Larabel
48ed4dc83b phoromatic: More tweaking 2014-11-18 19:11:13 -06:00
Michael Larabel
fe98e95aaf phoromatic: Add reboot and shutdown commands to Phoromatic module 2014-11-18 10:41:02 -06:00
Michael Larabel
707001b7d0 phoromatic: Copy paste fail 2014-11-18 10:29:08 -06:00
Michael Larabel
7c71ecc710 phoromatic: More updates 2014-11-18 10:27:42 -06:00
Michael Larabel
660c4bbb73 phoromatic: More tweaking of connection establishment 2014-11-18 10:20:34 -06:00
Michael Larabel
4b6bec708a phoromatic: Trim the file of last-phoromatic-server 2014-11-18 10:16:15 -06:00
Michael Larabel
ffdb2485fd phoromatic: Tweaking 2014-11-18 10:13:23 -06:00
Michael Larabel
4066bcebdd pts-core: Print log file location 2014-11-18 10:07:31 -06:00
Michael Larabel
f5ff5338a4 phoromatic: Remember last successful Phoromatic Server connection 2014-11-18 10:04:11 -06:00
Michael Larabel
5c59eee778 pts-core: Enhance PHP_BIN detection 2014-11-18 06:42:38 -06:00
Michael Larabel
66e727caa1 phoromatic: Phoromatic-client requires network-online.target 2014-11-17 22:17:16 -06:00
Michael Larabel
30fbfb7296 pts-core: Tweak 2014-11-17 21:44:54 -06:00
Michael Larabel
ecd36e8ba5 phoromatic: Add PHOROMATIC_PROCESS 2014-11-17 21:44:15 -06:00
Michael Larabel
9a0bc3a5dd phoromatic: Improve bool handling 2014-11-17 21:27:23 -06:00
Michael Larabel
577ff051e1 phoromatic: Fix for deactivating options on settings page 2014-11-17 21:19:50 -06:00
Michael Larabel
f06986ed80 phoromatic: Add "Upload results to OpenBenchmarking.org" option to settings page 2014-11-17 20:05:13 -06:00
Michael Larabel
2a4ad1005b phoromatic: Fix 2014-11-17 19:37:11 -06:00
Michael Larabel
d6eb12dba0 phoromatic: Show recent triggers on a test schedule's page 2014-11-17 19:33:15 -06:00
Michael Larabel
1400493f26 phoromatic: Expose all possible video modes as test options 2014-11-17 19:25:07 -06:00
Michael Larabel
060919ddb5 phoromatic: Ensure DISPLAY=:0 when running the phoromatic-client.service 2014-11-17 19:11:29 -06:00
Michael Larabel
f9ae8e546e phoromatic: Let the module sleep 60 seconds if system was booted in past 5 minutes if it's still bringing up services 2014-11-17 19:00:02 -06:00
Michael Larabel
8b40053209 phoromatic: Increase memory_limit on download cache downloads 2014-11-17 18:50:54 -06:00
Michael Larabel
46cb4fecc2 pts-core: Enhanced make-download-cache 2014-11-17 18:35:23 -06:00
Michael Larabel
d5defe52ac phoromatic: download-cache path addition 2014-11-17 18:16:21 -06:00
Michael Larabel
2ed5a4ec07 phoromatic: Various changes 2014-11-17 17:12:27 -06:00
Michael Larabel
54cd526cce phoromatic: Improve session_save_path handling 2014-11-17 12:00:43 -06:00
Michael Larabel
c43511ef95 phoromatic: Fix for session_save_path() issue on EL6 2014-11-17 11:55:13 -06:00
Michael Larabel
df2255b369 phoromatic: Upstart testing 2014-11-17 11:49:24 -06:00
Michael Larabel
ab6f52ea4a pts-core: Too quick of earlier commit 2014-11-17 11:43:43 -06:00
Michael Larabel
84b5580333 pts-core: Check for PHP Sockets support 2014-11-17 11:42:18 -06:00
Michael Larabel
3ac89e0041 phoromatic: Allow the HTTP / WebSocket ports to be modified from the webUI when logging in as rootadmin 2014-11-17 11:28:34 -06:00
Michael Larabel
000f4ba487 phoromatic: Allow the network proxy details to be modified from the webUI when logging in as rootadmin 2014-11-17 10:57:51 -06:00
Michael Larabel
baeb3da5b6 phoromatic: Allow the download cache location to be modified from the webUI when logging in as rootadmin 2014-11-17 10:34:44 -06:00
Michael Larabel
d7a04d678d phoromatic: Allow the PhoromaticStorage location to be modified from the webUI when logging in as rootadmin 2014-11-17 10:12:32 -06:00
Michael Larabel
d32846a94e phoromatic: Tweaks 2014-11-17 09:24:32 -06:00
Michael Larabel
e7e201d9a1 phoromatic: Add "Run Test Schedule Now" button to test schedule page to allow for easy one-time/manual testing 2014-11-15 09:48:39 -06:00
Michael Larabel
fd9e5a6685 phoromatic: Add some basic statistics to the rootadmin page 2014-11-11 16:19:30 -06:00
Michael Larabel
3f80e41cc4 pts-core: Fix result merging when PTS test identifier is null, use title string instead as identifier 2014-11-11 10:18:12 -06:00
Michael Larabel
dce1e25345 phoromatic: Avoid name collision with Phoromatic Server avahi instances 2014-11-10 19:39:09 -06:00
Michael Larabel
699d9a7822 Phoronix Test Suite 5.4 Milestone 5 2014-11-10 19:02:07 -06:00
Michael Larabel
d319839682 phoromatic: Add basic root administrator support to the Phoronix web interface 2014-11-10 17:49:26 -06:00
Michael Larabel
f411449798 phoromatic-server: Chmod the SQLite file later on 2014-11-10 16:04:12 -06:00
Michael Larabel
0867cc3749 pts-core: Avoid ~/.phoronix-test-suite/ under systemd 2014-11-10 16:02:38 -06:00
Michael Larabel
83aa121740 pts-core: chmod 0600 the pt2so and Phoromatic SQLite files 2014-11-10 15:55:38 -06:00
Michael Larabel
9bd36df56c phoromatic: Print message whe no servers auto found 2014-11-10 13:42:58 -06:00
Michael Larabel
17b120cbce phoromatic: Avahi service as phoromatic-server 2014-11-10 13:33:51 -06:00
Michael Larabel
3ff9299457 phoromatic: Hopefully Avahi now works nicely... 2014-11-10 13:30:21 -06:00
Michael Larabel
2a043d47c0 phoromatic: Start up tweaks 2014-11-10 13:01:27 -06:00
Michael Larabel
7d1365de3a phoromatic: Whoops 2014-11-10 12:44:56 -06:00
Michael Larabel
76eb5d7bca phoromatic: Fixes 2014-11-10 12:37:15 -06:00
Michael Larabel
b7f86b7634 phoromatic: Improve SQLite message for EL users 2014-11-10 12:21:00 -06:00
Michael Larabel
65f7cca658 phoromatic: Startup optimization 2014-11-10 12:17:30 -06:00
Michael Larabel
930ae1de35 phoromatic: Use a randomly chosen available port by default when starting the Phoromatic Server if no ports are defined 2014-11-10 12:14:56 -06:00
Michael Larabel
d3ff37c070 pts-core: Don't print recommended extensions when not needed when running as a daemonized server process 2014-11-10 11:57:25 -06:00
Michael Larabel
8f187721b0 pts-core: More work for avoiding HOME attempts on systemd server use 2014-11-10 11:46:17 -06:00
Michael Larabel
56b9857fa4 phoromatic: Show file/path locations when starting the Phoromatic Server 2014-11-10 11:42:10 -06:00
Michael Larabel
195ec1e1ec phoromatic: Ignore "attempting to redownload" error messages 2014-11-09 20:52:21 -06:00
Michael Larabel
60b6561b89 pts-core: Detect if no bytes received when downloading files from the cache 2014-11-09 20:48:00 -06:00
Michael Larabel
c5bcd42382 pts-core: Tweaks 2014-11-08 16:18:59 -06:00
Michael Larabel
3d94b9a9f7 phoromatic: Make unscheduled test result tables and graphs render correctly 2014-11-08 10:17:03 -06:00
Michael Larabel
9cbba0eebf phoromatic: Allow other/unscheduled test results to be uploaded to the Phoromatic Server using the phoromatic.upload-result sub-command 2014-11-08 10:09:16 -06:00
Michael Larabel
4ed6b8f741 phoromatic: Add result flagging to the main page 2014-11-07 21:21:02 -06:00
Michael Larabel
997f4a2cc2 pts_ResultFileTable: another potential crash fix 2014-11-07 18:29:10 -06:00
Michael Larabel
19560fa00d phoromatic: Formatting changes 2014-11-07 18:26:14 -06:00
Michael Larabel
d0237ed24a phoromatic: Add test count to the schedules page 2014-11-07 18:02:06 -06:00
Michael Larabel
76ea6ca9d3 pts-core: More improvements 2014-11-07 17:50:36 -06:00
Michael Larabel
e5facf31e9 phoromatic: More 2014-11-07 11:50:43 -06:00
Michael Larabel
acc512b600 phoromatic: More design work 2014-11-07 11:35:23 -06:00
Michael Larabel
9538dd7285 phoromatic: More styling work 2014-11-07 11:21:43 -06:00
Michael Larabel
66ff69471d phoromatic: Change default font weight 2014-11-07 10:52:31 -06:00
Michael Larabel
de54acf175 pts-core: Prefer firefox over Epiphany browser 2014-11-07 10:03:07 -06:00
Michael Larabel
72e6047c8c phoromatic: Add "show only results with variation" to result viewing page 2014-11-07 10:01:34 -06:00
Michael Larabel
871d630551 phoromatic: Table'ize users list 2014-11-06 20:34:57 -06:00
Michael Larabel
d3002a8e65 phoromatic: Stale cache busting 2014-11-06 20:32:46 -06:00
Michael Larabel
f4e6d8921e phoromatic: More UI improvements 2014-11-06 20:27:08 -06:00
Michael Larabel
e6e0ac37ae phoromatic: Add times viewed to results 2014-11-06 20:18:59 -06:00
Michael Larabel
394e295811 phoromatic: Improve formatting of lists 2014-11-06 20:13:00 -06:00
Michael Larabel
8170db2e7c phoromatic: Styling tweaks 2014-11-06 17:43:06 -06:00
Michael Larabel
c175c8527c phoromatic: Allow easily comparing a result file to other results for that given schedule ID 2014-11-06 17:30:11 -06:00
Michael Larabel
475d99af59 pts_Graph: Shrink size of sub title text strings when they're too long 2014-11-06 17:00:32 -06:00
Michael Larabel
b30cbf638f pts-core: Various tweaks 2014-11-06 16:43:23 -06:00
Michael Larabel
516e39d737 pts-core: Use a temp directory when launching server services 2014-11-06 14:38:21 -06:00
Michael Larabel
1fd3fd9588 phoromatic: Avoid a potential error 2014-11-06 14:16:03 -06:00
Michael Larabel
ee2dfbf11f phoromatic: Implement email notifications on new systems added 2014-11-06 13:58:41 -06:00
Michael Larabel
0f201375e1 phoromatic: Implement email notifications on system generated errors/warnings 2014-11-06 13:48:24 -06:00
Michael Larabel
5111bcb6f3 phoromatic: Implement email notifications on result uploads 2014-11-06 13:37:38 -06:00
Michael Larabel
2fdc54f62d phoromatic: Start on HTML mail improvements 2014-11-06 13:00:47 -06:00
Michael Larabel
743409ef1c Rebuild documentation for PTS 5.4 M4 2014-11-05 21:11:58 -06:00
Michael Larabel
d88d5a756d Phoronix Test Suite 5.4 Milestone 4 2014-11-05 21:11:28 -06:00
Michael Larabel
5a6c8dd983 pts-core: More work 2014-11-05 21:10:53 -06:00
Michael Larabel
4490dde69c phoromatic: Support for jumping to test results page for XXX past days of test from schedule page 2014-11-05 20:26:35 -06:00
Michael Larabel
8654c554ea phoromatic: Add more options to the result page 2014-11-05 18:52:01 -06:00
Michael Larabel
e3b968802a phoromatic: Add normalize results option to the phoromatic result page 2014-11-05 18:38:16 -06:00
Michael Larabel
387d386b8a phoromatic: Tweaks 2014-11-05 18:17:53 -06:00
Michael Larabel
38fcbc6412 pts-core: Add PhoromaticStorage option to Phoronix Test Suite user configuration XML file 2014-11-05 18:04:22 -06:00
Michael Larabel
3f1e485e9a pts-core: Start working on support for using standard Linux file-system hierarchy when running as root as a service 2014-11-05 17:54:24 -06:00
Michael Larabel
568daeb0c8 pts-core: Add 3840 x 2160 (4K UHD) to more of the mode-setting fall-back modes 2014-10-28 18:38:24 -05:00
Michael Larabel
74b38adc61 phoromatic: Implement "Power User" account level 2014-10-25 19:09:26 -05:00
Michael Larabel
ec48bda85b phoromatic: Improve result identifier / title reporting for results 2014-10-25 19:02:16 -05:00
Michael Larabel
81988aa10e phoromatic: 4 username length 2014-10-24 14:59:27 -05:00
Michael Larabel
9af41ff8c0 phoromatic: Add today's scheduled events to the side bar 2014-10-24 11:06:36 -05:00
Michael Larabel
ab4f396e74 phoromatic: Add a schedule overview to the schedules page 2014-10-24 10:52:53 -05:00
Michael Larabel
e47faa11b7 phoromatic: UI updates by Fatima Sheremetyeva 2014-10-23 19:07:59 -05:00
Michael Larabel
5ceaa9c69d pts-core: Update TODO 2014-10-22 21:36:34 -05:00
Michael Larabel
204878e743 phoromatic: Various improvements 2014-10-22 20:18:30 -05:00
Michael Larabel
c9f4ebdcd4 Install systemd service files to /usr/lib/systemd/system/ 2014-10-22 17:02:34 -05:00
Michael Larabel
b6e8f60b72 phoromatic: Usernames need to be at least four characters long 2014-10-22 16:46:45 -05:00
Michael Larabel
e94490d55d pts-core: Workaround pass by ref issue 2014-10-22 11:08:32 -05:00
Michael Larabel
86968247fd phodevi: IBM POWER hardware detection improvements 2014-10-22 11:04:30 -05:00
Michael Larabel
d126f227b0 phoromatic: Condense account activity schedules 2014-10-21 21:58:16 -05:00
Michael Larabel
e61c148411 phoromatic: report test install errors to server 2014-10-21 21:42:48 -05:00
Michael Larabel
d4c0b8aa9b phoromatic: Don't attempt to re-run test schedules on clients if they previously reported errors/warnings for that schedule / trigger ID combination 2014-10-21 21:37:10 -05:00
Michael Larabel
7b163e7475 phoromatic: Show system errors/warnings from the Phoromatic web UI 2014-10-21 21:20:31 -05:00
Michael Larabel
8cc2f02f1f phoromatic: Report benchmarking / test run errors to server 2014-10-21 21:04:05 -05:00
Michael Larabel
e463d3c261 pts-core: Whoops 2014-10-21 20:37:25 -05:00
Michael Larabel
1142786b55 pts-core: Don't pass by ref 2014-10-21 20:36:45 -05:00
Michael Larabel
8f2a1e24b7 pts-core: Support passing test run error messages to modules via __event_run_error hook 2014-10-21 20:35:56 -05:00
Michael Larabel
6d05f5e6e7 phoromatic: Reporting of overall result counts for given test schedules 2014-10-21 19:16:48 -05:00
Nick Zatkovich
421734cbe1 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2014-02-19 05:35:03 -08:00
NickZ
712bed1f82 Merge pull request #1 from phoronix-test-suite/master
how does github work
2014-02-16 15:18:28 -08:00
497 changed files with 43615 additions and 20273 deletions

View File

@@ -1,8 +1,8 @@
Copyright 2008 - 2014 by Phoronix Media.
Copyright 2008 - 2018 by Phoronix Media.
Lead Architects:
- Michael Larabel <michael@phoronix.com>
- Matthew Tippett <matthew@phoronix.com>
There's also other individuals and organizations who have contributed patches, ideas, and made other contributions to the Phoronix Test Suite. These names are mentioned in the HTML / PDF documentation.
There's also other individuals and organizations who have contributed patches, ideas, and made other contributions to the Phoronix Test Suite.

2178
CHANGE-LOG

File diff suppressed because it is too large Load Diff

1653
ChangeLog Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,8 @@
Phoronix Test Suite 5.4.0m3
# Phoronix Test Suite 8.2.0m2
http://www.phoronix-test-suite.com/
#####################################
The Phoronix Test Suite is the most comprehensive testing and benchmarking
platform available for Linux, Solaris, Mac OS X, and BSD operating systems. The
The **Phoronix Test Suite** is the most comprehensive testing and benchmarking
platform available for Linux, Solaris, OS X, and BSD operating systems. The
Phoronix Test Suite allows for carrying out tests in a fully automated manner
from test installation to execution and reporting. All tests are meant to be
easily reproducible, easy-to-use, and support fully automated execution. The
@@ -28,18 +27,18 @@ able to upload their test results, profiles, and suites to OpenBenchmarking.org.
A test profile is a single test that can be executed by the Phoronix Test Suite
-- with a series of options possible within every test -- and a test suite is a
seamless collection of test profiles and/or additional test suites. A test
profile consists of a set of bash/shell scripts and XML files while a test suite
profile consists of a set of Bash/shell scripts and XML files while a test suite
is a single XML file.
OpenBenchmarking.org <http://www.openbenchmarking.org/> also allows for
[OpenBenchmarking.org](http://www.openbenchmarking.org/) also allows for
conducting side-by-side result comparisons, a central location for storing and
sharing test results, and collaborating over test data. Phoromatic
<http://www.phoromatic.com/> is a complementary platform to OpenBenchmarking.org
and the Phoronix Test Suite for interfacing with Phoronix Test Suite client(s)
to automatically execute test runs on a timed, per-commit, or other
trigger-driven basis. Phoromatic is designed for enterprise and allows for the
easy management of multiple networked systems running Phoronix Test Suite
clients via a single web-based interface.
sharing test results, and collaborating over test data.
[Phoromatic](http://www.phoromatic.com/) is a complementary platform to
OpenBenchmarking.org and the Phoronix Test Suite for interfacing with Phoronix
Test Suite client(s) to automatically execute test runs on a timed, per-commit,
or other trigger-driven basis. Phoromatic is designed for enterprise and allows
for the easy management of multiple networked systems running Phoronix Test
Suite clients via a single web-based interface.
Professional support and custom engineering for the Phoronix Test Suite,
Phoromatic, and OpenBenchmarking.org is available by contacting
@@ -47,10 +46,9 @@ Phoromatic, and OpenBenchmarking.org is available by contacting
Full details on the Phoronix Test Suite setup and usage is available from the
included HTML/PDF documentation within the phoronix-test-suite package and from
the Phoronix Test Suite web-site.
the Phoronix Test Suite website.
INSTALLATION & SETUP:
#####################
## Installation & Setup
The Phoronix Test Suite is supported on Linux, *BSD, Solaris, Mac OS X, and
Windows systems. However, the most full-featured and well supported operating
@@ -63,32 +61,31 @@ architectures.
The Phoronix Test Suite can be installed for system-wide usage or run locally
without installation from the extracted tar.gz/zip package. The only hard
dependency on the Phoronix Test Suite is having command-line support for PHP
(PHP 5.2+) installed. A complete PHP stack (e.g. with web-server) is NOT needed,
but merely the PHP command-line support, which is widely available from
operating system package managers under the name php, php5-cli, or php5.
(PHP 5.3+) installed. A complete PHP stack (e.g. with web server) is **not**
needed, but merely the PHP command-line support, which is widely available from
operating system package managers under the name `php`, `php5-cli`, or `php5`.
USAGE:
######
## Usage
The process to download, install/setup, execute, and report the results of a
benchmark can be as simple as a command such as *phoronix-test-suite benchmark
smallpt* to run a simple CPU test profile. If wishing to simply install a test,
it's a matter of running *phoronix-test-suite install <test or suite name>* and
to run it's *phoronix-test-suite run <test or suite name>*. There's also a batch
mode for non-interactive benchmarking by first running *phoronix-test-suite
batch-setup* and then using the *batch-run* sub-command rather than *run*.
benchmark can be as simple as a command such as `phoronix-test-suite benchmark
smallpt` to run a simple CPU test profile. If wishing to simply install a test,
it's a matter of running `phoronix-test-suite install <test or suite name>` and
to run it's `phoronix-test-suite run <test or suite name>`. There's also a batch
mode for non-interactive benchmarking by first running `phoronix-test-suite
batch-setup` and then using the `batch-run` sub-command rather than `run`.
Viewing installed system hardware and software is available via
*phoronix-test-suite system-info* or *phoronix-test-suite detailed-system-info*
for greater verbosity.
`phoronix-test-suite system-info`.
Facilitating a result comparison from OpenBenchmarking.org can be done by
running, for example, *phoronix-test-suite benchmark 1204293-BY-PHORONIX357* if
running, for example, `phoronix-test-suite benchmark 1204293-BY-PHORONIX357` if
wishing to compare the results of the
*http://openbenchmarking.org/result/1204293-BY-PHORONIX357* result file.
`http://openbenchmarking.org/result/1204293-BY-PHORONIX357` result file.
Additional information is available from the Phoronix Test Suite web-site
Additional information is available from the Phoronix Test Suite website
<http://www.phoronix-test-suite.com/> and the material bundled within the
phoronix-test-suite/documentation/ directory. A man page is also bundled with
the phoronix-test-suite software.
`phoronix-test-suite/documentation/` directory or via
<http://www.phoronix-test-suite.com/documentation/>. A man page is also bundled
with the phoronix-test-suite software.

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2014, Phoronix Media
Copyright (C) 2008 - 2014, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -23,7 +23,7 @@
if(!is_executable("phoronix-test-suite") || !is_dir("pts-core/"))
{
echo "\nYou must run this script from the root directory of the phoronix-test-suite/ folder!\n";
echo "Example: php5 pts-core/static/scripts/package-build-deb.php\n";
echo "Example: php deploy/deb-package/build-package-deb.php\n";
exit(0);
}
if(!is_executable('/usr/bin/dpkg'))
@@ -31,6 +31,11 @@ if(!is_executable('/usr/bin/dpkg'))
echo PHP_EOL . "dpkg must be present on the system to generate the phoronix-test-suite Debian package." . PHP_EOL . PHP_EOL;
exit;
}
if(!is_executable('/usr/bin/fakeroot'))
{
echo PHP_EOL . "fakeroot must be present on the system to generate the phoronix-test-suite Debian package." . PHP_EOL . PHP_EOL;
exit;
}
@require("pts-core/pts-core.php");
@@ -55,16 +60,17 @@ shell_exec("chmod +x /tmp/pts-deb-builder/usr/bin/phoronix-test-suite");
$control_file = "Package: phoronix-test-suite\n";
$control_file .= "Version: " . $pts_version . "\n";
$control_file .= "Section: Utilities\n";
$control_file .= "Installed-Size: " . shell_exec("cd /tmp/pts-deb-builder/; du -s | cut -f 1");
$control_file .= "Priority: optional\n";
$control_file .= "Architecture: all\n";
$control_file .= "Depends: php5-cli, php5-gd, php5-json\n";
$control_file .= "Recommends: build-essential\n";
$control_file .= "Depends: php-cli|php5-cli,php5-cli|php-xml\n";
$control_file .= "Recommends: build-essential, php-gd|php5-gd\n";
$control_file .= "Maintainer: Phoronix Media <trondheim-pts@phoronix-test-suite.com>\n";
$control_file .= "Description: An Automated, Open-Source Testing Framework\n " . @str_replace("\n", " ", file_get_contents('pts-core/static/short-description.txt')) . "\n";
$control_file .= "Homepage: http://www.phoronix-test-suite.com/ \n";
file_put_contents("/tmp/pts-deb-builder/DEBIAN/control", $control_file);
shell_exec("dpkg --build /tmp/pts-deb-builder ../phoronix-test-suite_" . $pts_version . "_all.deb");
shell_exec("fakeroot dpkg --build /tmp/pts-deb-builder ../phoronix-test-suite_" . $pts_version . "_all.deb");
shell_exec("rm -rf /tmp/pts-deb-builder");
?>

29
deploy/deployments.md Normal file
View File

@@ -0,0 +1,29 @@
# Pre-Scripted Phoronix Test Suite / Phoromatic Deployments
## deb-package: Generate A Debian/Ubuntu Package
Running `php deploy/deb-package/build-package-deb.php` from the main `phoronix-test-suite/` directory will generate a basic Phoronix-Test-Suite Debian package. This script depends upon `fakeroot` and `dpkg` being present on the system.
## rpm-package: Generate A RedHat/Fedora RPM Package
Running `php deploy/rpm-package/build-package-rpm.php` from the main `phoronix-test-suite/` directory will generate a basic Phoronix-Test-Suite RPM package for Red Hat / Fedora based distributions. This script depends upon `rpmbuild` being present on the system.
## phoromatic-upstart: Reference Upstart job files for Phoromatic
The `*.conf` files provide basic `phoromatic-client` and `phoromatic-server` job files for Upstart-powered Linux systems looking to deploy the Phoromatic on either the front or back-end. Read the Phoronix Test Suite documentation for more details.
## phoromatic-systemd: Reference systemd service files for Phoromatic
The `*.service` files provide basic `phoromatic-client` and `phoromatic-server` job files for systemd-based Linux systems looking to deploy Phoromatic for controlling the Phoronix Test Suite.
## phoromatic-initd: Reference sysvinit script for Phoromatic
The files provide basic `phoromatic-client` /etc/init.d implementation for older Linux systems.
## JuJu
Ubuntu JuJu deployment charm for the Phoronix Test Suite.
## farm-system-customizations: Example files of common system changes made to systems in the LinuxBenchmarking.com farm
Various scripts commonly used by the Phoronix reference farm / LinuxBenchmarking.com for reference purposes.

View File

@@ -0,0 +1,27 @@
Section "Monitor"
Identifier "Monitor0"
Modeline "1920x1080" 174.83 1920 2056 2248 2536 1080 1081 1084 1149 # 174.83 MHz, 68.94 kHz, 60.00 Hz
Option "PreferredMode" "1920x1080"
Option "Enable" "true"
EndSection
Section "Device"
Identifier "Device0"
Driver "intel" #Choose the driver used for this monitor
Option "DDC" "0"
Option "Virtualheads" "1"
Option "Vsync" "0"
Option "SwapbuffersWait" "0"
Option "DRI" "3"
EndSection
Section "Screen"
Identifier "Screen0" #Collapse Monitor and Device section to Screen section
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24 #Choose the depth (16||24)
SubSection "Display"
Depth 24
Modes "1920x1080" #Choose the resolution
EndSubSection
EndSection

View File

@@ -0,0 +1,23 @@
Section "Device"
Identifier "Device0"
Driver "radeon"
Option "SwapBuffersWait" "0"
Option "DRI "3"
EndSection
Section "Monitor"
Identifier "Monitor0"
Option "enable" "true"
Modeline "1920x1080" 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
EndSection
Section "Screen"
Identifier "Fake"
Device "Device0"
Monitor "Monitor0"
Option "ConnectedMonitor" "Monitor0"
SubSection "Display"
Depth 24
Modes "1920x1080"
EndSubSection
EndSection

View File

@@ -0,0 +1,10 @@
#!/bin/sh
sudo apt-get install openssh-server git-core php5-cli
echo "GRUB_RECORDFAIL_TIMEOUT=0" >> /etc/default/grub
update-grub
sudo passwd
# check if needing "tty -s &&" for auto log-in user in ~/.profile

View File

@@ -0,0 +1,73 @@
#!/bin/sh
#
# /etc/init.d/phoromatic-client
# Init script for Phoronix Test Suite Phoromatic client
#
# chkconfig: 2345 95 05
# description: Starting the Phoronix Test Suite Phoromatic client
#
# processname: phoromatic-client
# config: /etc/phoronix-test-suite.xml
# source function library
. /etc/rc.d/init.d/functions
RETVAL=0
prog="phoromatic-client"
start() {
echo -n $"Starting $prog:"
env DISPLAY=:0
/usr/bin/phoronix-test-suite phoromatic.connect
RETVAL=$?
[ "$RETVAL" = 0 ] && touch /var/lock/subsys/$prog
echo
}
stop() {
echo -n $"Stopping $prog:"
killproc $prog -TERM
RETVAL=$?
[ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/$prog
echo
}
reload() {
echo -n $"Reloading $prog:"
killproc $prog -HUP
RETVAL=$?
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
reload)
reload
;;
condrestart)
if [ -f /var/lock/subsys/$prog ] ; then
stop
sleep 6
start
fi
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
RETVAL=1
esac
exit $RETVAL

View File

@@ -0,0 +1,6 @@
#!/bin/sh
# PROVIDE: phoromatic-client
# REQUIRE: LOGIN
/usr/bin/phoronix-test-suite phoromatic.connect

View File

@@ -1,11 +1,12 @@
[Unit]
Description=Phoronix Test Suite Phoromatic Client
After=syslog.target
After=network.target
After=syslog.target network-online.target
Documentation=man:phoronix-test-suite(1)
[Service]
TimeoutStartSec=300
ExecStart=/usr/bin/phoronix-test-suite phoromatic.connect
Environment=DISPLAY=:0
[Install]
WantedBy=multi-user.target

View File

@@ -1,11 +1,12 @@
[Unit]
Description=Phoronix Test Suite Phoromatic Server
After=syslog.target
After=network.target
After=syslog.target network.target
Documentation=man:phoronix-test-suite(1)
[Service]
TimeoutStartSec=300
ExecStart=/usr/bin/phoronix-test-suite start-phoromatic-server
Restart=on-failure
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,10 @@
# description "Phoronix Test Suite Phoromatic Client"
# author "Phoronix Media"
start on (local-filesystems and net-device-up IFACE!=lo)
stop on stopping network
stop on starting shutdown
env DISPLAY=:0
exec /usr/bin/phoronix-test-suite phoromatic.connect

View File

@@ -0,0 +1,8 @@
description "Phoronix Test Suite Phoromatic Client"
author "Phoronix Media"
start on runlevel [35]
stop on runlevel [0126]
env DISPLAY=:0
exec /usr/bin/phoronix-test-suite phoromatic.connect

View File

@@ -0,0 +1,10 @@
# description "Phoronix Test Suite Phoromatic Server"
# author "Phoronix Media"
start on (local-filesystems and net-device-up IFACE!=lo)
stop on stopping network
stop on starting shutdown
respawn
exec /usr/bin/phoronix-test-suite start-phoromatic-server

View File

@@ -3,7 +3,7 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2014, Phoronix Media
Copyright (C) 2008 - 2017, Phoronix Media
Copyright (C) 2008, Andrew Schofield
This program is free software; you can redistribute it and/or modify
@@ -23,7 +23,7 @@
if(!is_file("phoronix-test-suite") || !is_dir("pts-core/"))
{
echo "\nYou must run this script from the root directory of the phoronix-test-suite/ folder!\n";
echo "Example: php5 pts-core/scripts/package-build-rpm.php\n";
echo "Example: php5 deploy/rpm-package/build-package-rpm.php\n";
exit(0);
}
if(!is_executable('/usr/bin/rpmbuild'))
@@ -40,19 +40,21 @@ if(!defined("PTS_VERSION"))
exit(0);
}
$rpm_v = PTS_VERSION . '.' . date('YmdHi');
shell_exec("rm -rf /tmp/pts-rpm-builder/");
shell_exec("mkdir -p /tmp/pts-rpm-builder/{BUILD,RPMS,S{OURCE,PEC,RPM}S,phoronix-test-suite-" . PTS_VERSION . "}");
shell_exec("cp -R ./ /tmp/pts-rpm-builder/phoronix-test-suite-" . PTS_VERSION . "/");
shell_exec("tar --exclude=.git -C /tmp/pts-rpm-builder/ -cjvf /tmp/pts-rpm-builder/SOURCES/phoronix-test-suite-" . PTS_VERSION . ".tar.bz2 phoronix-test-suite-" . PTS_VERSION . "/");
shell_exec("mkdir -p /tmp/pts-rpm-builder/{BUILD,RPMS,S{OURCE,PEC,RPM}S,phoronix-test-suite-" . $rpm_v . "}");
shell_exec("cp -R ./ /tmp/pts-rpm-builder/phoronix-test-suite-" . $rpm_v . "/");
shell_exec("tar --exclude=.git -C /tmp/pts-rpm-builder/ -cjvf /tmp/pts-rpm-builder/SOURCES/phoronix-test-suite-" . $rpm_v . ".tar.bz2 phoronix-test-suite-" . $rpm_v . "/");
$spec_file = "Summary: A Comprehensive Linux Benchmarking System\n";
$spec_file .= "Name: phoronix-test-suite\n";
$spec_file .= "Version: " . PTS_VERSION . "\n";
$spec_file .= "Version: " . $rpm_v . "\n";
$spec_file .= "Release: 1\n";
$spec_file .= "License: GPL\n";
$spec_file .= "Group: Utilities\n";
$spec_file .= "URL: http://www.phoronix-test-suite.com/\n";
$spec_file .= "Source: phoronix-test-suite-" . PTS_VERSION . ".tar.bz2\n";
$spec_file .= "Source: phoronix-test-suite-" . $rpm_v . ".tar.bz2\n";
$spec_file .= "Packager: Phoronix Media <trondheim-pts@phoronix-test-suite.com>\n";
$spec_file .= "Requires: php-cli, php-xml\n";
$spec_file .= "BuildArch: noarch\n";
@@ -77,8 +79,8 @@ $spec_file .= "%{_datadir}/appdata/%{name}.appdata.xml\n";
$spec_file .= "%{_datadir}/doc/*\n";
$spec_file .= "%{_mandir}/man1/%{name}.1*\n";
$spec_file .= "%config(noreplace) %{_sysconfdir}/bash_completion.d\n";
$spec_file .= "%config(noreplace) %{_sysconfdir}/systemd/system/*\n";
$spec_file .= "%config(noreplace) %{_sysconfdir}/init/*\n";
$spec_file .= "%config(noreplace) %{_sysconfdir}/../usr/lib/systemd/system/*\n";
//$spec_file .= "%config(noreplace) %{_sysconfdir}/init/*\n";
$spec_file .= "%changelog\n";
$spec_file .= "* " . date('D M d Y') . " Phoronix Media <phoronix@phoronix.com>\n";
$spec_file .= "- Initial release.";
@@ -87,9 +89,9 @@ file_put_contents("/tmp/pts-rpm-builder/SPECS/pts.spec", $spec_file);
shell_exec("mv -f " . getenv('HOME') . "/.rpmmacros /tmp/pts-rpm-builder 2>&1");
file_put_contents(getenv('HOME') ."/.rpmmacros", "%_topdir /tmp/pts-rpm-builder");
shell_exec("rpmbuild -ba --verbose /tmp/pts-rpm-builder/SPECS/pts.spec");
shell_exec("cp /tmp/pts-rpm-builder/RPMS/noarch/phoronix-test-suite-" . PTS_VERSION . "-1.noarch.rpm ./");
shell_exec("cp /tmp/pts-rpm-builder/RPMS/noarch/phoronix-test-suite-" . $rpm_v . "-1.noarch.rpm ./");
shell_exec("rm -f " . getenv('HOME') . "/.rpmmacros");
shell_exec("mv -f /tmp/pts-rpm-builder/.rpmmacros " . getenv('HOME') . ' 2>1');
shell_exec("mv -f /tmp/pts-rpm-builder/.rpmmacros " . getenv('HOME') . ' 2>&1');
shell_exec("rm -rf /tmp/pts-rpm-builder");
?>

View File

@@ -8,30 +8,26 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
- Support for multiple languages / internationalization.
- BLKID fall-back support for determining file-system [e.g. /sbin/blkid -s TYPE -o value /dev/sda1].
- Possibly restore "weighted suites" [http://phorogit.com/index.php?p=phoronix-test-suite.git&a=commitdiff&h=548e5c073cc90d92ac3f382ca4933d5f556e78c6&hb=444441f9be866f51920e0ad8ca3909951b4d90c5]
- Integrate recover-run command into the run command, auto-detect if the result file was a partial save and then ask if to perform run recovery' [ POSSIBLY DO THE SAME FOR FINISH-RUN]
- Integrate finish-run command into the run command, auto-detect if the result file was a partial save and then ask if to perform run recovery'
- Multi-threaded downloading of test files
- Numerous pts_render improvements [see in-line code comments]
- Optimus / DRI_PRIME=1 / xrandr --listproviders better GPU detection
- NVIDIA make use of UsedDedicatedGPUMemory as new GPU sensor
- Clean up all the WebSocket code and make it fit to spec
- Incremental/streaming result uploads support
- Check with Phodevi's parsers what other tools support JSON outputs - e.g. http://karelzak.blogspot.com/2015/06/json-output-for-basic-tools.html for cleaner parsing
- Improve titles on tables like in: http://openbenchmarking.org/result/1603172-GA-AMDTONGA973
### PTS-GRAPH ###
- Improve rendering of large data-sets, e.g. http://openbenchmarking.org/result/1205231-LI-BL460G6BE41
- Rotated text alignment for some PNG graphixs is sometimes off by 90/180 degrees compared to SVG, e.g. http://openbenchmarking.org/s/Compiler
- SVG graph improvements
- WebP image support
- Rotated text alignment for some PNG graphics is sometimes off by 90/180 degrees compared to SVG, e.g. http://openbenchmarking.org/s/Compiler
### OPENBENCHMARKING.ORG ###
- Shorten long change-logs on test profile pages - e.g. http://openbenchmarking.org/test/pts/hpcc
[ REST SUBJECT TO PHORONIX MEDIA NDA ]
### NEW TEST PROFILES ###
### POSSIBLE NEW TEST PROFILES ###
- Python-libmemcached [http://code.google.com/p/python-libmemcached/]
- Intel HiBench [https://github.com/intel-hadoop/HiBench]
- Hadoop Benchmarks
- Hadoop Benchmarks / TeraSort
- LATT Latency Tests [git://git.kernel.dk/latt.git]
- QMC Beaver [http://qmcbeaver.sourceforge.net/]
- Some potential interesting GPGPU tests [http://www.bealto.com/gpu-benchmarks.html]
@@ -42,18 +38,28 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
- http://hashcat.net/oclhashcat/
- Handbrake [http://handbrake.fr/]
- libMicro [https://github.com/portante/libMicro]
- http://markjstock.org/pages/rad_bench.html
- https://code.google.com/p/pyrit/
- https://github.com/acangiano/ruby-benchmark-suite
- http://www.nwchem-sw.org/index.php/Compiling_NWChem
- http://sourceforge.net/projects/ffsb/
- http://www.ratgpu.com/
- http://panthema.net/2013/pmbw/
- http://www.thedarkmod.com/
- http://code.google.com/p/lz4/
- http://parsec.cs.princeton.edu/parsec3-doc.htm
- http://www.capsl.udel.edu/splash/Download.html
- https://github.com/facebook/linkbench
- https://github.com/vasi/pixz
- http://nondot.org/sabre/LLVMNotes/#benchmarks
- stephentu/silo
- https://code.google.com/p/smhasher/wiki/SMHasher
- http://benchmarksgame.alioth.debian.org/u32/performance.php?test=fasta / http://benchmarksgame.alioth.debian.org/u32/program.php?test=nbody&lang=gcc&id=1#sourcecode
- https://openfoamwiki.net/index.php/Benchmarks_standard_v1
- Cassandra 1.2 stress - http://docs.datastax.com/en/cassandra/1.2/cassandra/tools/toolsCStress_t.html
- http://gcc.opensuse.org/c++bench-frescobaldi/
- https://gooseberry.blender.org/gooseberry-production-benchmark-file/
- https://github.com/gormanm/mmtests
- https://github.com/soumith/convnet-benchmarks
- http://apt.cs.manchester.ac.uk/projects/PAMELA/tools/SLAMBench/
- https://haasn.xyz/posts/2017-10-05-how-to-benchmark-mpvs-raw-throughput.html
- suitesparse http://faculty.cse.tamu.edu/davis/suitesparse.html
- ospray/ospray
- Microsoft/X-Mem
### WEB SOCKET / HTML5 USER INTERFACE WORK ###
@@ -65,14 +71,7 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
### PHOROMATIC ####
- Hookup the email notifications
- Group handling
- Get the Phoromatic search box implemented/working
- Editing/deleting lots of different possible items like scheduling meta-data
- Implement the complementary WebSocket communication to HTTP pulls
- More mobile form factor optimizations
- Ensure sane validating of more user input / resource uploads
- Hook up the system targeting / groups support for test schedules
- Restore some of the older phoromatic code for allowing reboots to happen during context script execution
- Hook up TriggerTarget for allowing event.php to optionally specify a sub-set of systems/groups to target for a given trigger
- Clean up the code and modularize more of the code into functions

View File

@@ -1,4 +1,4 @@
.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "5.4.0m3"
.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "8.2.0m2"
.SH NAME
phoronix-test-suite \- The Phoronix Test Suite is an extensible open-source platform for performing testing and performance evaluation.
.SH SYNOPSIS
@@ -6,14 +6,36 @@ phoronix-test-suite \- The Phoronix Test Suite is an extensible open-source plat
.br
.B phoronix-test-suite benchmark [test | suite]
.SH DESCRIPTION
The Phoronix Test Suite is the most comprehensive testing and benchmarking platform available for Linux, Solaris, Mac OS X, and BSD operating systems. The Phoronix Test Suite allows for carrying out tests in a fully automated manner from test installation to execution and reporting. All tests are meant to be easily reproducible, easy-to-use, and support fully automated execution. The Phoronix Test Suite is open-source under the GNU GPLv3 license and is developed by Phoronix Media in cooperation with partners.
The **Phoronix Test Suite** is the most comprehensive testing and benchmarking platform available for Linux, Solaris, OS X, and BSD operating systems. The Phoronix Test Suite allows for carrying out tests in a fully automated manner from test installation to execution and reporting. All tests are meant to be easily reproducible, easy-to-use, and support fully automated execution. The Phoronix Test Suite is open-source under the GNU GPLv3 license and is developed by Phoronix Media in cooperation with partners.
.SH OPTIONS
.TP
.SH TEST INSTALLATION
.B install [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option will install the selected test(s) inside the testing environment directory). The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.
.SH SYSTEM
.B diagnostics
This option will print information that is useful to developers when debugging problems with the Phoronix Test Suite and/or test profiles and test suites.
.TP
.B install-dependencies [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B interactive
A simple text-driven interactive interface to the Phoronix Test Suite.
.TP
.B php-conf
This option will print information that is useful to developers when debugging problems with the Phoronix Test Suite and/or test profiles and test suites.
.TP
.B shell
A simple text-driven shell interface / helper to the Phoronix Test Suite. Ideal for those that may be new to the Phoronix Test Suite
.TP
.B system-info
Display the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.
.TP
.B system-sensors
Display the installed system hardware and software sensors in real-time as detected by the Phoronix Test Suite Phodevi Library.
.TP
.SH TEST INSTALLATION
.B force-install [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will force the installation (or re-installation) of a test or suite. The arguments and process is similar to the install option but even if the test is installed, the entire installation process will automatically be executed. This option is generally used when debugging a test installation problem.
.TP
.B install [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the selected test(s) inside the testing environment directory. The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.
.TP
.B install-dependencies [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the external dependencies needed by the selected test(s) using the distribution's package management system. For example, some tests depend upon GCC for compiling code. If GCC is not detected on the system, the Phoronix Test Suite will attempt to install GCC using the distribution's package management system. If you are running this command as a local user, you may be prompted for the root password while the process is running. For unsupported distributions, the dependency names will be displayed along with common names for the package. The install-dependencies option needs to be supplied with the test name or suite as an argument. When using the install option, the external dependencies are automatically checked.
.TP
.B make-download-cache
@@ -26,13 +48,16 @@ This option will permanently remove a installed test by the Phoronix Test Suite.
.B auto-compare
This option will autonomously determine the most relevant test(s) to run for any selected sub-system(s). The tests to run are determined via OpenBenchmarking.org integration with the global results pool. Related test results from OpenBenchmarking.org are also merged to provide a straight-forward and effective means of carrying out a system comparison. If wishing to find comparable results for any particular test profile(s), simply pass the test profile names as additional arguments to this command.
.TP
.B benchmark [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the selected test(s) (if needed) and will proceed to run the test(s). This option is equivalent to running phoronix-test-suite with the install option followed by the run option. Multiple arguments can be supplied to run additional tests at the same time and save the results into one file.
.TP
.B estimate-run-time [Test | Suite | OpenBenchmarking ID | Test Result]
This option will provide estimates for test run-time / length.
.TP
.B finish-run [Test Result]
This option can be used if a test run had not properly finished running all tests within a saved results file. Using this option when specifying a saved results file where all tests had not completed will attempt to finish testing on the remaining tests where there are missing results.
.TP
.B run [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will run the selected test(s).
.TP
.B run-random-tests
@@ -41,31 +66,34 @@ This option will query OpenBenchmarking.org to run random benchmarks and result
.B run-tests-in-suite
This option can be used if you wish to run all of the tests found in a supplied suite, but you wish to re-configure each of the test options rather than using the defaults supplied by the suite.
.TP
.B stress-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will run the passed tests/suites in the multi-process stress-testing mode. The stress-run mode will not produce a result file but is rather intended for running multiple test profiles concurrently to stress / burn-in the system. The number of tests to run concurrently can be toggled via the PTS_CONCURRENT_TEST_RUNS environment variable and by default is set to a value of 2.
.TP
.SH BATCH TESTING
.B batch-benchmark [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B batch-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option and its arguments are equivalent to the benchmark option, but the process will be run in the Phoronix Test Suite batch mode.
.TP
.B batch-install [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B batch-install [Test | Suite | OpenBenchmarking ID | Test Result] ...
If you wish to run the install process in the Phoronix Test Suite batch mode but do not wish to run any tests at this time. Running the install process in the batch mode will use the default values and not prompt the user of any possible options, to ensure the process is fully automated.
.TP
.B batch-run [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B batch-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option and its arguments are equivalent to the run option, but the process will be run in the Phoronix Test Suite batch mode.
.TP
.B batch-setup
This option is used to configure the batch mode options for the Phoronix Test Suite, which is subsequently written to the user configuration file. Among the options are whether to automatically upload the test results to OpenBenchmarking.org and prompting for the saved file name.
.TP
.B default-benchmark [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B default-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the selected test(s) (if needed) and will proceed to run the test(s) in the defaults mode. This option is equivalent to running phoronix-test-suite with the install option followed by the default-run option.
.TP
.B default-run [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B default-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will run the selected test(s). The name of the test or suite must be supplied or the OpenBenchmarking.org ID or saved local file name. Multiple arguments can be supplied to run additional tests at the same time and save the results in a suite-like fashion. Unlike the normal run option, the default-run will not prompt the user to select from the available test options but will instead use the default options as automatically set by pts-core or the test profile. Use batch-run to automatically test all of the available options.
.TP
.B internal-run [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B internal-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option and its arguments pre-set the Phoronix Test Suite batch run mode with sane values for carrying out benchmarks in a semi-automated manner and without uploading any of the result data to the public OpenBenchmarking.org.
.TP
.SH OPENBENCHMARKING.ORG
.B clone-result [OpenBenchmarking ID] ...
This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied. More than one ID can be specified and the results will then be merged.
This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied.
.TP
.B list-recommended-tests
This option will list recommended test profiles for benchmarking sorted by hardware sub-system. The recommended tests are determined via querying OpenBenchmarking.org and determining the most popular tests for a given environment based upon the number of times a test profile has been downloaded, the number of test results available on OpenBenchmarking.org for a given test profile, the age of the test profile, and other weighted factors.
@@ -76,9 +104,6 @@ This option will attempt to cache the test profile/suite meta-data from OpenBenc
.B openbenchmarking-changes
This option will list recent changes to test profiles of enabled OpenBenchmarking.org repositories.
.TP
.B openbenchmarking-launcher
This option is called automatically with the .openbenchmarking MIME file extension support for launching OpenBenchmarking.org operations.
.TP
.B openbenchmarking-login
This option is used for controlling your Phoronix Test Suite client options for OpenBechmarking.org and syncing the client to your account.
.TP
@@ -88,6 +113,9 @@ This option is used for refreshing the stored OpenBenchmarking.org repostory inf
.B openbenchmarking-repositories
This option will list the OpenBenchmarking.org repositories currently linked to this Phoronix Test Suite client instance.
.TP
.B openbenchmarking-uploads
This option will list any recent test result uploads from the system's IP address to OpenBenchmarking.org.
.TP
.B upload-result [Test Result]
This option is used for uploading a test result to OpenBenchmarking.org.
.TP
@@ -97,31 +125,15 @@ This option can be used for uploading a test profile to your account on OpenBenc
.B upload-test-suite
This option can be used for uploading a test suite to your account on OpenBenchmarking.org. By uploading your test suite to OpenBenchmarking.org, others are then able to browse and access this test suite for easy distribution.
.TP
.SH SYSTEM
.B detailed-system-info
Display detailed information about the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.
.TP
.B diagnostics
This option will print information that is useful to developers when debugging problems with the Phoronix Test Suite and/or test profiles and test suites.
.TP
.B interactive
A simple text-driven interactive interface to the Phoronix Test Suite.
.TP
.B system-info
Display the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.
.TP
.B system-sensors
Display the installed system hardware and software sensors in real-time as detected by the Phoronix Test Suite Phodevi Library.
.TP
.SH INFORMATION
.B info [Test | Suite | OpenBenchmarking.org ID | Test Result]
.B info [Test | Suite | OpenBenchmarking ID | Test Result]
This option will show details about the supplied test, suite, virtual suite, or result file.
.TP
.B list-available-suites
This option will list all test suites that are available from the enabled OpenBenchmarking.org repositories.
.TP
.B list-available-tests
This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories.
This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories where supported on the system and are of a verified state. If the system has no Internet access, it will only list the test profiles where the necesary test assets are available locally on the system or on an available network cache, unless using the list-all-tests option to override this behavior.
.TP
.B list-available-virtual-suites
This option will list all available virtual test suites that can be dynamically created based upon the available tests from enabled OpenBenchmarking.org repositories.
@@ -138,6 +150,9 @@ This option will list all test profiles that are currently installed on the syst
.B list-missing-dependencies
This option will list all of the packages / external test dependencies that are missing from the system that the Phoronix Test Suite may potentially need by select test profiles.
.TP
.B list-not-installed-tests
This option will list all test profiles that are supported and available but presently NOT installed on the system.
.TP
.B list-possible-dependencies
This option will list all of the packages / external test dependencies that are are potentially used by the Phoronix Test Suite.
.TP
@@ -150,21 +165,33 @@ This option will list various details about installed tests and their usage.
.B list-unsupported-tests
This option will list all available test profiles that are available from the enabled OpenBenchmarking.org repositories but are NOT SUPPORTED on the given hardware/software platform. This is mainly a debugging option for those looking for test profiles to potentially port to new platforms, etc.
.TP
.B search
This option provides command-line searching abilities for test profiles / test suites / test results. The search query can be passed as a parameter otherwise the user is prompted to input their search query..
.TP
.SH ASSET CREATION
.B debug-benchmark [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B build-suite
This option will guide the user through the process of generating their own test suite, which they can then run. Optionally, passed as arguments can be the test(s) or suite(s) to add to the suite to be created, instead of being prompted through the process.
.TP
.B create-test-profile
This option can be used for creating a Phoronix Test Suite test profile by answering questions about the test for constructing the test profile XML meta-data and handling other boiler-plate basics for getting started in developing new tests.
.TP
.B debug-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the <em>run</em> option but will yield more information during the run process that can be used to debug issues with a test profile or to verify the test profile is functioning correctly.
.TP
.B debug-install [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B debug-install [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the install option but will yield more information during the run process that can be used to debug issues with a test profile installer or to verify the test profile is functioning correctly.
.TP
.B debug-test-download-links [Test | Suite]
.B debug-result-parser [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option is intended for use by test profile writers and is used for debugging a result parser. No test execution is done, but there must already be PTS-generated .log files present within the test's installation directory.
.TP
.B debug-test-download-links [Test | Suite | OpenBenchmarking ID | Test Result]
This option will check all download links within the specified test profile(s) to ensure there are no broken URLs.
.TP
.B download-test-files [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
.B download-test-files [Test | Suite | OpenBenchmarking ID | Test Result] ...
This will download the selected test file(s) to the Phoronix Test Suite download cache but will not install the tests.
.TP
.B force-install [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option will force the installation (or re-installation) of a test or suite. The arguments and process is similar to the install option but even if the test is installed, the entire installation process will automatically be executed. This option is generally used when debugging a test installation problem.
.B inspect-test-profile [Test]
This option can be used for inspecting a Phoronix Test Suite test profile with providing inside details on test profiles for debugging / evaluation / learning purposes.
.TP
.B result-file-to-suite [Test Result]
This option will guide the user through the process of generating their own test suite, which they can then run, that is based upon an existing test results file.
@@ -172,19 +199,19 @@ This option will guide the user through the process of generating their own test
.B validate-result-file
This option can be used for validating a Phoronix Test Suite result file as being compliant against the OpenBenchmarking.org specification.
.TP
.B validate-test-profile
.B validate-test-profile [Test]
This option can be used for validating a Phoronix Test Suite test profile as being compliant against the OpenBenchmarking.org specification.
.TP
.B validate-test-suite
This option can be used for validating a Phoronix Test Suite test suite as being compliant against the OpenBenchmarking.org specification.
.TP
.SH RESULT MANAGEMENT
.B analyze-all-runs [Test Result]
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 is numerical result data from all trial runs.\n\nThe 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.
.TP
.B auto-sort-result-file [Test Result]
This option is used if you wish to automatically attempt to sort the results by their result identifier string.
.TP
.B copy-run-in-result-file [Test Result]
This option is used if you wish to change an existing test run within a saved results file.
.TP
.B edit-result-file [Test Result]
This option is used if you wish to edit the title and description of an existing result file.
.TP
@@ -215,6 +242,9 @@ This option is used if you wish to manually change the order in which test resul
.B result-file-to-csv [Test Result]
This option will read a saved test results file and output the system hardware and software information along with the results to a CSV output. The CSV (Comma Separated Values) output can then be loaded into a spreadsheet for easy viewing.
.TP
.B result-file-to-json [Test Result]
This option will read a saved test results file and output the basic result information to JSON (JavaScript Object Notation).
.TP
.B result-file-to-pdf [Test Result]
This option will read a saved test results file and output the system hardware and software information along with the results to a PDF file.
.TP
@@ -224,52 +254,32 @@ This option will read a saved test results file and output the system hardware a
.B show-result [Test Result]
Open up the test results in the Phoronix Test Suite Result Viewer or on OpenBenchmarking.org.
.TP
.SH RESULT ANALYTICS
.B analyze-all-runs [Test Result]
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 is numerical result data from all trial runs.\n\nThe 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.
.TP
.B analyze-batch [Test Result]
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).
.TP
.B analyze-image-delta [Test Result]
This option will analyze a test result file if it contains any test results that produced an image quality comparison (IQC) and will render image deltas illustrating the difference between images from two test results.
.B winners-and-losers [Test Result]
This option is used if you wish to analyze a result file to see which runs produced the most wins/losses of those result identifiers in the saved file.
.TP
.SH OTHER
.B build-suite
This option will guide the user through the process of generating their own test suite, which they can then run. Optionally, passed as arguments can be the test(s) or suite(s) to add to the suite to be created, instead of being prompted through the process.
.B commands
This option will display a short list of possible Phoronix Test Suite commands.
.TP
.B debug-dependency-handler
This option is used for testing the distribution-specific dependency handler for external dependencies.
.TP
.B debug-render-test
This option is used during the development of the Phoronix Test Suite software for testing of the result and graph rendering code-paths This option will download a large number of reference test results from LinuxBenchmarking.com.
.TP
.B debug-self-test
This option is used during the development of the Phoronix Test Suite software for testing of internal interfaces, commands, and other common code-paths. The produced numbers should only be comparable for the same version of the Phoronix Test Suite, on the same hardware/software system, conducted on the same day of testing. This isn't intended as any scientific benchmark but simply to stress common PHP code-paths and looking for hot areas to optimize, etc.
.TP
.B help
This option will display the list of available Phoronix Test Suite commands.
.TP
.B network-setup
This option allows the user to configure how the Phoronix Test Suite connects to OpenBenchmarking.org and other web-services. Connecting through an HTTP proxy can be configured through this option.
.TP
.B rebuild-composite-xml [Test Result]
This option can be used to rebuild your composite XML file in the event that the main result file was corrupted and the test-X.xml files are still present in the result file directory.
.TP
.B user-config-reset
This option can be used for resetting the Phoronix Test Suite user configuration file to its default state.
.TP
.B user-config-set
This option can be used for setting an XML value in the Phoronix Test Suite user configuration file.
This option will display a list of available Phoronix Test Suite commands and possible parameter types.
.TP
.B version
This option will display the Phoronix Test Suite client version.
.TP
.SH WEB / GUI SUPPORT
.B gui
Launch the Phoronix Test Suite HTML5 web user-interface in the local GUI mode (no remote web support) and attempt to auto-launch the web-browser.
.TP
.B start-remote-gui-server
Start the GUI web server and WebSocket server processes for remote (or local) access via the web-browser. The settings can be configured via the Phoronix Test Suite's XML configuration file.
.TP
.B start-ws-server
Manually start a WebSocket server for communication by remote Phoronix Test Suite GUIs, the Phoronix Test Suite Multi-System Commander, and other functionality.
.TP
.SH MODULES
.B auto-load-module
This option can be used for easily adding a module to the LoadModules list in the Phoronix Test Suite user configuration file. That list controls what PTS modules are automatically loaded on start-up of the Phoronix Test Suite.
.TP
.B list-modules
This option will list all of the available Phoronix Test Suite modules on this system.
.TP
@@ -282,9 +292,32 @@ This option will allow you to configure all available end-user options for a Pho
.B test-module [Phoronix Test Suite Module]
This option can be used for debugging a Phoronix Test Suite module.
.TP
.SH GUI / WEB SUPPORT
.B e
p
.B unload-module
This option can be used for easily removing a module from the LoadModules list in the Phoronix Test Suite user configuration file. That list controls what modules are automatically loaded on start-up of the Phoronix Test Suite.
.TP
.SH USER CONFIGURATION
.B enterprise-setup
This option can be run by enterprise users immediately after package installation or as part of an in-house setup script. Running this command will ensure the phoronix-test-suite program is never interrupted on new runs to accept user agreement changes and defaults the anonymous usage reporting to being disabled and other conservative defaults.
.TP
.B network-info
This option will print information detected by the Phoronix Test Suite around the system's network configuration.
.TP
.B network-setup
This option allows the user to configure how the Phoronix Test Suite connects to OpenBenchmarking.org and other web-services. Connecting through an HTTP proxy can be configured through this option.
.TP
.B user-config-reset
This option can be used for resetting the Phoronix Test Suite user configuration file to its default state.
.TP
.B user-config-set
This option can be used for setting an XML value in the Phoronix Test Suite user configuration file.
.TP
.SH WEB / GUI SUPPORT
.B gui
Launch the Phoronix Test Suite HTML5 web user-interface in the local GUI mode (no remote web support) and attempt to auto-launch the web-browser. THIS FEATURE IS CURRENTLY EXPERIMENTAL AND NO LONGER ACTIVE DEVELOPMENT. See Phoronix Test Suite Phoromatic as an alternative web UI approach.
.TP
.SH PHOROMATIC
.B n
_
.TP
.SH SEE ALSO
.B Websites:
@@ -299,5 +332,5 @@ http://www.phoronix.com/
.br
http://www.phoronix.com/forums/
.SH AUTHORS
Copyright 2008 - 2014 by Phoronix Media, Michael Larabel.
Copyright 2008 - 2018 by Phoronix Media, Michael Larabel.
.TP

View File

@@ -1,111 +0,0 @@
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="xsl/pts-definitions-viewer.xsl" ?>
<PhoronixTestSuite>
<Definitions>
<Define>
<Name>P_RESULTS_PARSER_MATCH_TO_TEST_ARGUMENTS</Name>
<Value>PhoronixTestSuite/ResultsParser/MatchToTestArguments</Value>
<Description>If there are multiple ResulsParser sections within the XML file and this tag is set, the Phoronix Test Suite will see if this string appears within the PTS_TEST_ARGUMENTS in determining if this is the ResultsParser section to use for parsing the results.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_TEMPLATE</Name>
<Value>PhoronixTestSuite/ResultsParser/OutputTemplate</Value>
<Description>The section of the test output to look for the result(s) within.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_RESULT_KEY</Name>
<Value>PhoronixTestSuite/ResultsParser/ResultKey</Value>
<Description>The key to look for when parsing the OutputTemplate to find where the result should be stored. If this tag is not implemented, the default key will be used.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_LINE_HINT</Name>
<Value>PhoronixTestSuite/ResultsParser/LineHint</Value>
<Description>A unique string to search the test result output for to indicate this is the line that contains the result value.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_LINE_BEFORE_HINT</Name>
<Value>PhoronixTestSuite/ResultsParser/LineBeforeHint</Value>
<Description>The LineBeforeHint tag is similar to LineHint but is used to indicate the line before where the test results appear, in the event the LineHint tag cannot be used reliably.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_LINE_AFTER_HINT</Name>
<Value>PhoronixTestSuite/ResultsParser/LineAfterHint</Value>
<Description>The LineAfterHint tag is similar to LineBeforeHint but is used to indicate the line after where the test results appear, in the event the LineHint or LineBeforeHint tags cannot be used reliably.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_RESULT_BEFORE_STRING</Name>
<Value>PhoronixTestSuite/ResultsParser/ResultBeforeString</Value>
<Description>The ResultBeforeString tag is optional and can be used if there is a consistient string following the reporting of the result, in the event the result's location is not static within the line string.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_STRIP_FROM_RESULT</Name>
<Value>PhoronixTestSuite/ResultsParser/StripFromResult</Value>
<Description>Any string that should be searched for and removed from the result value anywhere within the value string.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_STRIP_RESULT_POSTFIX</Name>
<Value>PhoronixTestSuite/ResultsParser/StripResultPostfix</Value>
<Description>This is similar to the StripFromResult tag but will only look at the end of the value string for this string to be removed. (I.e. if a unit such as 'ms' or 'FPS' is appended to the result by the test without a space.)</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_MULTI_MATCH</Name>
<Value>PhoronixTestSuite/ResultsParser/MultiMatch</Value>
<Description>If the result value should be found multiple times within the result file and then some mathematical operation carried out, it should be set using this tag. Setting the value to AVERAGE will find all matches and then calculate the average value based upon matches. While not required, setting the value to NONE will use the default code-path of only looking for one result value.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_DIVIDE_BY</Name>
<Value>PhoronixTestSuite/ResultsParser/DivideResultBy</Value>
<Description>If the result value should be divided by some constant (to convert the result to a different unit), the value should be supplied in this tag.</Description>
</Define>
<Define>
<Name>P_RESULTS_PARSER_MULTIPLY_BY</Name>
<Value>PhoronixTestSuite/ResultsParser/MultiplyResultBy</Value>
<Description>If the result value should be multiplied by some constant (to convert the result to a different unit), the value should be supplied in this tag.</Description>
</Define>
<Define>
<Name>P_IMAGE_PARSER_MATCH_TO_TEST_ARGUMENTS</Name>
<Value>PhoronixTestSuite/ImageParser/MatchToTestArguments</Value>
<Description>If there are multiple ResulsParser sections within the XML file and this tag is set, the Phoronix Test Suite will see if this string appears within the PTS_TEST_ARGUMENTS in determining if this is the ResultsParser section to use for parsing the results.</Description>
</Define>
<Define>
<Name>P_IMAGE_PARSER_SOURCE_IMAGE</Name>
<Value>PhoronixTestSuite/ImageParser/SourceImage</Value>
<Description>If the test profile is for an image quality comparison, the ImageFile tag should contain the file/path of the source file.</Description>
</Define>
<Define>
<Name>P_IMAGE_PARSER_IMAGE_X</Name>
<Value>PhoronixTestSuite/ImageParser/ImageX</Value>
<Description>If the test profile is for an image quality comparison, the ImageX should be the X coordinate of where to begin cropping the source file.</Description>
</Define>
<Define>
<Name>P_IMAGE_PARSER_IMAGE_Y</Name>
<Value>PhoronixTestSuite/ImageParser/ImageY</Value>
<Description>If the test profile is for an image quality comparison, the ImageX should be the Y coordinate of where to begin cropping the source file.</Description>
</Define>
<Define>
<Name>P_IMAGE_PARSER_IMAGE_WIDTH</Name>
<Value>PhoronixTestSuite/ImageParser/ImageWidth</Value>
<Description>If the test profile is for an image quality comparison, the ImageWidth should be the produced image width.</Description>
</Define>
<Define>
<Name>P_IMAGE_PARSER_IMAGE_HEIGHT</Name>
<Value>PhoronixTestSuite/ImageParser/ImageHeight</Value>
<Description>If the test profile is for an image quality comparison, the ImageHeight should be the produced image height.</Description>
</Define>
<Define>
<Name>P_MONITOR_PARSER_SENSOR</Name>
<Value>PhoronixTestSuite/SystemMonitor/Sensor</Value>
<Description>If the test profile is to monitor any system sensors during the testing process, the name of the sensor (via the Phodevi name; i.e. cpu.usage) should be supplied. While not a Phodevi sensor, if passing sys.time as the sensor value, the time it takes to execute the test will be recorded.</Description>
</Define>
<Define>
<Name>P_MONITOR_PARSER_FREQUENCY</Name>
<Value>PhoronixTestSuite/SystemMonitor/PollingFrequency</Value>
<Description>If the test profile is to monitor any system sensors during the testing process, how often the matched sensor is to be polled (in seconds) should be supplied. Floating values are supported.</Description>
</Define>
<Define>
<Name>P_MONITOR_PARSER_REPORT</Name>
<Value>PhoronixTestSuite/SystemMonitor/Report</Value>
<Description>If the test profile is to monitor any system sensors during the testing process, this tag provides how the monitored results should be reported. Supported values include MAX, MIN, AVG, and ALL.</Description>
</Define>
</Definitions>
</PhoronixTestSuite>

View File

@@ -1,42 +0,0 @@
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="xsl/pts-definitions-viewer.xsl" ?>
<PhoronixTestSuite>
<Definitions>
<Define>
<Name>P_DOWNLOADS_PACKAGE_URL</Name>
<Value>PhoronixTestSuite/Downloads/Package/URL</Value>
<Description>The URL(s) to download the package from. If multiple URLs are supplied (delimited by a comma), the Phoronix Test Suite will randomly choose one URL but will fallback to other URLs if one fails either due to the file missing, the MD5 changed, or server inaccessability.</Description>
<Required>YES</Required>
</Define>
<Define>
<Name>P_DOWNLOADS_PACKAGE_MD5</Name>
<Value>PhoronixTestSuite/Downloads/Package/MD5</Value>
<Description>The MD5 check-sum for the file to be downloaded. This is to ensure file integrity. If no string is supplied, no MD5 check will be performed.</Description>
<Required>RECOMMENDED</Required>
</Define>
<Define>
<Name>P_DOWNLOADS_PACKAGE_FILENAME</Name>
<Value>PhoronixTestSuite/Downloads/Package/FileName</Value>
<Description>If this tag is set, once the file is downloaded it will be renamed to this value. If this tag is not set, the remote file-name will be used.</Description>
<Required>NO</Required>
</Define>
<Define>
<Name>P_DOWNLOADS_PACKAGE_FILESIZE</Name>
<Value>PhoronixTestSuite/Downloads/Package/FileSize</Value>
<Description>The size of the file to be downloaded should be the value of this tag. The FileSize should be an integer that is the number of bytes that makes up the file. This tag is used so that the Phoronix Test Suite can determine the total size of files that need to be downloaded for a given operation.</Description>
<Required>RECOMMENDED</Required>
</Define>
<Define>
<Name>P_DOWNLOADS_PACKAGE_PLATFORMSPECIFIC</Name>
<Value>PhoronixTestSuite/Downloads/Package/PlatformSpecific</Value>
<Description>If this package is just needed on select operating systems / platforms, list them inside this tag and multiple platforms can be delimited by a comma.</Description>
<Required>NO</Required>
</Define>
<Define>
<Name>P_DOWNLOADS_PACKAGE_ARCHSPECIFIC</Name>
<Value>PhoronixTestSuite/Downloads/Package/ArchitectureSpecific</Value>
<Description>If this package is just needed on select system/processor architectures, list them inside this tag and multiple architectures can be delimited by a comma.</Description>
<Required>NO</Required>
</Define>
</Definitions>
</PhoronixTestSuite>

View File

@@ -1,73 +0,0 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Title>Phoronix Test Suite - Module Writing</Title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link href="includes/pts-documentation.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="pts_doc_header"><div class="pts_doc_fixed"><a href="http://www.phoronix-test-suite.com/"><div id="pts_doc_logo"></div></a></div></div>
<div class="pts_doc_fixed">
<div class="pts_doc_notice"><div style="float: left"><a href="index.html">&lt;&lt; Documentation Home</a></div><div style="float: right;">Module Writing</div></div>
<div class="pts_doc_main">
<!-- PTS AREA -->
<h1>Phoronix Test Suite Modules</h1>
<div style="width: 1px; height: 20px;"></div>
<p>Writing a module for the Phoronix Test Suite allows new functionality to be added
without having to extensively learn how pts-core functions. The module framework
for the Phoronix Test Suite allows modules to be written as a PHP object. Example PTS modules could include a module to shutdown the
screensaver when the Phoronix Test Suite starts up and re-enabling it when the
test is over, using sendmail to forward the results to an e-mail address when
testing is completed, or writing the current test status to a LCDproc-enabled
VFD display.</p>
<p>Modules are stored in <em>pts-core/modules/</em>. Loading a
module is done by either setting the <em>PTS_MODULES</em> environmental variable
with the name of the module (excluding the <em>.php</em> file
extension) or by associating a module with a separate environmental variable. The default list of modules to be loaded is stored in <em>~/.phoronix-test-suite/user-config.xml</em>.</p>
<p>Note: To run through all of the function calls for a module without needing to run a test,
run <em>phoronix-test-suite test-module MODULE_NAME</em>. Additionally, running
<em>phoronix-test-suite debug-module MODULE_NAME</em> will yield additional debugging details while
executing the same process.</p>
<h1>Module</h1>
<p>To see all of the functions supported for modules written in PHP, look at <em>pts-core/modules/dummy_module.php</em>
and additionally the other .php modules that ship with the Phoronix Test Suite.
Additionally, there are several functions written specifically for Phoronix Test
Suite modules that make it easier to save files, read files, and provided multi-threading
support for modules. The <em>pts_timed_function()</em> makes it possible (and
very easy) to thread functions within a module so that at a set interval the defined
functions will be called. For example, this support is used heavily within the
<em>system_monitor</em> module to poll sensors every X seconds even while there
are tests running. These functions can be found within <em>pts-core/objects/pts_module.php</em>.</p>
<p>Below is a sample module that times how long it takes to run the Phoronix Test
Suite. It would be saved as <em>pts-core/modules/time_me.php</em>.</p>
<blockquote>&lt;?php<br />
class time_me extends pts_module_interface<br />
{<br />
&nbsp; &nbsp; const module_name = "Time Me!";<br />
&nbsp; &nbsp; const module_version = "1.0.0";<br />
&nbsp; &nbsp; const module_description = "This is a module that times how long the Phoronix Test Suite runs.";<br />
&nbsp; &nbsp; const module_author = "Phoronix Media";<br />
<br />
&nbsp; &nbsp; static $start_time = NULL;<br />
&nbsp; &nbsp; static $end_time = NULL;<br />
<br />
&nbsp; &nbsp; public static function __startup()<br />
&nbsp; &nbsp; {<br />
&nbsp; &nbsp; &nbsp; &nbsp; self::$start_time = time();<br />
&nbsp; &nbsp; }<br />
&nbsp; &nbsp; public static function __shutdown()<br />
&nbsp; &nbsp; {<br />
&nbsp; &nbsp; &nbsp; &nbsp; self::$end_time = time();<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; $time_elapsed = self::$end_time - self::$start_time;<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; echo "\nThe Phoronix Test Suite Ran For " . $time_elapsed . " Seconds.\n";<br />
&nbsp; &nbsp; }<br />
}<br />
?&gt;</blockquote>
<p>Then by running <em>PTS_MODULES=time_me phoronix-test-suite benchmark video-extensions</em>,
at the end of the test it would print a string similar to: &quot;The Phoronix
Test Suite Ran For 52 Seconds.&quot;</p>
<!-- END OF PTS AREA -->
</div></div><div class="pts_doc_fixed"><div class="pts_doc_bottom"><div style="float: left;"><a href="http://www.phoronix-test-suite.com/">Phoronix-Test-Suite.com</a></div><div style="float: right;">Copyright &copy; 2008 by <a href="http://www.phoronix-media.com/">Phoronix Media</a>.</div></div></div>
</body>
</html>

View File

@@ -1,118 +0,0 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Title>Phoronix Test Suite - A Quick Guide To Writing A Test Profile</Title>
<link href="includes/pts-documentation.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="pts_doc_header"><div class="pts_doc_fixed"><a href="http://www.phoronix-test-suite.com/"><div id="pts_doc_logo"></div></a></div></div>
<div class="pts_doc_fixed">
<div class="pts_doc_notice"><div style="float: left"><a href="index.html">&lt;&lt; Documentation Home</a></div><div style="float: right;">Writing A Test Profile</div></div>
<div class="pts_doc_main">
<!-- PTS AREA -->
<h1>Writing A Test Profile</h1>
<p>Writing a test profile for the Phoronix Test Suite is a relatively quick and easy
process for anyone familiar with common Linux commands and the basics of XML.
To help you understand the design of the Phoronix Test Suite, this guide covers
the steps needed to write a testing profile for a very simple application.</p>
<p>The first step in the profile writing process is to, well, have a piece of
software you'd like to use with the Phoronix Test Suite. This software can be
closed-source or open-source and be virtually anything as long as it is compatible
with the Linux operating system.</p>
<p>For this guide, the piece of software being used for demonstration is just
a simple C++ program that calculates Pi to 8,765,4321 digits using the Leibniz
formula. Below is this sample piece of software intended just for demonstration
purposes.</p>
<blockquote>#include &lt;iostream&gt;<br>
#include &lt;math.h&gt;</p>
<p>int main()<br>
{<br>
double pi = 0;</p>
<p> for(long int i = 1; i &lt;= 87654321; i++)<br>
pi += (double) pow(-1, i + 1) / (2 * i - 1);</p>
<p> pi *= 4;<br>
std::cout &lt;&lt; &quot;Done Calculating Pi...&quot; &lt;&lt; endl;<br>
return 0;<br>
}</blockquote>
<p>The first step in the actual profile writing process is to name it. If you're
looking to ultimately push this profile to be included in the Phoronix Test Suite,
its name must be all lower case and consist of just alpha-numeric characters,
but can contain dashes (-). A more advanced test profile capability is operating system prefixes, and if using those there is an
underscore separating the prefix from the normal profile name. For this sample profile, we're calling it <em>sample-program</em>
and the file-name would be <em>sample-program.xml</em>. Our (very basic) profile is showcased
below.</p>
<blockquote>&lt;PhoronixTestSuite&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestProfile&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Version&gt;1.1.0&lt;/Version&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestType&gt;Processor&lt;/TestType&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;SoftwareType&gt;Utility&lt;/SoftwareType&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;License&gt;FREE&lt;/License&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Status&gt;PRIVATE&lt;/Status&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Maintainer&gt;Phoronix Media&lt;/Maintainer&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TestProfile&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestInformation&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Title&gt;Sample Pi Program&lt;/Title&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TimesToRun&gt;3&lt;/TimesToRun&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ResultScale&gt;Seconds&lt;/ResultScale&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Proportion&gt;LIB&lt;/Proportion&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Description&gt;A simple C++ program that calculates Pi to 8,765,4321 digits using the Leibniz formula. This test can be used for showcasing how to write a basic test profile.&lt;/Description&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ExternalDependencies&gt;build-utilities&lt;/ExternalDependencies&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TestInformation&gt;<br>
&lt;/PhoronixTestSuite&gt;</blockquote>
<p>This XML profile is what interfaces with the Phoronix Test Suite and provides
all the needed information about the test as well as other attributes. For a complete
listing of all the supported profile options, look at the specification files
in the documentation folder. In the case of <em>sample-program</em>, it lets the Phoronix
Test Suite know that it's composed of free software, is designed to test the processor,
is intended for private use only, and this profile is maintained by Phoronix Media.
In addition, it tells the Phoronix Test Suite to execute this program three times
and as no result quantifier is set, the average of the three runs will be taken.
This profile also tells the Phoronix Test Suite that the generic <em>build-utilities</em>
package is needed, which will attempt to ensure that GCC and the standard development
utilities/libraries are installed on your Linux distribution. This is needed as
the C++ source-code will need to be built from source.</p>
<p>The next step is to write the <em>install.sh</em> file, which once called by the Phoronix
Test Suite is intended to install the test locally for benchmarking purposes.
The <em>install.sh</em> file is technically optional, but is generally used by all tests. Note: The first argument supplied to
the install script is the directory that the test needs to be installed to. The
<em>install.sh</em> file (in our instance) is to be placed inside <em>pts/test-resources/sample-program</em>.
Below is the <em>install.sh</em> for the <em>sample-program</em>.</p>
<blockquote>#!/bin/sh<br /><br />
tar -xjf sample-pi-program-1.tar.bz2<br />
g++ sample-pi-program.cpp -o sample-pi-program<br />
echo &quot;#!/bin/sh<br />
\$TIMER_START<br />
./sample-pi-program 2&gt;&amp;1<br />
\$TIMER_STOP<br />
&quot; &gt; sample-program<br>
chmod +x sample-program</blockquote>
<p>Phoronix Test Suite 1.4 and later provides an integrated multi-platform micro-timer framework that provides the <em>$TIMER_START</em> and <em>$TIMER_STOP</em> functionality.</p>
<p>This install file builds the code with GCC, and then creates a small script
that is run by the Phoronix Test Suite, which times how long it takes to run the
software. Where does the source-code come into play? Well, it needs to be downloaded
now from a web server. The Phoronix Test Suite has built-in support for managing
downloads from multiple servers in a random over, fall-back support if one mirror
is done, and verification of MD5 check-sums. Below is the <em>downloads.xml</em> file for
<em>sample-program</em> that covers all of this.</p>
<blockquote>&lt;PhoronixTestSuite&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Downloads&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Package&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;URL&gt;http://www.phoronix-test-suite.com/benchmark-files/sample-pi-program.cpp&lt;/URL&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;MD5&gt;e90fb790df8d1544696a1439c9b5bd8d&lt;/MD5&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Package&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Downloads&gt;<br>
&lt;/PhoronixTestSuite&gt;</blockquote>
<p>The final step in the profile writing process is to write a parser to strip
all information but the reported result from the standard output. The standard
output is submitted to <em>parse-results.sh</em> or <em>parse-results.php</em> as the first argument
in quotes or using <em>$LOG_FILE</em> if the test profile writes to that variable's location.</p>
<p>If the test profile uses the integrated micro-timer framework with <em>$TIMER_START</em> and <em>$TIMER_STOP</em> but no parse-results file is provided, the Phoronix Test Suite will automatically use the difference between <em>$TIMER_START</em> and <em>$TIMER_STOP</em> and use that as the test result. This is the time (in seconds) that elapsed between starting and stopping the timer.</p>
<p>After that, with all the files in their correct locations, just run: <em>phoronix-test-suite
benchmark sample-program</em>. The Phoronix Test Suite should now handle the rest by
installing the test, running the test, and recording the results (if you so choose).
There is no additional work that needs to be done for the results to be recorded
in the PTS Results Viewer or even reporting the results to OpenBenchmarking.org.</p>
<p><strong>For more information, visit <a href="http://www.phoronix-test-suite.com/">Phoronix-Test-Suite.com</a> and read the <a href="index.html">included documentation</a>. It should also be of great help to just look at the existing test profiles, which can be found inside the <em>phoronix-test-suite/pts/</em> folder with the <em>test-resources</em> and <em>test-profiles</em> sub-directories.</strong></p>
<!-- END OF PTS AREA -->
</div></div><div class="pts_doc_fixed"><div class="pts_doc_bottom"><div style="float: left;"><a href="http://www.phoronix-test-suite.com/">Phoronix-Test-Suite.com</a></div><div style="float: right;">Copyright &copy; 2008 by <a href="http://www.phoronix-media.com/">Phoronix Media</a>.</div></div></div>
</body>
</html>

View File

@@ -4,12 +4,11 @@
</head>
<body>
<h1>Phoromatic Server</h1>
<p><em>This documentation is a work-in-progress and will be firmed up by the Phoronix Test Suite 5.4 official release planned for November 2014.</em></p>
<h2>Introduction</h2>
<p>Phoromatic is a remote management system for the Phoronix Test Suite. Phoromatic allows the automatic (hence the name <em>Phoro-matic</em>) scheduling of tests, remote installation of new tests, and the management of multiple test systems all through an intuitive, easy-to-use web interface. Tests can be scheduled to automatically run on a routine basis across multiple test systems. The test results are then available from this central, secure location.</p>
<p>Phoromatic was originally introduced with Phoronix Test Suite 2.0 via Phoromatic.com as a project going back to 2008~2009. Phoromatic.com debuted as a hosted instance with the option of behind-the-firewall licensing for use within organizations. With Phoronix Test Suite 5.2 the model shifted to offer a local, open-source version of Phoromatic built into the Phoronix Test Suite code-base. Thanks to continued enterprise development, with Phoronix Test Suite 5.4 is now a fully-functioning, built-in version of Phoromatic that's open-source and can be used for behind-the-firewall testing without needing to push results to OpenBenchmarking.org and the ability to keep all results private.</p>
<p>Phoromatic in Phoronix Test Suite 5.4 also has the ability to support zero-conf network discovery using Avahi and the automatic distribution of needed test profiles/suites and test files. Phoronix Test Suite 5.4's Phoromatic is a significant breakthrough for open-source testing particularly those running this GPL benchmarking software within test labs and other large organizations.</p>
<h2>Features<h2>
<h2>Features</h2>
<p>Built atop the Phoronix Test Suite, Phoromatic offers many features for both enterprise and community/personal users:</p>
<h3>Automated Scheduling</h3>
<p>Whether it is every evening at 6:00PM, once every Thursday at 10:00AM or somewhere in between, Phoromatic can schedule tests to be run at user-defined intervals. The testing schedules can be updated through Phoromatic web interface. After the test(s) have run, the results will be immediately uploaded to Phoromatic.</p>
@@ -64,18 +63,28 @@ SUPPORTED OPENBENCHMARKING.ORG REPOSITORIES:<br />
pts - Last Generated: 05 Oct 2014 07:16</em></p>
<p>Phoromatic Servers are detected by the Phoronix Test Suite through Avahi or if manually configuring the Phoronix Test Suite clients to point to Phoromatic Servers. For networks without Avahi/auto-discovery support or for test systems that may be connecting from another network, the IP address and HTTP port number can be added to the local system's <em>~/.phoronix-test-suite/user-config.xml</em> with the <em>PhoromaticServers</em> element. Adding the <em>IP:port</em> (the Phoromatic Server's HTTP port) to the PhoromaticServers <em>user-config.xml</em> element for will perform targeted probing by the Phoronix Test Suite without any dependence on Avahi. Multiple Phoromatic Servers can be added if each IP:port is delimited by a comma.</p>
<p>To connect a Phoronix Test Suite system for benchmarking to an account, log into your Phoromatic account from the web-interface and on the main/system pages will be instructions along with a specially formed string to run, e.g. <em>phoronix-test-suite phoromatic.connect 192.168.1.211:5447/I0SSJY</em>. When running that command once on the system(s) to be synced to that account, as the administrator you'll be able to validate/approve the systems from the Phoromatic web interface. After that, whenever the system(s) are to be running benchmarks, simply have the <strong>phoronix-test-suite phoromatic.connect</strong> command running on the system (after the initial account has been synced, simply running <strong>phoronix-test-suite phoromatic.connect</strong> is enough for the system to find the server and its account).</p>
<h2>Root Administrator</h2>
<p>The root administrator account is able to manage the server-level settings, e.g. Phoromatic storage location and other global settings related to the Phoronix Test Suite / Phoromatic Server, from the web user-interface.</p>
<p>To enable the root administrator log-in, first from the server's command-line interface run <strong>phoronix-test-suite phoromatic.set-root-admin-password</strong> to set the password. Following that, you can log into the root administrator account via the web interface via the <em>rootadmin</em> user-name and the set password.</p>
<h2>Other Advice</h2>
<h3>Disable Internet Precaution</h3>
<p>If you have an Internet connection but want to ensure your Phoronix Test Suite client doesn't attempt to use it for any matter, via the <em>~/.phoronix-test-suite/user-config.xml</em> you can set <em>NoInternetCommunication</em> to <em>TRUE</em>. There's also a NoNetworkCommunication tag, but setting that to TRUE will disable any form of network communication -- including communication with the Phoromatic Server.</p>
<h3>Ports / Services</h3>
<p>The Phoromatic Server process currently relies upon a PHP/HHVM built-in web server process and a PTS-hosted WebSocket server. The web server process handles the web UI and much of the responsibilities of the Phoromatic Server. Over time the PTS WebSocket server will be increasingly utilized for bi-directional, real-time communication between the server and clients -- including for features like viewing real-time hardware sensors of client systems from the server UI.</p>
<h3>Systemd / Upstart</h3>
<p>Packaged with the Phoronix Test Suite are basic <em>phoromatic-client</em> and <em>phoromatic-server</em> configurations for both Upstart and systemd init systems. The <em>phoromatic-server</em> configuration will launch the Phoronix Test Suite's Phoromatic Server and the <em>phoromatic-client</em> service will attempt to connect to a <u>pre-configured</u> Phoromatic Server.</p>
<p>Packaged with the Phoronix Test Suite are basic <em>phoromatic-client</em> and <em>phoromatic-server</em> configurations for both Upstart and systemd init systems. The <em>phoromatic-server</em> configuration will launch the Phoronix Test Suite's Phoromatic Server and the <em>phoromatic-client</em> service will attempt to connect to a <u>pre-configured</u> Phoromatic Server. The systemd service files will automatically be installed via the Phoronix Test Suite <em>install-sh</em> process while the Upstart jobs can be copied from <em>deploy/phoromatic-upstart/*</em> to <em>/etc/init</em>.</p>
<h3>Cache Verification</h3>
<p>To confirm the files accessible to Phoronix Test Suite client systems, from the Phoromatic Server web user-interface go to the <em>settings</em> page followed by the <em>cache settings</em> link to view information about the download and OpenBenchmarking.org caches. From the client systems, running <strong>phoronix-test-suite phoromatic.explore</strong> will also supply cache statistics.</p>
<h3>Log Files</h3>
<p>The Phoromatic Server will produce a log file of events / debugging information to <em>~/.phoronix-test-suite/phoromatic.log</em> or <em>/var/log/phoromatic.log</em> depending upon the service's permissions. When running the Phoronix Test Suite Phoromatic client, the log will be written to one of the respective locations in <em>phoronix-test-suite.log</em>.</p>
<h3>Multi-User Accounts</h3>
<p>For each time a user account is made from the Phoromatic web UI's log-in page, all of the test schedules, systems, and other account information is separate to allow for a completely isolated multi-user system. If a main administrator (the one creating the account) wishes to have multiple users sharing the same account data, that user can create additional accounts from the <em>Users</em> tab of their account. The main administrator can make an additional administrator account or a &quot;viewer&quot; account that can consume the account's data but not create/modify the schedules, systems, or other account details.</p>
<h3>
<h3>File Locations</h3>
<p>When running the Phoronix Test Suite Phoromatic Server as root, rather than using the <em>~/.phoronix-test-suite/</em> directory, the standard Linux file-system hierarchy standard is honored. The main storage path is <em>/var/lib/phoronix-test-suite/</em>, the user configuration file is <em>/etc/phoronix-test-suite.xml</em>, and <em>/var/cache/phoronix-test-suite/</em> for cache files.</p>
<h3>Uploading Other Test Results</h3>
<p>Unscheduled test results and other results found on connected systems to a Phoromatic account can upload the data to the Phoromatic Server using the <em>phoronix-test-suite phoromatic.upload-result &lt;result file identifier &gt;</em> sub-command.</p>
<h3>User Context File Logging</h3>
<p>For those utilizing custom set context script files as part of the Phoromatic test schedule, any important notes / log information can be written to the file specified by the <em>PHOROMATIC_LOG_FILE</em> environment variable set while running the user context scripts. The contents of that file is then sent to the Phoromatic Server otherwise the standard output of the script's execution is submitted to the Phoromatic Server for logging. These logs can then be viewed by the Phoromatic Server along with the test results. Other environment variables accessible when running a user context script include <em>PHOROMATIC_TRIGGER</em>, <em>PHOROMATIC_SCHEDULE_ID</em>, and <em>PHOROMATIC_SCHEDULE_PROCESS</em>.</p>
</body>
</html>

View File

@@ -0,0 +1,92 @@
# Phoronix Test Suite Phoromatic
## Phoromatic Server
### Introduction
Phoromatic is a remote management system for the Phoronix Test Suite. Phoromatic allows the automatic (hence the name *Phoro-matic* ) scheduling of tests, remote installation of new tests, and the management of multiple test systems all through an intuitive, easy-to-use web interface. Tests can be scheduled to automatically run on a routine basis across multiple test systems. The test results are then available from this central, secure location.
Phoromatic was originally introduced with Phoronix Test Suite 2.0 via Phoromatic.com as a project going back to 2008~2009. Phoromatic.com debuted as a hosted instance with the option of behind-the-firewall licensing for use within organizations. With Phoronix Test Suite 5.2 the model shifted to offer a local, open-source version of Phoromatic built into the Phoronix Test Suite code-base. Thanks to continued enterprise development, with Phoronix Test Suite 5.4 is now a fully-functioning, built-in version of Phoromatic that's open-source and can be used for behind-the-firewall testing without needing to push results to OpenBenchmarking.org and the ability to keep all results private.
Phoromatic in Phoronix Test Suite 5.4 also has the ability to support zero-conf network discovery using Avahi and the automatic distribution of needed test profiles/suites and test files. Phoronix Test Suite 5.4's Phoromatic is a significant breakthrough for open-source testing particularly those running this GPL benchmarking software within test labs and other large organizations.
### Features
Built atop the Phoronix Test Suite, Phoromatic offers many features for both enterprise and community/personal users:
#### Automated Scheduling
Whether it is every evening at 6:00PM, once every Thursday at 10:00AM or somewhere in between, Phoromatic can schedule tests to be run at user-defined intervals. The testing schedules can be updated through Phoromatic web interface. After the test(s) have run, the results will be immediately uploaded to Phoromatic.
#### Extensible
Any test profile or test suite that is compliant with the Phoronix Test Suite specification will work with Phoromatic. Phoromatic is able to leverage the hundreds of test profiles and test suites currently in the Phoronix Test Suite via OpenBenchmarking.org, along with any custom or proprietary test profiles you or your company utilize. Additionally, the Phoromatic interface allows the user to construct their own test suite(s).
#### Remote Testing
Once the test system is setup, all testing and management of that system can be done remotely. There is no need to execute Phoronix Test Suite commands locally using the GUI or command line version, but instead nearly all of the same features are accessible from the Phoromatic interface.
#### Multi-System Support
A single Phoromatic account is able to manage multiple test systems running the Phoronix Test Suite. Phoromatic supports grouping together test systems, tagging, and other features to support effectively managing many test systems. From the Phoromatic interface, installed system hardware and software from a given system can also be viewed.
#### Turn-Key Deployment
No additional software needs to be installed to support Phoromatic; all that's needed is Phoronix Test Suite 5.4 or later for full compatibility. New test systems can easily be synced with a given Phoromatic account by running a single command from the Phoronix Test Suite client.
#### Result Management
Test results are automatically uploaded to the Phoromatic account and remain private unless you opt to upload them to OpenBenchmarking.org. From the Phoromatic interface, results from multiple test systems can easily be compared and multiple results from the same systems can be used to track performance over time. There are also options to look at the statistical significance of the results and other features to efficiently and effectively analyze the system's performance.
#### Decentralized
Once the Phoronix Test Suite running on the Phoromatic Server has been able to cache all of the OpenBenchmarking.org test files and the needed files for each test, Phoromatic with any Phoronix Test Suite clients on your LAN can run fully decentralized without the need for a constant stream of OpenBenchmarking.org communication or Internet connection for that matter. (The only exception would be if your local systems don't have all their needed external dependencies and your system's package manager would need to install components like a compiler or necessary system libraries.
#### Fully Open-Source
Phoromatic is now fully open-source within the Phoronix Test Suite code-base for fostering greater development and new capabilities. Patches are welcome and Phoronix Media is available to provide commercial support and custom engineering services around Phoromatic and the Phoronix Test Suite.
### Phoromatic Server Setup
Phoromatic is built into the Phoronix Test Suite code-base and should be found in all packaged versions of the **phoronix-test-suite** . Starting the Phoromatic Server entails running phoronix-test-suite start-phoromatic-server after configuring the server information within *~/.phoronix-test-suite/user-config.xml* . The Phoromatic Server can with or without root permissions depending upon your firewall and the port numbers you wish to use for the server.
On the "client side", any up-to-date version of the Phoronix Test Suite can automatically communicate with the Phoromatic Server. If Avahi support is available (commonly in Linux distribution repositories as _avahi-tools_ ), there should be zero-conf discovery if the Phoromatic Server and client systems are on the same LAN. If a Phoronix Test Suite client discovers a Phoromatic Server, it will attempt to use it automatically as a local download cache. In the event of no Internet connection, it will also attempt to obtain the needed OpenBenchmarking.org test/suite meta-data from the Phoromatic Server based upon its archived meta-data. This allows the Phoronix Test Suite / Phoromatic deployment on the LAN to be self-sustaining without an Internet connection as long as the systems have all installed test dependencies.
Further configuration of the setup parameters for the Phoromatic Server and Phoronix Test Suite clients can be tuned via the *~/.phoronix-test-suite/user-config.xml* file. All control and configuration of the Phoromatic Server is done via the web-based interface when the Phoromatic Server is active.
The Phoromatic Server utilizes PHP/HHVM's built-in web-server capabilities and there's also a Phoronix Test Suite built-in WebSocket server that's also initiated for back-end processing. At this time there are no ports set by default for these services but must be defined within the user configuration file. With the Avahi zero-conf network discovery and other automated detection in place, there's little restrictions over the port selection.
Systemd and Upstart service files are shipped with the Phoronix Test Suite for those that wish to have the services automatically run as daemons. The only new requirements over the basic Phoronix Test Suite system requirements is having PHP-SQLite support installed and the newer version of PHP or HHVM is recommended for offering the best support.
### Example Deployments
#### Use Case A: Unrestricted Internet Access, Local Result Storage
Systems on your network with unrestricted Internet access is the easiest and simplest deployment for the Phoronix Test Suite and Phoromatic. After installing the Phoronix Test Suite on the system you wish to designate the Phoromatic Server and have configured the *user-config.xml* file, simply run:
**$ phoronix-test-suite start-phoromatic-server**
Assuming you have no firewall or permission issues, the built-in web server and WebSocket server should proceed to initiate along with outputting the IP/port information for these services. Unless otherwise disabled from the user configuration file and if avahi-tools is present, the Phoromatic Server will be advertised with Avahi for zero-configuration networking.
From the Phoromatic web interface you are able to create an account and from there proceed with the creating of test schedules, updating settings, and connecting systems. From the "client systems" you wish to use as the benchmarking nodes, it's simply a matter of running **phoronix-test-suite phoromatic.connect** with zero-conf networking or otherwise follow the information from the Phoromatic web interface for manual setup with the IP/port information.
#### Use Case B: No Internet Available To Client Systems
It's possible to run the Phoronix Test Suite and Phoromatic Server without a persistent Internet connection as long as you are able to first download the necessary files to the Phoromatic Server. After installing the Phoronix Test Suite on the system you wish to designate the Phoromatic Server and have configured the *user-config.xml* file, a few commands from the system while having an Internet connection will be able to cache the needed data:
**$ phoronix-test-suite make-download-cache x264 xonotic ffmpeg**
This command will simply download all of the needed test files for the tests/suites passed to the sub-command. Alternatively you could also pass pts/all to cache all tests. It's important though to just cache the tests/suites you'll be using on your network. This will generate the test file download cache by default to *~/.phoronix-test-suite/download-cache/* or */usr/share/phoronix-test-suite/download-cache/* depending upon your write permissions. You can always run this command later with more test files. Alternatively, if you already have a number of tests installed on the system, simply running "phoronix-test-suite make-download-cache" will generate the cache based upon the currently installed tests.
**$ phoronix-test-suite make-openbenchmarking-cache**
This command will cache as much of the OpenBenchmarking.org meta-data as possible for test profiles and test suites. After the above commands, the Phoromatic Server should no longer need a persistent Internet connection.
**$ phororonix-test-suite start-phoromatic-server**
Proceed to start the Phoromatic Server and operate as normal.
For the test clients without an Internet connection, as long as they're able to reach the Phoromatic Server, the Phoromatic Server should be able to automatically serve all of the needed test files download cache and OpenBenchmarking.org meta-data to the systems locally.
#### Use Case C: Phoromatic Across The Internet
If wishing to use the same Phoromatic Server across multiple geographic locations, it's easily possible -- you just lose out on the zero-conf networking ability. To let the Phoronix Test Suite client systems know about the remote Phoromatic Server, simply add the Phoromatic Server information to the client's *PhoromaticServers* element within the *user-config.xml* . Of course, make sure the Phoromatic Server has a globally resolvable IP address and its Phoromatic HTTP/WebSocket ports are open. Once informing the client of the Phoromatic Server, the use cases as above apply in the same manner.
### Client Setup
From Phoronix Test Suite client systems running on the LAN, the following command will report all available detected Phoromatic Servers along with important server and debugging information:
**$ phoronix-test-suite phoromatic.explore**
With the following example output on finding one successful server:
*IP: 192.168.1.211
HTTP PORT: 5447
WEBSOCKET PORT: 5427
SERVER: PHP 5.5.9-1ubuntu4.4 Development Server
PHORONIX TEST SUITE: Phoronix Test Suite v5.4.0m1 [5313]
DOWNLOAD CACHE: 19 FILES / 2390 MB CACHE SIZE
SUPPORTED OPENBENCHMARKING.ORG REPOSITORIES:
pts - Last Generated: 05 Oct 2014 07:16*
Phoromatic Servers are detected by the Phoronix Test Suite through Avahi or if manually configuring the Phoronix Test Suite clients to point to Phoromatic Servers. For networks without Avahi/auto-discovery support or for test systems that may be connecting from another network, the IP address and HTTP port number can be added to the local system's *~/.phoronix-test-suite/user-config.xml* with the *PhoromaticServers* element. Adding the *IP:port* (the Phoromatic Server's HTTP port) to the PhoromaticServers *user-config.xml* element for will perform targeted probing by the Phoronix Test Suite without any dependence on Avahi. Multiple Phoromatic Servers can be added if each IP:port is delimited by a comma.
To connect a Phoronix Test Suite system for benchmarking to an account, log into your Phoromatic account from the web-interface and on the main/system pages will be instructions along with a specially formed string to run, e.g. *phoronix-test-suite phoromatic.connect 192.168.1.211:5447/I0SSJY* . When running that command once on the system(s) to be synced to that account, as the administrator you'll be able to validate/approve the systems from the Phoromatic web interface. After that, whenever the system(s) are to be running benchmarks, simply have the **phoronix-test-suite phoromatic.connect** command running on the system (after the initial account has been synced, simply running **phoronix-test-suite phoromatic.connect** is enough for the system to find the server and its account).
### Root Administrator
The root administrator account is able to manage the server-level settings, e.g. Phoromatic storage location and other global settings related to the Phoronix Test Suite / Phoromatic Server, from the web user-interface.
To enable the root administrator log-in, first from the server's command-line interface run **phoronix-test-suite phoromatic.set-root-admin-password** to set the password. Following that, you can log into the root administrator account via the web interface via the *rootadmin* user-name and the set password.
### Other Advice
#### Disable Internet Precaution
If you have an Internet connection but want to ensure your Phoronix Test Suite client doesn't attempt to use it for any matter, via the *~/.phoronix-test-suite/user-config.xml* you can set *NoInternetCommunication* to *TRUE* . There's also a NoNetworkCommunication tag, but setting that to TRUE will disable any form of network communication -- including communication with the Phoromatic Server.
#### Ports / Services
The Phoromatic Server process currently relies upon a PHP/HHVM built-in web server process and a PTS-hosted WebSocket server. The web server process handles the web UI and much of the responsibilities of the Phoromatic Server. Over time the PTS WebSocket server will be increasingly utilized for bi-directional, real-time communication between the server and clients -- including for features like viewing real-time hardware sensors of client systems from the server UI.
#### Systemd / Upstart
Packaged with the Phoronix Test Suite are basic *phoromatic-client* and *phoromatic-server* configurations for both Upstart and systemd init systems. The *phoromatic-server* configuration will launch the Phoronix Test Suite's Phoromatic Server and the *phoromatic-client* service will attempt to connect to a _pre-configured_ Phoromatic Server. The systemd service files will automatically be installed via the Phoronix Test Suite *install-sh* process while the Upstart jobs can be copied from *deploy/phoromatic-upstart/** to */etc/init* .
#### Cache Verification
To confirm the files accessible to Phoronix Test Suite client systems, from the Phoromatic Server web user-interface go to the *settings* page followed by the *cache settings* link to view information about the download and OpenBenchmarking.org caches. From the client systems, running **phoronix-test-suite phoromatic.explore** will also supply cache statistics.
#### Log Files
The Phoromatic Server will produce a log file of events / debugging information to *~/.phoronix-test-suite/phoromatic.log* or */var/log/phoromatic.log* depending upon the service's permissions. When running the Phoronix Test Suite Phoromatic client, the log will be written to one of the respective locations in *phoronix-test-suite.log* .
#### Multi-User Accounts
For each time a user account is made from the Phoromatic web UI's log-in page, all of the test schedules, systems, and other account information is separate to allow for a completely isolated multi-user system. If a main administrator (the one creating the account) wishes to have multiple users sharing the same account data, that user can create additional accounts from the *Users* tab of their account. The main administrator can make an additional administrator account or a "viewer" account that can consume the account's data but not create/modify the schedules, systems, or other account details.
#### File Locations
When running the Phoronix Test Suite Phoromatic Server as root, rather than using the *~/.phoronix-test-suite/* directory, the standard Linux file-system hierarchy standard is honored. The main storage path is */var/lib/phoronix-test-suite/* , the user configuration file is */etc/phoronix-test-suite.xml* , and */var/cache/phoronix-test-suite/* for cache files.
#### Uploading Other Test Results
Unscheduled test results and other results found on connected systems to a Phoromatic account can upload the data to the Phoromatic Server using the *phoronix-test-suite phoromatic.upload-result <result file identifier >* sub-command.
#### User Context File Logging
For those utilizing custom set context script files as part of the Phoromatic test schedule, any important notes / log information can be written to the file specified by the *PHOROMATIC_LOG_FILE* environment variable set while running the user context scripts. The contents of that file is then sent to the Phoromatic Server otherwise the standard output of the script's execution is submitted to the Phoromatic Server for logging. These logs can then be viewed by the Phoromatic Server along with the test results. Other environment variables accessible when running a user context script include *PHOROMATIC_TRIGGER* , *PHOROMATIC_SCHEDULE_ID* , and *PHOROMATIC_SCHEDULE_PROCESS* .

View File

@@ -0,0 +1,27 @@
# Phoronix Test Suite On Windows
### Introduction
Phoronix Test Suite 8.0 features rewritten Windows support that is at a near feature parity to the program's long-standing support for Linux, macOS, BSD and Solaris operating systems. To make it abundantly clear, if you are using a Phoronix Test Suite version pre-8.0, you are best upgrading or ideally using Phoronix Test Suite Git as the Windows support remains in very active development at the moment as of early 2018.
The Phoronix Test Suite Windows support currently targets **Windows 10 x64** and **Windows Server 2016 x64** . Earlier versions of Windows, namely Windows Server 2012 and Windows 8, may work to some extent but some hardware/software reporting features and other capabilities may be missing or report warning messages. The Phoronix Test Suite Windows support is also exclusively focused on x86 64-bit support: the Phoronix Test Suite itself will run on x86 32-bit but many of the program dependencies are configured for making use of 64-bit binaries.
### Windows Setup / Dependencies
As with Phoronix Test Suite on Linux and other operating systems, the principal dependency is on PHP (PHP v5.3 or newer, including PHP 7.x). Running the *phoronix-test-suite.bat* file launcher for the Phoronix Test Suite on Windows will attempt to download and setup PHP on the system under *C:\PHP* as the default location should PHP support not be found within your system's *Program Files* directories. The PHP Windows build does depend upon Microsoft Visual C++ redistributable libraries, which the Windows launcher will also attempt to download and install if needed.
The Phoronix Test Suite on Windows does depend upon [Cygwin](https://www.cygwin.com/) for its Bash interpreter and other basic utilities to ease the process of porting test profiles to Windows with being able to use many of the same test installation scripts on Windows/Linux/macOS/BSD/Solaris then largely unmodified. Most of the Windows tests depend upon their respective native Windows applications/binaries while this Cygwin support is a convenience for handling these Bash setup scripts and also some test profiles that depend upon a GNU toolchain. The Phoronix Test Suite will attempt to download and setup Cygwin on the system if Cygwin isn't found in its default location of *C:\cygwin64* .
Various test profiles may depend upon other "external dependencies" like Python, PERL, Steam, and Java, as examples. The Phoronix Test Suite as with its support for other operating systems and Linux distributions will attempt to install these needed dependencies on a per-test basis when needed if existing support is not detected on the system.
### Running The Phoronix Test Suite On Windows
The Phoronix Test Suite can run from its local directory and does not need to be "installed" to a system path or any other "setup" process prior to execution. On a clean install of Windows 10 x64 or Windows Server 2016, deploying the Phoronix Test Suite is designed to be as easy and straight-forward as possible:
1. Download the Phoronix Test Suite 8.0+ or [Phoronix-Test-Suite from GitHub](https://github.com/phoronix-test-suite/phoronix-test-suite) ( [zip file](https://github.com/phoronix-test-suite/phoronix-test-suite/archive/master.zip) ).
2. From the Command Prompt or PowerShell, enter the *phoronix-test-suite* directory whether it be from Git or a zipped download.
3. Run the *phoronix-test-suite.bat* file that should proceed to run the Phoronix Test Suite just as you would on any other operating system. If needed the Phoronix Test Suite will try to initially download and setup PHP if needed followed by the attempted automatic Cygwin setup, etc.
4. Any of the Phoronix Test Suite commands from other operating systems should work on Windows. If you are new to the Phoronix Test Suite, you may enjoy a bit more guided experience by running the **phoronix-test-suite shell** command.
### Test Profiles On Windows
As of March 2018, around 50 of the test profiles are currently compatible with the Phoronix Test Suite on Windows. This includes many of the popular benchmarks and other interesting test cases. Over time more test profiles will continue to be ported to Windows where applicable and there are also some Windows-only tests also supported for execution by the Phoronix Test Suite.
### Getting Started
Besides **phoronix-test-suite shell** and **phoronix-test-suite help** , there is also **phoronix-test-suite interactive** for helping new users understand Phoronix Test Suite benchmarking. Long story short, it should be as easy as running **phoronix-test-suite benchmark c-ray** or **phoronix-test-suite benchmark crafty** as some examples for carrying out automated, cross-platform benchmarks in a side-by-side and fully-reproducible manner.
### Support
Community technical support is available via [GitHub](https://github.com/phoronix-test-suite/phoronix-test-suite/issues) or general inquiries via [the Phoronix Forums](https://www.phoronix.com/forums/forum/phoronix/phoronix-test-suite) . For enterprise inquiries, commercial support, and custom engineering services, [contact us](http://phoronix-test-suite.com/?k=commercial) .

View File

@@ -0,0 +1,27 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Title>Phoronix Test Suite On Windows</Title>
</head>
<body>
<h2>Introduction</h2>
<p>Phoronix Test Suite 8.0 features rewritten Windows support that is at a near feature parity to the program's long-standing support for Linux, macOS, BSD and Solaris operating systems. To make it abundantly clear, if you are using a Phoronix Test Suite version pre-8.0, you are best upgrading or ideally using Phoronix Test Suite Git as the Windows support remains in very active development at the moment as of early 2018.</p>
<p>The Phoronix Test Suite Windows support currently targets <strong>Windows 10 x64</strong> and <strong>Windows Server 2016 x64</strong>. Earlier versions of Windows, namely Windows Server 2012 and Windows 8, may work to some extent but some hardware/software reporting features and other capabilities may be missing or report warning messages. The Phoronix Test Suite Windows support is also exclusively focused on x86 64-bit support: the Phoronix Test Suite itself will run on x86 32-bit but many of the program dependencies are configured for making use of 64-bit binaries.</p>
<h2>Windows Setup / Dependencies</h2>
<p>As with Phoronix Test Suite on Linux and other operating systems, the principal dependency is on PHP (PHP v5.3 or newer, including PHP 7.x). Running the <em>phoronix-test-suite.bat</em> file launcher for the Phoronix Test Suite on Windows will attempt to download and setup PHP on the system under <em>C:\PHP</em> as the default location should PHP support not be found within your system's <em>Program Files</em> directories. The PHP Windows build does depend upon Microsoft Visual C++ redistributable libraries, which the Windows launcher will also attempt to download and install if needed.</p>
<p>The Phoronix Test Suite on Windows does depend upon <a href="https://www.cygwin.com/">Cygwin</a> for its Bash interpreter and other basic utilities to ease the process of porting test profiles to Windows with being able to use many of the same test installation scripts on Windows/Linux/macOS/BSD/Solaris then largely unmodified. Most of the Windows tests depend upon their respective native Windows applications/binaries while this Cygwin support is a convenience for handling these Bash setup scripts and also some test profiles that depend upon a GNU toolchain. The Phoronix Test Suite will attempt to download and setup Cygwin on the system if Cygwin isn't found in its default location of <em>C:\cygwin64</em>.</p>
<p>Various test profiles may depend upon other &quot;external dependencies&quot; like Python, PERL, Steam, and Java, as examples. The Phoronix Test Suite as with its support for other operating systems and Linux distributions will attempt to install these needed dependencies on a per-test basis when needed if existing support is not detected on the system.</p>
<h2>Running The Phoronix Test Suite On Windows</h2>
<p>The Phoronix Test Suite can run from its local directory and does not need to be &quot;installed&quot; to a system path or any other &quot;setup&quot; process prior to execution. On a clean install of Windows 10 x64 or Windows Server 2016, deploying the Phoronix Test Suite is designed to be as easy and straight-forward as possible:</p>
<p>1. Download the Phoronix Test Suite 8.0+ or <a href="https://github.com/phoronix-test-suite/phoronix-test-suite">Phoronix-Test-Suite from GitHub</a> (<a href="https://github.com/phoronix-test-suite/phoronix-test-suite/archive/master.zip">zip file</a>).</p>
<p>2. From the Command Prompt or PowerShell, enter the <em>phoronix-test-suite</em> directory whether it be from Git or a zipped download.</p>
<p>3. Run the <em>phoronix-test-suite.bat</em> file that should proceed to run the Phoronix Test Suite just as you would on any other operating system. If needed the Phoronix Test Suite will try to initially download and setup PHP if needed followed by the attempted automatic Cygwin setup, etc.</p>
<p>4. Any of the Phoronix Test Suite commands from other operating systems should work on Windows. If you are new to the Phoronix Test Suite, you may enjoy a bit more guided experience by running the <strong>phoronix-test-suite shell</strong> command.</p>
<h2>Test Profiles On Windows</h2>
<p>As of March 2018, around 50 of the test profiles are currently compatible with the Phoronix Test Suite on Windows. This includes many of the popular benchmarks and other interesting test cases. Over time more test profiles will continue to be ported to Windows where applicable and there are also some Windows-only tests also supported for execution by the Phoronix Test Suite.</p>
<h2>Getting Started</h2>
<p>Besides <strong>phoronix-test-suite shell</strong> and <strong>phoronix-test-suite help</strong>, there is also <strong>phoronix-test-suite interactive</strong> for helping new users understand Phoronix Test Suite benchmarking. Long story short, it should be as easy as running <strong>phoronix-test-suite benchmark c-ray</strong> or <strong>phoronix-test-suite benchmark crafty</strong> as some examples for carrying out automated, cross-platform benchmarks in a side-by-side and fully-reproducible manner.</p>
<h2>Support</h2>
<p>Community technical support is available via <a href="https://github.com/phoronix-test-suite/phoronix-test-suite/issues">GitHub</a> or general inquiries via <a href="https://www.phoronix.com/forums/forum/phoronix/phoronix-test-suite">the Phoronix Forums</a>. For enterprise inquiries, commercial support, and custom engineering services, <a href="http://phoronix-test-suite.com/?k=commercial">contact us</a>.</p>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,781 @@
# Getting Started
## Overview
The Phoronix Test Suite is the most comprehensive testing and benchmarking platform available for Linux, Solaris, Mac OS X, and BSD operating systems. The Phoronix Test Suite allows for carrying out tests in a fully automated manner from test installation to execution and reporting. All tests are meant to be easily reproducible, easy-to-use, and support fully automated execution. The Phoronix Test Suite is open-source under the GNU GPLv3 license and is developed by Phoronix Media in cooperation with partners. Version 1.0 of the Phoronix Test Suite was publicly released in 2008.
The Phoronix Test Suite client itself is a test framework for providing seamless execution of test profiles and test suites. There are more than 200 tests available by default, which are transparently available via [OpenBenchmarking.org](http://openbenchmarking.org/) integration. Of these default test profiles there is a range of sub-systems that can be tested and a range of hardware from mobile devices to desktops and worksrtations/servers. New tests can be easily introduced via the Phoronix Test Suite's extensible test architecture, with test profiles consisting of XML files and shell scripts. Test profiles can produce a quantitative result or other qualitative/abstract results like image quality comparisons and pass/fail. Using Phoronix Test Suite modules, other data can also be automatically collected at run-time such as the system power consumption, disk usage, and other software/hardware sensors. Test suites contain references to test profiles to execute as part of a set or can also reference other test suites. Test suites are defined via an XML schema.
Running the Phoronix Test Suite for the first time can be as simple as issuing a command such as *phoronix-test-suite benchmark c-ray* , which would proceed to install a simple CPU test, execute the test, and report the results. Along with the results, the system's hardware/software information is collected in a detailed manner, relevant system logs, and other important system attributes such as compiler flags and system state. Users can optionally upload their results to OpenBenchmarking.org for sharing results with others, comparing results against other systems, and to carry out further analysis.
## OpenBenchmarking.org
OpenBenchmarking.org is an open, collaborative testing platform that makes the Phoronix Test Suite an even more extensible platform for conducting automated tests with complete integration into Phoronix Test Suite test client. OpenBenchmarking.org serves as a repository for storing test profiles, test suites, and result data. Test profiles and suites are stored in the OpenBenchmarking.org cloud to allow for new/updated tests to be seamlessly obtained via the Phoronix Test Suite without needing to manually update the Phoronix Test Suite client. OpenBenchmarking.org also makes it easy to facilitate side-by-side comparisons with any other results stored in the OpenBenchmarking.org cloud. Any Phoronix Test Suite user is permitted to upload their test results, test profiles, and suites to OpenBenchmarking.org.
When finding a set of results on OpenBenchmarking.org (e.g. [an example result file](http://openbenchmarking.org/result/1203160-BY-NVTEGRA3785) ), it's as easy as running the Phoronix Test Suite with that OpenBenchmarking.org ID to perform an automated side-by-side comparison (e.g. *phoronix-test-suite benchmark 1203160-BY-NVTEGRA3785* ).
Thanks to the wealth of test data (results, system logs, etc) from crowd-sourced benchmarking via the Phoronix Test Suite, a plethora of analytical features are also available from OpenBenchmarking.org.
## Phoromatic
Phoromatic is a remote management system for the Phoronix Test Suite that allows the automatic scheduling of tests, remote installation of new tests, and the management of multiple test systems all through an intuitive, easy-to-use web interface. Tests can be scheduled to automatically run on a routine basis across multiple test systems. Phoromatic can also interface with revision control systems to offer support for issuing new tests on a context-basis, such as whenever a Git commit has been pushed or new daily image available. The test results are then available from this central, secure location.
Phoromatic is an add-on to the Phoronix Test Suite that's primarily intended for enterprise users when facilitating tests across a wide-spectrum of hardware within a test lab or when needing to carry out tests on a routine basis.
# User Options
The following options are currently supported by the Phoronix Test Suite client. A list of available options can also be found by running *phoronix-test-suite help.*
---
## System
#### diagnostics
This option will print information that is useful to developers when debugging problems with the Phoronix Test Suite and/or test profiles and test suites.
#### interactive
A simple text-driven interactive interface to the Phoronix Test Suite.
#### php-conf
This option will print information that is useful to developers when debugging problems with the Phoronix Test Suite and/or test profiles and test suites.
#### shell
A simple text-driven shell interface / helper to the Phoronix Test Suite. Ideal for those that may be new to the Phoronix Test Suite
#### system-info
Display the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.
#### system-sensors
Display the installed system hardware and software sensors in real-time as detected by the Phoronix Test Suite Phodevi Library.
## Test Installation
#### force-install [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will force the installation (or re-installation) of a test or suite. The arguments and process is similar to the install option but even if the test is installed, the entire installation process will automatically be executed. This option is generally used when debugging a test installation problem.
#### install [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the selected test(s) inside the testing environment directory. The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.
#### install-dependencies [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the external dependencies needed by the selected test(s) using the distribution's package management system. For example, some tests depend upon GCC for compiling code. If GCC is not detected on the system, the Phoronix Test Suite will attempt to install GCC using the distribution's package management system. If you are running this command as a local user, you may be prompted for the root password while the process is running. For unsupported distributions, the dependency names will be displayed along with common names for the package. The install-dependencies option needs to be supplied with the test name or suite as an argument. When using the install option, the external dependencies are automatically checked.
#### make-download-cache
This option will create a download cache for use by the Phoronix Test Suite. The download cache is created of test files already downloaded to the local system. If passing any test/suite names to make-download-cache, the needed files for those test profiles will first be automatically downloaded before creating the cache.
#### remove-installed-test [Test]
This option will permanently remove a installed test by the Phoronix Test Suite.
## Testing
#### auto-compare
This option will autonomously determine the most relevant test(s) to run for any selected sub-system(s). The tests to run are determined via OpenBenchmarking.org integration with the global results pool. Related test results from OpenBenchmarking.org are also merged to provide a straight-forward and effective means of carrying out a system comparison. If wishing to find comparable results for any particular test profile(s), simply pass the test profile names as additional arguments to this command.
#### benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the selected test(s) (if needed) and will proceed to run the test(s). This option is equivalent to running phoronix-test-suite with the install option followed by the run option. Multiple arguments can be supplied to run additional tests at the same time and save the results into one file.
#### estimate-run-time [Test | Suite | OpenBenchmarking ID | Test Result]
This option will provide estimates for test run-time / length.
#### finish-run [Test Result]
This option can be used if a test run had not properly finished running all tests within a saved results file. Using this option when specifying a saved results file where all tests had not completed will attempt to finish testing on the remaining tests where there are missing results.
#### run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will run the selected test(s).
#### run-random-tests
This option will query OpenBenchmarking.org to run random benchmarks and result comparisons on the system. This test can be used for simply supplying interesting results from your system onto OpenBenchmarking.org, stressing your system with random workloads, seeding new OpenBenchmarking.org results, etc. Basic options are provided at start-up for tuning the randomness of the testing when running this command.
#### run-tests-in-suite
This option can be used if you wish to run all of the tests found in a supplied suite, but you wish to re-configure each of the test options rather than using the defaults supplied by the suite.
#### stress-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will run the passed tests/suites in the multi-process stress-testing mode. The stress-run mode will not produce a result file but is rather intended for running multiple test profiles concurrently to stress / burn-in the system. The number of tests to run concurrently can be toggled via the PTS_CONCURRENT_TEST_RUNS environment variable and by default is set to a value of 2.
## Batch Testing
#### batch-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option and its arguments are equivalent to the benchmark option, but the process will be run in the Phoronix Test Suite batch mode.
#### batch-install [Test | Suite | OpenBenchmarking ID | Test Result] ...
If you wish to run the install process in the Phoronix Test Suite batch mode but do not wish to run any tests at this time. Running the install process in the batch mode will use the default values and not prompt the user of any possible options, to ensure the process is fully automated.
#### batch-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option and its arguments are equivalent to the run option, but the process will be run in the Phoronix Test Suite batch mode.
#### batch-setup
This option is used to configure the batch mode options for the Phoronix Test Suite, which is subsequently written to the user configuration file. Among the options are whether to automatically upload the test results to OpenBenchmarking.org and prompting for the saved file name.
#### default-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will install the selected test(s) (if needed) and will proceed to run the test(s) in the defaults mode. This option is equivalent to running phoronix-test-suite with the install option followed by the default-run option.
#### default-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option will run the selected test(s). The name of the test or suite must be supplied or the OpenBenchmarking.org ID or saved local file name. Multiple arguments can be supplied to run additional tests at the same time and save the results in a suite-like fashion. Unlike the normal run option, the default-run will not prompt the user to select from the available test options but will instead use the default options as automatically set by pts-core or the test profile. Use batch-run to automatically test all of the available options.
#### internal-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option and its arguments pre-set the Phoronix Test Suite batch run mode with sane values for carrying out benchmarks in a semi-automated manner and without uploading any of the result data to the public OpenBenchmarking.org.
## OpenBenchmarking.org
#### clone-result [OpenBenchmarking ID] ...
This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied.
#### list-recommended-tests
This option will list recommended test profiles for benchmarking sorted by hardware sub-system. The recommended tests are determined via querying OpenBenchmarking.org and determining the most popular tests for a given environment based upon the number of times a test profile has been downloaded, the number of test results available on OpenBenchmarking.org for a given test profile, the age of the test profile, and other weighted factors.
#### make-openbenchmarking-cache
This option will attempt to cache the test profile/suite meta-data from OpenBenchmarking.org for all linked repositories. This is useful if you're going to be running the Phoronix Test Suite / Phoromatic behind a firewall or without any Internet connection. Those with unrestricted Internet access or not utilizing a large local deployment of the Phoronix Test Suite / Phoromatic shouldn't need to run this command.
#### openbenchmarking-changes
This option will list recent changes to test profiles of enabled OpenBenchmarking.org repositories.
#### openbenchmarking-login
This option is used for controlling your Phoronix Test Suite client options for OpenBechmarking.org and syncing the client to your account.
#### openbenchmarking-refresh
This option is used for refreshing the stored OpenBenchmarking.org repostory information and other data. The Phoronix Test Suite will automatically refresh this data every three days or when other thresholds are exceeded, but this command can be used to manually refresh/updates the data.
#### openbenchmarking-repositories
This option will list the OpenBenchmarking.org repositories currently linked to this Phoronix Test Suite client instance.
#### openbenchmarking-uploads
This option will list any recent test result uploads from the system's IP address to OpenBenchmarking.org.
#### upload-result [Test Result]
This option is used for uploading a test result to OpenBenchmarking.org.
#### upload-test-profile
This option can be used for uploading a test profile to your account on OpenBenchmarking.org. By uploading your test profile to OpenBenchmarking.org, others are then able to browse and access this test suite for easy distribution in a seamless manner by other Phoronix Test Suite clients.
#### upload-test-suite
This option can be used for uploading a test suite to your account on OpenBenchmarking.org. By uploading your test suite to OpenBenchmarking.org, others are then able to browse and access this test suite for easy distribution.
## Information
#### info [Test | Suite | OpenBenchmarking ID | Test Result]
This option will show details about the supplied test, suite, virtual suite, or result file.
#### list-available-suites
This option will list all test suites that are available from the enabled OpenBenchmarking.org repositories.
#### list-available-tests
This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories where supported on the system and are of a verified state. If the system has no Internet access, it will only list the test profiles where the necesary test assets are available locally on the system or on an available network cache, unless using the list-all-tests option to override this behavior.
#### list-available-virtual-suites
This option will list all available virtual test suites that can be dynamically created based upon the available tests from enabled OpenBenchmarking.org repositories.
#### list-installed-dependencies
This option will list all of the packages / external test dependencies that are already installed on the system that the Phoronix Test Suite may potentially depend upon by test profiles.
#### list-installed-suites
This option will list all suites that are currently installed on the system.
#### list-installed-tests
This option will list all test profiles that are currently installed on the system.
#### list-missing-dependencies
This option will list all of the packages / external test dependencies that are missing from the system that the Phoronix Test Suite may potentially need by select test profiles.
#### list-not-installed-tests
This option will list all test profiles that are supported and available but presently NOT installed on the system.
#### list-possible-dependencies
This option will list all of the packages / external test dependencies that are are potentially used by the Phoronix Test Suite.
#### list-saved-results
This option will list all of the saved test results found on the system.
#### list-test-usage
This option will list various details about installed tests and their usage.
#### list-unsupported-tests
This option will list all available test profiles that are available from the enabled OpenBenchmarking.org repositories but are NOT SUPPORTED on the given hardware/software platform. This is mainly a debugging option for those looking for test profiles to potentially port to new platforms, etc.
#### search
This option provides command-line searching abilities for test profiles / test suites / test results. The search query can be passed as a parameter otherwise the user is prompted to input their search query..
## Asset Creation
#### build-suite
This option will guide the user through the process of generating their own test suite, which they can then run. Optionally, passed as arguments can be the test(s) or suite(s) to add to the suite to be created, instead of being prompted through the process.
#### create-test-profile
This option can be used for creating a Phoronix Test Suite test profile by answering questions about the test for constructing the test profile XML meta-data and handling other boiler-plate basics for getting started in developing new tests.
#### debug-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the <em>run</em> option but will yield more information during the run process that can be used to debug issues with a test profile or to verify the test profile is functioning correctly.
#### debug-install [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the install option but will yield more information during the run process that can be used to debug issues with a test profile installer or to verify the test profile is functioning correctly.
#### debug-result-parser [Test | Suite | OpenBenchmarking ID | Test Result] ...
This option is intended for use by test profile writers and is used for debugging a result parser. No test execution is done, but there must already be PTS-generated .log files present within the test's installation directory.
#### debug-test-download-links [Test | Suite | OpenBenchmarking ID | Test Result]
This option will check all download links within the specified test profile(s) to ensure there are no broken URLs.
#### download-test-files [Test | Suite | OpenBenchmarking ID | Test Result] ...
This will download the selected test file(s) to the Phoronix Test Suite download cache but will not install the tests.
#### inspect-test-profile [Test]
This option can be used for inspecting a Phoronix Test Suite test profile with providing inside details on test profiles for debugging / evaluation / learning purposes.
#### result-file-to-suite [Test Result]
This option will guide the user through the process of generating their own test suite, which they can then run, that is based upon an existing test results file.
#### validate-result-file
This option can be used for validating a Phoronix Test Suite result file as being compliant against the OpenBenchmarking.org specification.
#### validate-test-profile [Test]
This option can be used for validating a Phoronix Test Suite test profile as being compliant against the OpenBenchmarking.org specification.
#### validate-test-suite
This option can be used for validating a Phoronix Test Suite test suite as being compliant against the OpenBenchmarking.org specification.
## Result Management
#### analyze-all-runs [Test Result]
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 is numerical result data from all trial runs.\n\nThe 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.
#### auto-sort-result-file [Test Result]
This option is used if you wish to automatically attempt to sort the results by their result identifier string.
#### edit-result-file [Test Result]
This option is used if you wish to edit the title and description of an existing result file.
#### extract-from-result-file [Test Result]
This option will extract a single set of test results from a saved results file that contains multiple test results that have been merged. The user is the prompted to specify a new result file name and select which result identifier to extract.
#### merge-results [Test Result] ...
This option will manually merge multiple sets of test results generated by the Phoronix Test Suite.
#### refresh-graphs [Test Result]
This option will re-render and save all result graphs within a saved file. This option can be used when making modifications to the graphing code or its color/option configuration file and testing the changes.
#### remove-from-result-file [Test Result]
This option is used if there is a set of test results you wish to remove/delete from a saved results file. The user must specify a saved results file and then they will be prompted to select the results identifier associated with the results they wish to remove.
#### remove-result [Test Result]
This option will permanently remove the saved file set that is set as the first argument.
#### rename-identifier-in-result-file [Test Result]
This option is used if you wish to change the name of the identifier in a test results file that is shown in the Phoronix Test Suite Results Viewer and the contained graphs.
#### rename-result-file [Test Result]
This option is used if you wish to change the name of the saved name of a result file.
#### reorder-result-file [Test Result]
This option is used if you wish to manually change the order in which test results are shown in the Phoronix Test Suite Results Viewer and the contained graphs. The user must specify a saved results file and then they will be prompted to select the results identifiers one at a time in the order they would like them to be displayed from left to right.
#### result-file-to-csv [Test Result]
This option will read a saved test results file and output the system hardware and software information along with the results to a CSV output. The CSV (Comma Separated Values) output can then be loaded into a spreadsheet for easy viewing.
#### result-file-to-json [Test Result]
This option will read a saved test results file and output the basic result information to JSON (JavaScript Object Notation).
#### result-file-to-pdf [Test Result]
This option will read a saved test results file and output the system hardware and software information along with the results to a PDF file.
#### result-file-to-text [Test Result]
This option will read a saved test results file and output the system hardware and software information to the terminal. The test results are also outputted.
#### show-result [Test Result]
Open up the test results in the Phoronix Test Suite Result Viewer or on OpenBenchmarking.org.
#### winners-and-losers [Test Result]
This option is used if you wish to analyze a result file to see which runs produced the most wins/losses of those result identifiers in the saved file.
## Other
#### commands
This option will display a short list of possible Phoronix Test Suite commands.
#### debug-dependency-handler
This option is used for testing the distribution-specific dependency handler for external dependencies.
#### debug-render-test
This option is used during the development of the Phoronix Test Suite software for testing of the result and graph rendering code-paths This option will download a large number of reference test results from LinuxBenchmarking.com.
#### debug-self-test
This option is used during the development of the Phoronix Test Suite software for testing of internal interfaces, commands, and other common code-paths. The produced numbers should only be comparable for the same version of the Phoronix Test Suite, on the same hardware/software system, conducted on the same day of testing. This isn't intended as any scientific benchmark but simply to stress common PHP code-paths and looking for hot areas to optimize, etc.
#### help
This option will display a list of available Phoronix Test Suite commands and possible parameter types.
#### version
This option will display the Phoronix Test Suite client version.
## Modules
#### auto-load-module
This option can be used for easily adding a module to the LoadModules list in the Phoronix Test Suite user configuration file. That list controls what PTS modules are automatically loaded on start-up of the Phoronix Test Suite.
#### list-modules
This option will list all of the available Phoronix Test Suite modules on this system.
#### module-info [Phoronix Test Suite Module]
This option will show detailed information on a Phoronix Test Suite module such as the version, developer, and a description of its purpose.
#### module-setup [Phoronix Test Suite Module]
This option will allow you to configure all available end-user options for a Phoronix Test Suite module. These options are then stored within the user's configuration file. Not all modules may have options that can be configured by the end-user.
#### test-module [Phoronix Test Suite Module]
This option can be used for debugging a Phoronix Test Suite module.
#### unload-module
This option can be used for easily removing a module from the LoadModules list in the Phoronix Test Suite user configuration file. That list controls what modules are automatically loaded on start-up of the Phoronix Test Suite.
## User Configuration
#### enterprise-setup
This option can be run by enterprise users immediately after package installation or as part of an in-house setup script. Running this command will ensure the phoronix-test-suite program is never interrupted on new runs to accept user agreement changes and defaults the anonymous usage reporting to being disabled and other conservative defaults.
#### network-info
This option will print information detected by the Phoronix Test Suite around the system's network configuration.
#### network-setup
This option allows the user to configure how the Phoronix Test Suite connects to OpenBenchmarking.org and other web-services. Connecting through an HTTP proxy can be configured through this option.
#### user-config-reset
This option can be used for resetting the Phoronix Test Suite user configuration file to its default state.
#### user-config-set
This option can be used for setting an XML value in the Phoronix Test Suite user configuration file.
## Web / GUI Support
#### gui
Launch the Phoronix Test Suite HTML5 web user-interface in the local GUI mode (no remote web support) and attempt to auto-launch the web-browser. THIS FEATURE IS CURRENTLY EXPERIMENTAL AND NO LONGER ACTIVE DEVELOPMENT. See Phoronix Test Suite Phoromatic as an alternative web UI approach.
## Phoromatic
#### start-phoromatic-server
Start the Phoromatic web server for controlling local Phoronix Test Suite client systems to facilitate automated and repeated test orchestration and other automated features targeted at the enterprise.
# Module Options
The following list is the modules included with the Phoronix Test Suite that are intended to extend the functionality of pts-core. Some of these options have commands that can be run directly in a similiar manner to the other Phoronix Test Suite user commands. Some modules are just meant to be loaded directly by adding the module name to the LoadModules tag in ~/.phoronix-test-suite/user-config.xml or via the PTS_MODULES environment variable. A list of available modules is also available by running *phoronix-test-suite list-modules.*
---
### Backup Creation + Restore
This is a module for creating backups of the Phoronix Test Suite / Phoromatic and allows for restoring of created backups. The backup will be in ZIP or TAR format. If only a path is specified, the file-name will be auto-generated with a current time-stamp.
phoronix-test-suite backup.create
phoronix-test-suite backup.restore
### Dummy Module
This is a simple module intended for developers to just demonstrate some of the module functions.
phoronix-test-suite dummy_module.dummy-command
### Generate Perf FlameGraphs For Tests
Setting FLAME_GRAPH_PATH=<path to flamegraph path> will auto-load and enable this Phoronix Test Suite module. The module will generate a Linux perf FlameGraph for each test run during the benchmarking process. Details on FlameGraph @ https://github.com/brendangregg/FlameGraph
This module utilizes the following environmental variables: FLAME_GRAPH_PATH.
### Graphics Override
This module allows you to override some graphics rendering settings for the ATI and NVIDIA drivers while running the Phoronix Test Suite.
This module utilizes the following environmental variables: FORCE_AA, FORCE_AF.
### Result Exporter To HTML
This module allows basic exporting of results to HTML for saving either to a file locally (specified using the EXPORT_RESULTS_HTML_FILE_TO environment variable) or to a mail account (specified using the EXPORT_RESULTS_HTML_EMAIL_TO environment variable). EXPORT_RESULTS_HTML_EMAIL_TO supports multiple email addresses delimited by a comma.
This module utilizes the following environmental variables: EXPORT_RESULTS_HTML_EMAIL_TO, EXPORT_RESULTS_HTML_FILE_TO.
### Linux Perf Framework Reporter
Setting LINUX_PERF=1 will auto-load and enable this Phoronix Test Suite module. The module also depends upon running a modern Linux kernel (supporting perf) and that the perf binary is available via standard system paths.
This module utilizes the following environmental variables: LINUX_PERF.
### Log Exporter
This module allows for easily exporting test run logs and system logs to external locations via specifying the directory paths via the COPY_TEST_RUN_LOGS_TO and COPY_SYSTEM_LOGS_TO environment variables.
This module utilizes the following environmental variables: COPY_TEST_RUN_LOGS_TO, COPY_SYSTEM_LOGS_TO.
### MATISK
My Automated Test Infrastructure Setup Kit
phoronix-test-suite matisk.run
phoronix-test-suite matisk.template
### OpenBenchmarking.org Auto Comparison
This module prints comparable OpenBenchmarking.org results in the command-line for reference purposes as tests are being run. OpenBenchmarking.org is automatically queried for results to show based on the test comparison hash and the system type (mobile, desktop, server, cloud, workstation, etc). No other system information or result data is transmitted..
phoronix-test-suite ob_auto_compare.debug
### Performance Per Dollar/Cost Calculator
Setting the COST_PERF_PER_DOLLAR= environment variable to whatever value of the system cost/component you are running a comparison on will yield extra graphs that calculate the performance-per-dollar based on the test being run. The COST_PERF_PER_DOLLAR environment variable is applied just to the current test run identifier. Set the COST_PERF_PER_UNIT= environment variable if wishing to use a metric besides dollar/cost. The COST_PERF_PER_HOUR value can be used rather than COST_PERF_PER_DOLLAR if wishing to calculate the e.g. cloud time or other compute time based on an hourly basis.
phoronix-test-suite perf_per_dollar.add
This module utilizes the following environmental variables: COST_PERF_PER_DOLLAR, COST_PERF_PER_UNIT, COST_PERF_PER_HOUR.
### Performance Tip Prompts
This module alerts the user if the system configuration may not be the right one for achieving the best performance with the target benchmark(s). This initial version of the module actually cares only about the BFQ I/O scheduler and powersave governor checks.
phoronix-test-suite perf_tips.show
This module utilizes the following environmental variables: SUPPRESS_PERF_TIPS.
### Benchmarking Compiler PGO Impact
This module makes it easy to test a compiler PGO (Profile Guided Optimization) performance impact by running a test without PGO optimizations, capturing the PGO profile, rebuilding the tests with the PGO profile generated, and then repeat the benchmarks.
phoronix-test-suite pgo.benchmark
### Phoromatic Client
The Phoromatic client is used for connecting to a Phoromatic server (Phoromatic.com or a locally run server) to facilitate the automatic running of tests, generally across multiple test nodes in a routine manner. For more details visit http://www.phoromatic.com/. This module is intended to be used with Phoronix Test Suite 5.2+ clients and servers.
phoronix-test-suite phoromatic.connect
phoronix-test-suite phoromatic.explore
phoronix-test-suite phoromatic.upload-result
phoronix-test-suite phoromatic.set-root-admin-password
phoronix-test-suite phoromatic.list-results
phoronix-test-suite phoromatic.clone
phoronix-test-suite phoromatic.export-results-for-account-schedules
### Pushover.net
Submit notifications to your iOS/Android mobile devices of test results in real-time as push notifications, etc. Using the Pushover.net API.
This module utilizes the following environmental variables: PUSHOVER_NET_USER.
### Report Test Time Graphs
Setting the RUN_TIMES_ARE_A_BENCHMARK=1 environment variable will automatically create additional graphs for each test run plotting the run-time needed for each test being executed. Setting the INSTALL_TIMES_ARE_A_BENCHMARK=1 environment variable will automatically create additional graphs for each test run plotting the time required for the test installation. Setting the INSTALL_SIZES_ARE_A_BENCHMARK=1 environment variable will automatically create additional graphs for each test run plotting the size of the installed test directory.
This module utilizes the following environmental variables: RUN_TIMES_ARE_A_BENCHMARK, INSTALL_TIMES_ARE_A_BENCHMARK, INSTALL_SIZES_ARE_A_BENCHMARK.
### Result Notifier
A notification module.
### Custom Result Export Methods
A simple example module about interfacing with Phoronix Test Suite core for dumping result files in a custom format.
phoronix-test-suite results_custom_export.nf
### System Monitor
This module contains sensor monitoring support.
This module utilizes the following environmental variables: MONITOR, PERFORMANCE_PER_WATT, MONITOR_INTERVAL, MONITOR_PER_RUN.
### Timed Screenshot
This is a module that will take a screenshot of the system at a pre-defined interval. ImageMagick must be installed onto the system prior to using this module.
This module utilizes the following environmental variables: SCREENSHOT_INTERVAL.
### Toggle Screensaver
This module toggles the system's screensaver while the Phoronix Test Suite is running. At this time, the GNOME and KDE screensavers are supported.
This module utilizes the following environmental variables: HALT_SCREENSAVER.
### Update Checker
This module checks to see if the Phoronix Test Suite -- and its tests and suites -- are up to date.
### Utilize Wine On Linux Benchmarking
This module when activated via the USE_WINE environment variable on Linux systems will override the test profile OS target to Windows and attempt to run the (Windows) tests under Wine, if installed on the system. USE_WINE can be either set to the name of the desired wine command or the absolute path to the wine binary you wish to use for benchmarking.
This module utilizes the following environmental variables: USE_WINE.
### System Event Watchdog
This module has support for stopping/interrupting tests if various system issues occur, like a temperature sensor exceeds a defined threshold.
This module utilizes the following environmental variables: WATCHDOG_SENSOR, WATCHDOG_SENSOR_THRESHOLD.
# Installation Instructions
## Setup Overview
The Phoronix Test Suite supports Linux, Apple Mac OS X, Microsoft Windows, Solaris, Hurd, BSD, and other operating system environments. The only Linux distribution-specific code deals with the external dependencies support feature that are set by individual test profiles. If you are not running one of the supported Linux distributions, Solaris, BSD, or Mac OS X, you may need to install a package manually (as instructed by the Phoronix Test Suite) in order for a test to run. An example of an external dependency would be GCC and the OpenGL Utility Toolkit being needed for test profiles that build an OpenGL benchmark from source-code.
Among the distributions where the Phoronix Test Suite has been officially tested include Ubuntu, Fedora, Mandriva / Mageia, Gentoo, PCLinuxOS, Arch Linux, Pardus, OpenSuSE, Optware, webOS, Zenwalk, CentOS, Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, Debian, Mint, MEPIS, Alpine Linux, Void Linux, Intel Clear Linux, and Amazon Linux EC2.
Among the tested BSD distributions are FreeBSD, PC-BSD, NetBSD, OpenBSD, Debian GNU/kFreeBSD, and DragonflyBSD. Tested Solaris distributions include OpenSolaris, Solaris Express 11, Oracle Solaris 11, OpenIndiana, Illumos, and Nexenta.
## Dependencies
The only required dependency for the Phoronix Test Suite is PHP 5.3 or newer. On Linux distributions, the needed package is commonly called *php5-cli* or *php-cli* or *php7* or *php* . It is important to note that only PHP for the command-line is needed and not a web server (Apache) or other packages commonly associated with PHP and its usage by web-sites. The PHP5 version required is PHP 5.3+ and can also be found at [www.php.net](http://www.php.net/) . PHP 7 is fully supported by the Phoronix Test Suite as well as HHVM.
For installing PHP on Windows, the [Microsoft Web Platform Installer](https://www.microsoft.com/web/platform/phponwindows.aspx) provides an automated alternative that will install PHP into the directory expected by Phoronix Test Suite. Users opting to install PHP manually must extract the files to *C:\Program Files (x86)\PHP\* or a subdirectory.
As part of the PHP requirement, the following PHP extensions are required and/or highly recommended in order to take advantage of the Phoronix Test Suite capabilities:
+
+ PHP DOM is needed for XML operations and must be installed for the Phoronix Test Suite to function.
+
+ PHP ZIP is needed for file compression and decompression and specifically dealing with test profiles and suites obtained via OpenBenchmarking.org or when uploading such tests and suites.
+
+ PHP OpenSSL is used for enabling HTTPS communication with Phoronix Test Suite / OpenBenchmarking.org servers.
+
+ PHP GD is highly recommended for rendering of test data to JPEG and PNG image formats and is selectively used in other image operations.
+
+ PHP Zlib is highly recommended for greater data compression when dealing with remote OpenBenchmarking.org assets.
+
+ PHP PCNTL is used for multi-threaded system sensor monitoring support during the testing process and other threaded tasks by the Phoronix Test Suite module framework.
+
+ PHP POSIX is used for reliably obtaining more system information in an efficient manner.
+
+ PHP CURL is supported as an alternative networking library for improved network performance in downloading test files and other operations.
+
+ PHP FPDF is used to generate PDF reports of test data.
+
Without all of these extensions, some capabilities of the Phoronix Test Suite will not be available. Many of these packages are enabled by default and do not require any additional installation steps on most Linux distributions, otherwise they are often found in the package vendor's repository.
## Notes
### General
You may need to modify the *php.ini* file on your system in order to support uploading results to OpenBenchmarking.org or logging into your OpenBenchmarking.org account. The *allow_url_fopen* , *file_uploads* , and *allow_url_include* options must be set to true in the PHP configuration. See additional information in this [Phoronix Forums support thread](http://www.phoronix.com/forums/showpost.php?p=32484&postcount=4) .
Major updates to the Phoronix Test Suite are released on a quarterly basis. The latest stable and development versions of the Phoronix Test Suite are available at [Phoronix-Test-Suite.com](http://www.phoronix-test-suite.com/) . The Git repository where the latest Phoronix Test Suite code is provided is hosted at [GitHub.com/phoronix-test-suite](https://github.com/phoronix-test-suite/phoronix-test-suite) and can be cloned/pulled from the *https://github.com/phoronix-test-suite/phoronix-test-suite.git* repository location. The latest upstream development code is housed in the master tree while older Phoronix Test Suite releases are available in their respective Git branches based upon the release's code-name.
If building the PHP package from upstream sources, it should just be a matter of running *./configure* with the *--enable-zip* flag (all other requirements should be apart of the stock PHP configuration) to satisfy the PHP needs of the Phoronix Test Suite.
### File Structure
If manually changing the location of the *phoronix-test-suite* launcher file, the *PTS_USER_PATH* environment variable must be adjusted inside the file to reflect the absolute location that leads to the root directory of the *pts* and *pts-core* folders. The *pts-core* directory contains the "engine" of the Phoronix Test Suite.
### Running Locally
The Phoronix Test Suite can be simply extracted from the downloaded *.tar.gz* or *.zip* file or it can also be installed system-wide. If you just wish to run the Phoronix Test Suite without installing it, open a terminal and run *./phoronix-test-suite <options>* from the same directory.
### Generic Installation
Running *install-sh* from the root directory of the Phoronix Test Suite will install the software for system-wide access. By default the *phoronix-test-suite* executable is in */usr/bin/* , the Phoronix Test Suite files in */usr/share/phoronix-test-suite/* , and the documentation in / *usr/share/doc/phoronix-test-suite/* . Root access is required. The default installation prefix is /usr/ but can be adjusted as the first argument (example: *install-sh /home/user/* to install the Phoronix Test Suite in your home directory).
### Debian/Ubuntu Installation
Debian/Ubuntu users are able to follow the Generic Installation instructions or can obtain a Debian Package from the Phoronix Test Suite web-site. The package contains the *phoronix-test-suite* executable in */usr/bin/* , the Phoronix Test Suite files in */usr/share/phoronix-test-suite/* , and the documentation in */usr/share/doc/phoronix-test-suite/* .
A phoronix-test-suite package can also be found in the official Ubuntu universe repository beginning with the Ubuntu 9.04 (Jaunty) release, but it may be out of date compared to the latest upstream version.
On Ubuntu 13.04 and newer if you experience an issue of system sensor monitoring not working, other multi-process tasks, or related issues reported as PHP PCNTL missing, the pcntl functions need to be removed from the *disable_functions* line within the */etc/php5/cli/php.ini* file. This may also affect other Linux distribution support too if the vendor disables access to the PCNTL functions.
### Fedora / Red Hat Installation
The Phoronix Test Suite can be installed on Fedora, Red Hat Enterprise Linux, and CentOS systems using the generic installation method. Alternatively, a *phoronix-test-suite* package is available in recent versions of the Fedora repository and in the EPEL (Extra Packages for Enterprise Linux) repository for Red Hat Enterprise Linux. At this time, however, the Fedora-supplied package is vastly out of date.
### Gentoo Installation
Gentoo ebuild's for the Phoronix Test Suite have been created by users and can be currently found in the [Gentoo BugZilla](http://bugs.gentoo.org/show_bug.cgi?id=216656) .
### Mandriva Installation
Phoronix Test Suite packages are available through Mandriva Cooker starting with the Mandriva Linux 2009 release.
### OpenSolaris Installation
The Phoronix Test Suite core (pts-core) is supported on Solaris and OpenSolaris platforms, but some features may not fully function. Additionally, the PTS External Dependencies feature is supported on OpenSolaris using IPS (the Image Packaging System). However, not all test profiles are supported on Solaris / OpenSolaris, and it may be in violation of your end-user agreement to perform such benchmarks on the Sun Solaris operating system. Using the OpenSolaris Image Packaging System, installing *SUNWphp524* will provide PHP, PHP GD, and related dependencies. The Phoronix Test Suite has also been tested on Oracle Solaris 11 Express, OpenIndiana, StormOS, and Nexenta Core Platform.
### BSD Installation
The Phoronix Test Suite also supports *BSD operating systems. However, like the Solaris support, not all test profiles are compatible with BSD operating systems, but pts-core has been tested against FreeBSD 7.x/8.x/9.x, NetBSD, PC-BSD 7/8/9, DragonFlyBSD 3.0/3.2/3.4/3.6/4.2, and OpenBSD 4.4/4.6. The Phoronix Test Suite will also work with Debian GNU/kFreeBSD.
For DragonFlyBSD, it's a matter of just using *pkg_radd* with php5, php5-json, php5-dom, and php5-zip or *pkgsrc* . With DragonFlyBSD using dports, the command is *pkg install php5 php5-dom php5-zip php5-json php5-simplexml* . Under FreeBSD/PC-BSD, PHP can be obtained from the *php5* and *php5-extensions* Ports collection.
### Mac OS X Installation
The Phoronix Test Suite is fully supported on Apple's Mac OS X operating system as of Mac OS X 10.5 with improved support under Mac OS X 10.6. PHP ships with Mac OS X by default so it's simply a matter of downloading the Phoronix Test Suite package, extracting it, and running the executable. For tests that rely upon a compiler, Apple's XCode with GCC and LLVM can be utilized.
### Windows Installation
The Phoronix Test Suite support on Microsoft Windows is in development and will function just fine, but is not yet feature complete compared to the other operating systems support. Only a small subset of test profiles, mostly related to graphics, are supported. In terms of the version support, right now the Phoronix Test Suite is developed and tested solely against Microsoft Windows 7 x64 and Microsoft Windows 8 x64.
At this time the Phoronix Test Suite client is dependent upon the *php.exe* executable being installed to *C:\Program Files (x86)\PHP\ * or one of its subdirectories (see PHP installation notes above). Once this requirement is met, simply download the Phoronix Test Suite package, extract it to a directory of your choice, and run *phoronix-test-suite.bat*
NOTE: because of lack of external dependencies support, it is necessary to manually download and install the files for some test profiles, such as the Unigine graphics benchmarks. See Troubleshooting for more information.
### Facebook HipHop
The Phoronix Test Suite can use Facebook's [HipHop HHVM](https://github.com/facebook/hiphop-php) virtual machine as an alternative to the de facto PHP implementation. The Phoronix Test Suite has been tested against HHVM 2.0. If HHVM is present on the system but not PHP, it will automatically be used by the Phoronix Test Suite. Alternatively, the *PHP_BIN* environment variable can be set to point to an alternative *hhvm* binary.
The Phoronix Test Suite also supports the older version of Facebook HipHop that serves as a PHP to C++ translator and compiler with GCC. This support though is primitive and not officially supported. To compile the Phoronix Test Suite using HipHop/GCC, run *find . -name "*.php" > files.list && hphp --input-list=files.list -k 1 --log=3 --include-path="." --cluster-count=50 -v "AllDynamic=true" -v "AllVolatile=true"* from the root *phoronix-test-suite/* directory. It can then be executed in the form of */tmp/hphp_XXX/program -f pts-core/phoronix-test-suite.php system-info* .
# External Dependencies
The Phoronix Test Suite has a feature known as "External Dependencies" where the Phoronix Test Suite can attempt to automatically install some of the test-specific dependencies on supported distributions. If running on a distribution where there is currently no External Dependencies profile, the needed package name(s) are listed for manual installation.
Below are a list of the operating systems that currently have external dependencies support within the Phoronix Test Suite for the automatic installation of needed test files.
---
Alpine LinuxAmazonAngstromArch LinuxCentOSClearOSClearOS Core ServerDebianDragonFlyBSDFedoraFluxbuntuGNU KFreeBSDGentooGoobuntuHPJoli CloudLinaroLinux Embedded Development EnvironmentLinux MintMEPISMac OS XMacPortsMageiaMandrivaMeeGoMicrosoft WindowsMidnightBSDMoblinMythbuntuNetBSDNexenta CoreOLPCOpenIndianaOpenMandrivaOpenSolarisOpenSuSEOptwareOracle ServerPCLinuxOSPTS Desktop LivePTS Linux LivePalmPardus LinuxRed Hat EnterpriseRed Hat Enterprise ServerSUSESUSE LinuxScientificScientificSLSolusSolus LinuxTermuxUbuntuVoid LinuxZenwalkgNewSensemacOS Brew
# Configuration
## User Files & Folders
**~/.phoronix-test-suite/user-config.xml**
This is a per-user configuration file. Among the information stored here is the test options, locations for storing files, and batch mode options. This file is formatted in XML.
**~/.phoronix-test-suite/graph-config.json**
This is a per-user configuration file for storing graph attributes. The adjustable options include HTML hex color codes for different areas of the graph, dimensions of the graph, and font sizes. This file is formatted in JSON.
**~/.phoronix-test-suite/download-cache/**
This directory contains test packages that have been downloaded for test profiles. For more information on the download cache.
**~/.phoronix-test-suite/installed-tests/**
This directory is where tests are installed by default. Each test has its own directory within a sub-directory of *installed-tests/* based upon its OpenBenchmarking.org repository. In the test's folder is a *pts-install.xml* file used for managing the installation.
**~/.phoronix-test-suite/test-results/**
This directory is where tests results are saved by default. Each saved file has its own directory. In the saved directory is then a *composite.xml* file containing the useful results while in the *test-X.xml* files are back-ups of the results.
**~/.phoronix-test-suite/modules-data/**
This is the directory where any Phoronix Test Suite modules should save any files to, within a sub-directory of the module's name. The module configuration settings are also stored within this directory.
**~/.phoronix-test-suite/test-profiles/**
This is the directory where test profiles are stored.
**~/.phoronix-test-suite/test-suites/**
This is the directory where test suites are stored.
## Environment Variables
**TEST_RESULTS_NAME**
When this variable is set, the value will be used as the name for automatically saving the test results.
**TEST_RESULTS_IDENTIFIER**
When this variable is set, the value will be used as the test identifier when automatically saving the test results.
**TEST_RESULTS_DESCRIPTION**
When this variable is set, the value will be used as the test results description when saving the test results.
**PRESET_OPTIONS**
For setting any test option(s) from an environment variable rather than being prompted for the options when running a test. Example: *PRESET_OPTIONS="stream.run-type=Add" ./phoronix-test-suite benchmark stream* . Multiple options can be passed to this environment variable when delimited by a semicolon.
**SKIP_TESTS**
If there are any test(s) to exempt from the testing process, specify them in this variable. Multiple tests can be waived by delimiting each test identifier by a comma. A test hardware type (i.e. Graphics) can also be supplied for skipping a range of tests.
**SKIP_TESTS_HAVING_ARGS**
If any of the test(s) have an argument matching any strings contained in this environment variable, the test execution will be skipped. Multiple strings can be set when delimiting by a comma.
**RUN_TESTS_IN_RANDOM_ORDER**
Setting this environment variable will cause the tests to be run in a random order.
**SKIP_TESTING_SUBSYSTEMS**
If you are running a set of benchmarks (namely a result file) but wish to skip some of the tests that don't belong to a certain test type group, you can set the hardware types to test via this environment variable. E.g. setting *SKIP_TESTING_SUBSYSTEMS=Graphics* will skip all test profiles to run that are not of the graphics test group. Multiple types should be delimited by a comma.
**PTS_MODULE_SETUP**
This variable can be used to load Phoronix Test Suite module settings automatically when using the *module-setup* option. An example would be: *PTS_MODULE_SETUP="phoromatic.remote_host=http://www.phoromatic.com/; phoromatic.remote_account=123456; phoromatic.remote_verifier=ABCD" phoronix-test-suite module-setup phoromatic* .
**PTS_MODULES**
If there are any Phoronix Test Suite modules to additionally load, they can be specified here. Multiple modules can be supplied by delimiting them with a comma. The more appropriate way of loading Phoronix Test Suite modules for longer periods of time is by using the *~/.phoronix-test-suite/user-config.xml* configuration.
**NO_PHODEVI_CACHE**
This is a debugging option to disable the Phodevi cache from being loaded of cached software/hardware information. Instead, all software/hardware will be polled from the Phodevi library without caching.
**EXTERNAL_PHODEVI_CACHE**
This option can be used for loading an external Phodevi cache. Such as loading the native hardware/software information from within a Windows Wine client from a native system host.
**PTS_DISPLAY_MODE**
If you wish to load a non-default display mode for a single instance, specify the mode in this variable.
**TOTAL_LOOP_TIME**
When running any test(s), if you would like the test(s) to continue running as a loop until a certain time has been reached, this variable can be used. The value should be the number of minutes to run the testing process before the loop is ended. The testing will finish whenever the currently active test has finished once the time has elapsed. The minimum value allowed is 10 minutes.
**LIMIT_ELAPSED_TEST_TIME**
If you want to ensure that the time for a given Phoronix Test Suite process doesn't elapse past a certain number of minutes, specify the number of minutes for this environment variable. When the amount of time spent testing exceeds that amount, the testing will end prematurely while still saving the tests that were completed in time.
**TOTAL_LOOP_COUNT**
When running any test(s), if you would like the test(s) to continue running for a number of times, this variable can be used. The value should be the number of times to loop the testing process before ending.
**FORCE_TIMES_TO_RUN**
If you wish to override the number of times to run each test -- rather than the Phoronix Test Suite using the number of times specified in each test profile -- this variable can be used.
**FORCE_MIN_TIMES_TO_RUN**
This is similar to the FORCE_TIMES_TO_RUN option but will only be used if the test profile's run count is less than this defined value.
**NO_FILE_HASH_CHECKS**
To disable MD5/SHA256 check-sums from being checked when downloading test files, set this variable to 1. This variable used to be known as *NO_MD5_CHECKS* , which is still honored but was changed to *NO_FILE_HASH_CHECKS* to reflect other kind of file hash sum checks.
**NO_HTTPS**
Set this environment variable to 1 if you don't wish to use HTTPS download links for test profiles (or the system/network lacks HTTPS support). When enabled, HTTPS links will then be done over HTTP.
**PTS_DOWNLOAD_CACHE**
While non-standard Phoronix Test Suite download caches can be specified within the *user-config.xml* file, an additional directory to look for potential Phoronix Test Suite download files can be specified by this variable.
**GRAPH_HIGHLIGHT**
If this variable is set with a valid test identifer from a result file whether you are using the *refresh-graphs* command or any other related to the rendering of test results on a bar graph, the specified test identifier's result will be rendered in a different color than the other test results. Multiple identifiers can be specified when delimited by a comma. Additionally, for each key it is possible to provide the actual color value, or an index in the color palette. Example: "will_be_different,group1a=1,group1b=1,blue=#0000ff"
**TEST_EXEC_PREPEND**
Set this variable to any command/environment variable that you may be passed prepended to the test execution string at runtime.
**VIDEO_MEMORY**
If Phodevi fails to detect the system's video memory capacity or is incorrectly detected, the video memory capacity (in MB) can be specified by this variable.
**OVERRIDE_VIDEO_MODES**
If Phodevi fails to detect all of the system's monitor video modes or a separate set of modes would be preferred, the modes can be specified in this variable. Example: *OVERRIDE_VIDEO_MODES=800x600,1024x768,1280x1024 phoronix-test-suite benchmark nexuiz* .
**SKIP_TEST_SUPPORT_CHECKS**
If this environment variable is set, it will not honor the support checks made by individual test profiles. I.e. test profiles that would normally be considered un-supported on a given platform are attempted to install and run regardless.
**SKIP_ALL_TEST_SUPPORT_CHECKS**
If this environment variable is set, all tests will be permitted on the client for execution. SKIP_ALL_TEST_SUPPORT_CHECKS is more liberal than SKIP_TEST_SUPPORT_CHECKS in letting disk tests run on RAM-based file-systems, attempt to run 2D/3D tests on VESA display drivers, and other special cases.
**DEFAULT_VIDEO_MODE**
If Phodevi fails to detect the system's monitor standard / default resolution, the mode can be specified in this variable. Example: *DEFAULT_VIDEO_MODE=1680x1050 phoronix-test-suite benchmark nexuiz* .
**SKIP_EXTERNAL_DEPENDENCIES**
To skip the Phoronix Test Suite external dependency checking/installation when installing a test, set this environment variable to *1* . If wishing to skip only certain external dependencies, set this variable's value to the name of the external dependencies (the generic dependency names used by the Phoronix Test Suite) to not install. Multiple dependencies to skip can be delimited by a comma.
# General Information
## Frequently Asked Questions
**Q: May I use the Phoronix Test Suite when running benchmarks for my own publication or blog? Are there any publishing restrictions?**
**A:** Anyone is more than welcome to use the Phoronix Test Suite for their own publication or purpose. While the Phoronix Test Suite came out of our internal test tools for carrying out Linux hardware reviews at [Phoronix.com](http://www.phoronix.com/) , we invite other hardware review web-sites, technology journals, and independent publications to use our software too. While not required, we would just kindly ask that you mention in your review/article that the *Phoronix Test Suite* was used for carrying out your testing, and ideally to link to [www.phoronix-test-suite.com](http://www.phoronix-test-suite.com/) so that your readers will know where to obtain the software if they are interested in running the tests. You are also more than welcome to upload your results to [OpenBenchmarking.org](http://www.openbenchmarking.org/) so that others may compare their results against yours in an easy manner.
We also try to make the Phoronix Test Suite easy-to-use by independent publications. For example, if you would like to watermark your web-site's URL into the graphs containing your test results, that can be easily modified in *~/.phoronix-test-suite/graph-config.json* . The colors and other graph settings are also stored in this XML file. If you are a publication and run into any issues with the Phoronix Test Suite or have a feature request, please let us know.
A partial list of other publications using the Phoronix Test Suite can be found in [this forum thread](http://www.phoronix.com/forums/showthread.php?t=12925) .
**Q: Why does the Phoronix Test Suite not use my distribution's package management system for acquiring all needed packages?**
**A:** The tests themselves are generally downloaded from source and built locally on the machine, rather than fetching any distribution-specific packages. This is done to ensure more comparable results across operating systems / releases, etc. The distribution packager could be applying a number of unknown patches to the software, building the software with unique build options, or making other changes to the software that could skew the results.
**Q: Besides being a developer, documentation writer, or having any other unique technical abilities, how else can I contribute to the Phoronix Test Suite?**
**A:** Independent code contributions are very welcome as well as creating your own test profiles and suites. We also appreciate any feedback, comments, or other ideas either by emailing us, posting on the forums, or sending a message to the mailing list. You can also see this (outdated) [forum thread](http://www.phoronix.com/forums/showthread.php?t=16180) .
**Q: Do you offer technical support for the Phoronix Test Suite**
**A:** Paid, professional support is available and is done via [our commercial services](http://commercial.phoronix-test-suite.com/) . We also offer Phoromatic licenses for use within a corporate intranet and other custom services. Free, community support is offered via our [mailing list](http://phoronix-test-suite.com/mailman/listinfo/trondheim-pts_phoronix-test-suite.com) , IRC channel ( *#phoronix* on *FreeNode.net* , and the [Phoronix Forums](http://www.phoronix.com/forums/) .
**Q: May I put the Phoronix Test Suite logo on my company's web-site or on my product packaging?**
**A:** [Contact us](http://www.phoronix-test-suite.com/?k=contact) for licensing information and details regarding the Phoronix Certification & Qualification Suite.
**Q: How often is the Phoronix Test Suite updated?**
**A:** We provide major updates on a quarterly basis with an occasional point release to fix outstanding bugs or address other issues. The latest work going into the Phoronix Test Suite is accessible via our Git repository at [GitHub.com/phoronix-test-suite](https://github.com/phoronix-test-suite/phoronix-test-suite/) .
## Tips & Tricks
### General
- The desktop's screensaver will automatically be shutdown when a test is running and will be restored to its previous state upon the test's completion. This is supported for GNOME, KDE, and other XDG-supportive desktop environments.
- If you have many computers you wish to benchmark, once all of your tests have been downloaded, run *phoronix-test-suite make-download-cache* to generate a copy of these files at *~/.phoronix-test-suite/download-cache/* . A download cache is used for conserving time and bandwidth by eliminating the need for the Phoronix Test Suite to download files that have already been downloaded once. Copy this folder to the other systems or copy it to a DVD or USB hard drive, connect it to the next test system, and the Phoronix Test Suite will automatically use this local download cache. Or store these files on a local HTTP/FTP server and then update your *~/.phoronix-test-suite/user-config.xml* file to reflect the location of this download cache directory.
### Running
- When running a test in batch mode (through the use of the *batch-run* or *batch-benchmark* options) that normally has end-user options (such as the sub-test to run or resolution), the Phoronix Test Suite will run the test with each unique combination of options possible, if configured appropriately.
- When running a test where you are prompted to enter any test options, multiple selections can be performed -- which will result in multiple test runs for each combination of the selected option(s) -- by separating each intended test option / number with a comma.
- When being prompted for the test identifier or the file name for saving the results, several user variables are supported. These include *$VIDEO_RESOLUTION* , *$VIDEO_CARD* , *$OPERATING_SYSTEM* , *$PROCESSOR* , *$MOTHERBOARD* , *$CHIPSET* , and *$KERNEL_VERSION* . If any of these variables are entered, the Phoronix Test Suite will replace them with their respective values before saving the results.
- If *RemoveDownloadFiles* is set to *TRUE* within the *user-config.xml* file, once a test has been installed the originally downloaded files for that test will be automatically removed. This conserves disk space but will cause these files to be re-downloaded the next time the test needs to be re-installed. This will also not back up the downloaded files to the Phoronix Test Suite download cache. Enabling this option is just recommended for users with very limited disk space.
- If the amount of video memory for your graphics card is incorrectly reported by the Phoronix Test Suite (you can check by running *phoronix-test-suite diagnostics* ), you can use the *VIDEO_MEMORY=* environment variable for overriding the video memory capacity (in Megabytes) used by the Phoronix Test Suite.
- If the *DISPLAY* environment variable is not set or *NO_GRAPHICS_TESTS* environment variable is set, tests of type *Graphics* will not be run. Likewise, if *NO_SYSTEM_TESTS* environment variable is set, tests of type *System* will not run. This applies to all test types where *NO_<TEST TYPE>_TESTS* is set.
- If while running multiple tests you want to quit the testing prematurely, in a new terminal window type *touch ~/.phoronix-test-suite/halt-testing* . All results for tests that had already run will be saved (permitting you opted to save the results), except for the test currently being run.
- If you wish to stop the current test run prematurely but continue the testing process, in a new terminal window type *touch ~/.phoronix-test-suite/skip-test* .
- If you want the specified test(s) to run in a loop for a set period of time, use the *TOTAL_LOOP_TIME* environment variable. For instance, running *TOTAL_LOOP_TIME=120 phoronix-test-suite benchmark ffmpeg* would keep running the ffmpeg test profile for 120 minutes.
- If you want the specified test(s) to run in a loop for a set number of times, use the *TOTAL_LOOP_COUNT* environment variable. For instance, running *TOTAL_LOOP_COUNT=3 phoronix-test-suite benchmark ffmpeg* would keep running the ffmpeg test profile three times.
- When any tests are being installed and when tests are being run, a lock is created in the system's temporary directory with the name *phoronix-test-suite.active* (i.e. */tmp/phoronix-test-suite.active* ) and is removed upon completion. Thus if you have any system scripts that you wish to run when tests are not running or being installed as to not impact the results, one simple way to handle this is by having the script check for the existence of this lock.
### Troubleshooting
In the event that a test profile fails to install or run, the following general troubleshooting steps may be helpful:- If a test profile fails immediately after starting, check the test profile's directory in *~/.phoronix-test-suite/installed-tests/* to confirm that the needed files are present. On platforms without External Dependencies support (Windows), it may be necessary to download the files manually and place them in this directory. If this is the case, you will notice that the "Downloading" phase of test installation completes instantly.
- Inspect the scripts inside the above test profile's directory and confirm that directories or search paths for the test correspond to those on your system
- Try running the test profile with the *debug-benchmark* command, or reinstalling with the *debug-install* command and make note of any unusual output.
### Configuration
- The user configuration options for the Phoronix Test Suite are stored in *~/.phoronix-test-suite/user-config.xml* . The batch mode options are also stored within this file and those can be adjusted by running *phoronix-test-suite batch-setup* .
- The colors, size, and other attributes for the graphs found within the Phoronix Test Suite Results Viewer can be modified via the file *~/.phoronix-test-suite/graph-config.json* .
### Test / Suite Writing
- The Phoronix Test Suite recursively determines tests/suites and allows a suite to call another suite.
### Module Writing
- By writing a Phoronix Test Suite module, you can easily extend the functionality of the Phoronix Test Suite. Some examples are being able to email the results upon completion, controlling the system's screensaver, updating a text LCD panel with the current test status, etc.
# Virtual Test Suites
Virtual test suites are not like a traditional test suite defined by the XML suite specification. Virtual test suites are dynamically generated in real-time by the Phoronix Test Suite client based upon the specified test critera. Virtual test suites can automatically consist of all test profiles that are compatible with a particular operating system or test profiles that meet other critera. When running a virtual suite, the OpenBenchmarking.org repository of the test profiles to use for generating the dynamic suite must be prefixed.
Virtual test suites can be installed and run just like a normal XML test suite and shares nearly all of the same capabilities. However, when running a virtual suite, the user will be prompted to input any user-configuration options for needed test profiles just as they would need to do if running the test individually. When running a virtual suite, the user also has the ability to select individual tests within the suite to run or to run all of the contained test profiles. Virtual test suites are also only supported for an OpenBenchmarking.org repository if there is no test profile or test suite of the same name in the repository. Below is a list of common virtual test suites for the main Phoronix Test Suite repository, but the dynamic list of available virtual test suites based upon the enabled repositories is available by running *phoronix-test-suite list-available-virtual-suites.*
---
#### All PTS Tests pts/all
This is a collection of all test profiles found within the specified OpenBenchmarking.org repository.
#### Installed Tests pts/installed
This is a collection of test profiles found within the specified OpenBenchmarking.org repository that are already installed on the system under test.
#### Linux Operating System Tests pts/linux
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Linux Operating System.
#### Solaris Operating System Tests pts/solaris
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Solaris Operating System.
#### BSD Operating System Tests pts/bsd
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the BSD Operating System.
#### MacOSX Operating System Tests pts/macosx
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the MacOSX Operating System.
#### Windows Operating System Tests pts/windows
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Windows Operating System.
#### Hurd Operating System Tests pts/hurd
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Hurd Operating System.
#### System Subsystem Tests pts/system
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the System sub-system.
#### Processor Subsystem Tests pts/processor
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Processor sub-system.
#### Graphics Subsystem Tests pts/graphics
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Graphics sub-system.
#### Other Subsystem Tests pts/other
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Other sub-system.
#### Utility Tests pts/utility
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Utility software test.
#### Simulator Tests pts/simulator
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Simulator software test.
#### Scientific Tests pts/scientific
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Scientific software test.
#### Benchmark Tests pts/benchmark
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Benchmark software test.
#### Application Tests pts/application
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Application software test.
#### Game Tests pts/game
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Game software test.
#### Smp Tests pts/smp
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing smp.
#### Cuda Tests pts/cuda
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing cuda.
#### Python Tests pts/python
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing python.
#### Go Tests pts/go
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing go.
#### Mpi Tests pts/mpi
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing mpi.
#### Openmp Tests pts/openmp
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing openmp.
#### Vdpau Tests pts/vdpau
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing vdpau.
#### Video Tests pts/video
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing video.
#### Responsiveness Tests pts/responsiveness
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing responsiveness.
#### Openmpi Tests pts/openmpi
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing openmpi.
#### All SYSTEM Tests system/all
This is a collection of all test profiles found within the specified OpenBenchmarking.org repository.
#### Installed Tests system/installed
This is a collection of test profiles found within the specified OpenBenchmarking.org repository that are already installed on the system under test.
#### Linux Operating System Tests system/linux
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Linux Operating System.
#### Solaris Operating System Tests system/solaris
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Solaris Operating System.
#### BSD Operating System Tests system/bsd
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the BSD Operating System.
#### MacOSX Operating System Tests system/macosx
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the MacOSX Operating System.
#### Windows Operating System Tests system/windows
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Windows Operating System.
#### Hurd Operating System Tests system/hurd
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being compatible with the Hurd Operating System.
#### System Subsystem Tests system/system
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the System sub-system.
#### Processor Subsystem Tests system/processor
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Processor sub-system.
#### Disk Subsystem Tests system/disk
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Disk sub-system.
#### Graphics Subsystem Tests system/graphics
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Graphics sub-system.
#### Memory Subsystem Tests system/memory
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Memory sub-system.
#### Network Subsystem Tests system/network
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Network sub-system.
#### Other Subsystem Tests system/other
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a test of the Other sub-system.
#### Utility Tests system/utility
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Utility software test.
#### Simulator Tests system/simulator
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Simulator software test.
#### Scientific Tests system/scientific
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Scientific software test.
#### Benchmark Tests system/benchmark
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Benchmark software test.
#### Application Tests system/application
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Application software test.
#### Game Tests system/game
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified as being a Game software test.
#### Opencl Tests system/opencl
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing opencl.
#### Cuda Tests system/cuda
This is a collection of test profiles found within the specified OpenBenchmarking.org repository where the test profile is specified via an internal tag as testing cuda.
# Component Testing
## Compiler Testing & Masking
A majority of the test profiles provided by OpenBenchmarking.org to the Phoronix Test Suite are source-based tests. Relying upon the upstream source-code for each program under test allows for the tests to be easily brought to new platforms and architectures, avoids any out-of-tree / non-default packaging differences by different distributions and operating systems, and to allow the Phoronix Test Suite user to easily test new compilers and/or compiler options. For the source-based tests, the Phoronix Test Suite relies upon a compiler (e.g. GCC, LLVM/Clang, Sun Studio, Open64, et al) being present on the system under test. The Phoronix Test Suite does respect *CC/CXX* environment variables and test profiles are expected to honor *CFLAGS/CXXFLAGS* and other compiler settings.
As of Phoronix Test Suite 3.8, a compiler masking method is utilized for logging compiler options and other settings with each test profile installation. Prior to installing an open-source test, the Phoronix Test Suite determines the intended compiler to be used based upon the pre-set environment variables or the pre-set compiler(s) within the *PATH* environment variable. The Phoronix Test Suite then masks the compiler to ensure that any options/flags submitted to the compiler are first passed through pts-core so that they can be logged for later use, then is linked to the original, intended compiler. Additionally, other compiler binary names of the same type are blacklisted to prevent their un-intended use (i.e. if a test profile has hard-coded *gcc* in its build script, but *clang* is set as the compiler via *CC* , a sym-link will automatically be created from *gcc* to the masked *clang* for the duration of its test installation).
The logged compiler data is then used by the Phoronix Test Suite following the test execution process for automated result analysis. If there is a detected change in compiler settings, the differences are automatically reported to the test result graphs. Additionally, key compiler information (e.g. the compiler optimization level and key libraries that were linked at compile-time) is reported as a footnote on result graphs. The Phoronix Test Suite handles all of this in a fully automated manner; test profiles require no changes to take advantage of these compiler-reporting capabilities.
Separately, the Phoronix Test Suite attempts to automatically log the system compiler's build configuration (i.e. GCC's *gcc -v* "Configured with") output. If the Phoronix Test Suite detects there is a compiler build configuration change between test runs in a result file, it will report each compiler's build configuration to the system information table within the results viewer. Reported to the table is a reduced view of the build configuration options, with less relevant items being stripped away from this view to reduce verbosity. Upon clicking the text, the raw compiler information output can be viewed in full.
## Disk / File-System Testing
By default tests are installed to *~/.phoronix-test-suite/installed-tests/* . However, the location can be updated from *~/.phoronix-test-suite/user-config.xml* or dynamically via the *PTS_TEST_INSTALL_ROOT_PATH* environment variable.
When any disk tests are executed, the Phoronix Test Suite will attempt to log the mount options and scheduler of the disk/partition being used for testing. This information is subsequently displayed within the system information table. If the scheduler / mount options are maintained the same throughout all test runs, only a single line is displayed otherwise the options for each test run will be automatically displayed. The file-system in use is always captured and shown in the system information table.
# Phoromatic
## Overview
The Phoronix Test Suite now features its own built-in Phoromatic server and client implementations. See the *phoromatic.pdf* / *phoromatic.html* documentation for more information on this advanced capability.
# Creating Test Profiles
## Creating A New Phoronix Test Suite / OpenBenchmarking.org Test Profile
A test profile itself consists of a main XML file containing the test's meta-data ( *test-definition.xml* ), an XML file if needed to specify required files, download URLs and their MD5/SHA256 hashes and file sizes ( *downloads.xml* ), and the *install.sh* script for installing the test and generating the run-script for execution by the Phoronix Test Suite at run-time. There are also other potential files like *pre.sh* , *interim.sh* , and *post.sh* for execution at pre-run, interim-run, and post-run stages by the Phoronix Test Suite. With the script files comprising test profiles, there is also the option of post-fixing them with e.g. *_linux* or *_windows* if wishing to supply different script files based upon the operating system being run during testing, if the setup steps may differ greatly based upon MacOS/Windows/Linux/BSD/Solaris platforms.
Traditionally the easiest way to learn/understand test profile development has been by looking at looking at a basic test like *c-ray* , *tesseract* or the hundreds of others that are publicly available. Simply run for example *phoronix-test-suite benchmark tesseract* and then look at the test profile's contents either via the default locations in *~/.phoronix-test-suite/test-profiles* or */var/lib/phoronix-test-suite/test-profiles/* if running as root on non-Windows platforms.
### Versioning Mandate
The Phoronix Test Suite / OpenBenchmarking.org philosophy *mandates that with any change, a new version of the test profile be tagged* . This is done for reproducibility and being able to ensure the exact test profile state when a set of tests are conducted. Test profiles are versioned in a **test-X.Y.Z** format where *X* or *Y* are bumped whenever a change is made to the test profile that makes the results incomparable to a previous version of the tests (e.g. updating against a new upstream code-base, adjusting the parameters to what is benchmarked, etc). The Phoronix Test Suite then knows not to attempt any comparisons with an incompatible version difference or to go and fetch that specific version of the package. The *Z* is bumped when just making non-important changes such as just updating the test's meta-data, changing download URLs, etc. This is easy to enforce with the OpenBenchmarking.org infrastructure rather than having to worry about non-human-friendly Git hashes as test profile versions or having to create Git tags after every commit. The test profile version can optionally be specified when running a test, e.g. *phoronix-test-suite benchmark scimark2-1.2.1* instead of *phoronix-test-suite benchmark scimark2* , which would by default choose the latest available test profile version from OpenBenchmarking.org or the latest version on any local Phoromatic Server. The test profile versions are also always written out as part of the Phoronix Test Suite result XML data.
### Writing A Sample Program
Writing a test profile for the Phoronix Test Suite is a relatively quick and easy process for anyone familiar with common Linux commands and the basics of XML. To help you understand the design of the Phoronix Test Suite, this guide covers the steps needed to write a testing profile for a very simple application.
The first step in the profile writing process is to, well, have a piece of software you'd like to use with the Phoronix Test Suite. This software can be closed-source or open-source and be virtually anything as long as it is compatible with an operating system that is supported by the Phoronix Test Suite.
For this guide, the piece of software being used for demonstration is just a simple C++ program that calculates Pi to 8,765,4321 digits using the Leibniz formula. Below is this sample piece of software intended just for demonstration purposes.
> #include &lt;iostream&gt;
> #include &lt;math.h&gt;
> int main()
> {
> double pi = 0;
> for(long int i = 1; i &lt;= 87654321; i++)
> pi += (double) pow(-1, i + 1) / (2 * i - 1);
> pi *= 4;
> std::cout &lt;&lt; &quot;Done Calculating Pi...&quot; &lt;&lt; endl;
> return 0;
> }
The first step in the actual profile writing process is to name it. If you're looking to ultimately push this profile to be included in the Phoronix Test Suite, its name must be all lower case and consist of just alpha-numeric characters, but can contain dashes (-). A more advanced test profile capability is operating system prefixes, and if using those there is an underscore separating the prefix from the normal profile name. For this sample profile, we're calling it *sample-program* and the file-name would be *sample-program/test-definition.xml* . Our (very basic) profile is showcased below.
> &lt;PhoronixTestSuite&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestProfile&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Version&gt;1.1.0&lt;/Version&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestType&gt;Processor&lt;/TestType&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;SoftwareType&gt;Utility&lt;/SoftwareType&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;License&gt;FREE&lt;/License&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Status&gt;PRIVATE&lt;/Status&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Maintainer&gt;Phoronix Media&lt;/Maintainer&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TestProfile&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestInformation&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Title&gt;Sample Pi Program&lt;/Title&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TimesToRun&gt;3&lt;/TimesToRun&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ResultScale&gt;Seconds&lt;/ResultScale&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Proportion&gt;LIB&lt;/Proportion&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Description&gt;A simple C++ program that calculates Pi to 8,765,4321 digits using the Leibniz formula. This test can be used for showcasing how to write a basic test profile.&lt;/Description&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ExternalDependencies&gt;build-utilities&lt;/ExternalDependencies&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TestInformation&gt;
> &lt;/PhoronixTestSuite&gt;
This XML profile is what interfaces with the Phoronix Test Suite and provides all the needed information about the test as well as other attributes. For a complete listing of all the supported profile options, look at the specification files in the documentation folder. In the case of *sample-program* , it lets the Phoronix Test Suite know that it's composed of free software, is designed to test the processor, is intended for private use only, and this profile is maintained by Phoronix Media. In addition, it tells the Phoronix Test Suite to execute this program three times and as no result quantifier is set, the average of the three runs will be taken. This profile also tells the Phoronix Test Suite that the generic *build-utilities* package is needed, which will attempt to ensure that default system C/C++ compiler and the standard development utilities/libraries are installed on your Linux distribution. This is needed as the C++ source-code will need to be built from source.
The next step is to write the *install.sh* file, which once called by the Phoronix Test Suite is intended to install the test locally for benchmarking purposes. The *install.sh* file is technically optional, but is generally used by all tests. Note: The first argument supplied to the install script is the directory that the test needs to be installed to. The *install.sh* file (in our instance) is to be placed inside *test-profiles/sample-program* . Below is the *install.sh* for the *sample-program* .
> #!/bin/sh
> tar -xjf sample-pi-program-1.tar.bz2
> g++ sample-pi-program.cpp -o sample-pi-program
> echo &quot;#!/bin/sh
> ./sample-pi-program 2&gt;&amp;1
> &quot; &gt; sample-program
> chmod +x sample-program
This install file builds the code with GCC, and then creates a small script that is run by the Phoronix Test Suite. Where does the source-code come into play? Well, it needs to be downloaded now from a web server. The Phoronix Test Suite has built-in support for managing downloads from multiple servers in a random over, fall-back support if one mirror is done, and verification of MD5 check-sums. Below is the *downloads.xml* file for *sample-program* that covers all of this.
> &lt;PhoronixTestSuite&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Downloads&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Package&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;URL&gt;http://www.phoronix-test-suite.com/benchmark-files/sample-pi-program.cpp&lt;/URL&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;MD5&gt;e90fb790df8d1544696a1439c9b5bd8d&lt;/MD5&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Package&gt;
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Downloads&gt;
> &lt;/PhoronixTestSuite&gt;
The final step in the profile writing process is to write a parser to strip all information but the reported result from the standard output or *$LOG_FILE* . In the case of a test profile just measuring how long it takes to run, it is as simple as a *results-definition.xml* looking like:
> &lt;?xml version=&quot;1.0&quot;?&gt;
> &lt;PhoronixTestSuite&gt;
> &lt;SystemMonitor&gt;
> &lt;Sensor&gt;sys.time&lt;/Sensor&gt;
> &lt;/SystemMonitor&gt;
> &lt;/PhoronixTestSuite&gt;
After that, with all the files in their correct locations, just run: *phoronix-test-suite benchmark sample-program* . The Phoronix Test Suite should now handle the rest by installing the test, running the test, and recording the results (if you so choose). There is no additional work that needs to be done for the results to be recorded in the results viewer or even reporting the results to OpenBenchmarking.org. An up-to-date version of this test profile can be run via *phoronix-test-suite benchmark sample-program* and then by looking at the test profile source via *~/.phoronix-test-suite/test-profiles/pts/sample-program** or within */var/lib/phoronix-test-suite/test-profiles/pts/* if running as root.
# Development Credits
The Phoronix Test Suite is based upon the extensive testing and internal tools developed by [Phoronix.com](http://www.phoronix.com/) since 2004 along with support from leading tier-one computer hardware and software vendors. The principal architects of the Phoronix Test Suite are [Michael Larabel](http://www.michaellarabel.com/) and Matthew Tippett. The phoronix-test-suite, pts_Graph, Phoromatic, Phodevi, tandem_Xml, and nye_Xml are some of the related open-source projects provided by [Phoronix Media](http://www.phoronix-media.com/) .

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -5,10 +5,12 @@
<body>
<h1>Setup Overview</h1>
<p>The Phoronix Test Suite supports Linux, Apple Mac OS X, Microsoft Windows, Solaris, Hurd, BSD, and other operating system environments. The only Linux distribution-specific code deals with the external dependencies support feature that are set by individual test profiles. If you are not running one of the supported Linux distributions, Solaris, BSD, or Mac OS X, you may need to install a package manually (as instructed by the Phoronix Test Suite) in order for a test to run. An example of an external dependency would be GCC and the OpenGL Utility Toolkit being needed for test profiles that build an OpenGL benchmark from source-code.</p>
<p>Among the distributions where the Phoronix Test Suite has been officially tested include Ubuntu, Fedora, Mandriva / Mageia, Gentoo, PCLinuxOS, Arch Linux, Pardus, OpenSuSE, Optware, webOS, Zenwalk, CentOS, Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, Debian, Mint, MEPIS, and Amazon Linux EC2.</p>
<p>Among the distributions where the Phoronix Test Suite has been officially tested include Ubuntu, Fedora, Mandriva / Mageia, Gentoo, PCLinuxOS, Arch Linux, Pardus, OpenSuSE, Optware, webOS, Zenwalk, CentOS, Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, Debian, Mint, MEPIS, Alpine Linux, Void Linux, Intel Clear Linux, and Amazon Linux EC2.</p>
<p>Among the tested BSD distributions are FreeBSD, PC-BSD, NetBSD, OpenBSD, Debian GNU/kFreeBSD, and DragonflyBSD. Tested Solaris distributions include OpenSolaris, Solaris Express 11, Oracle Solaris 11, OpenIndiana, Illumos, and Nexenta.</p>
<h1>Dependencies</h1>
<p>The only required dependency for the Phoronix Test Suite is PHP 5.2 or newer. On Linux distributions, the needed package is commonly called <em>php5-cli</em> or <em>php-cli</em> or <em>php</em>. It is important to note that only PHP for the command-line is needed and not a web server (Apache) or other packages commonly associated with PHP and its usage by web-sites. The PHP5 version required is PHP 5.2+ and can also be found at <a href="http://www.php.net/">www.php.net</a>.</p>
<p>The only required dependency for the Phoronix Test Suite is PHP 5.3 or newer. On Linux distributions, the needed package is commonly called <em>php5-cli</em> or <em>php-cli</em> or <em>php7</em> or <em>php</em>. It is important to note that only PHP for the command-line is needed and not a web server (Apache) or other packages commonly associated with PHP and its usage by web-sites. The PHP5 version required is PHP 5.3+ and can also be found at <a href="http://www.php.net/">www.php.net</a>. PHP 7 is fully supported by the Phoronix Test Suite as well as HHVM.</p>
<p>For installing PHP on Windows, the <a href="https://www.microsoft.com/web/platform/phponwindows.aspx">Microsoft Web Platform Installer</a> provides an automated alternative that will install PHP into the directory expected by Phoronix Test Suite. Users opting to install PHP manually must extract the files to <em>C:\Program Files (x86)\PHP\</em> or a subdirectory.</p>
<p>As part of the PHP requirement, the following PHP extensions are required and/or highly recommended in order to take advantage of the Phoronix Test Suite capabilities:</p>
<ul>
<li><strong>PHP DOM</strong> is needed for XML operations and must be installed for the Phoronix Test Suite to function.</li>
@@ -46,14 +48,16 @@
<h2>OpenSolaris Installation</h2>
<p>The Phoronix Test Suite core (pts-core) is supported on Solaris and OpenSolaris platforms, but some features may not fully function. Additionally, the PTS External Dependencies feature is supported on OpenSolaris using IPS (the Image Packaging System). However, not all test profiles are supported on Solaris / OpenSolaris, and it may be in violation of your end-user agreement to perform such benchmarks on the Sun Solaris operating system. Using the OpenSolaris Image Packaging System, installing <em>SUNWphp524</em> will provide PHP, PHP GD, and related dependencies. The Phoronix Test Suite has also been tested on Oracle Solaris 11 Express, OpenIndiana, StormOS, and Nexenta Core Platform.</p>
<h2>BSD Installation</h2>
<p>The Phoronix Test Suite also supports *BSD operating systems. However, like the Solaris support, not all test profiles are compatible with BSD operating systems, but pts-core has been tested against FreeBSD 7.x/8.x/9.x, NetBSD, PC-BSD 7/8/9, DragonFlyBSD 3.0/3.2/3.4/3.6, and OpenBSD 4.4/4.6. The Phoronix Test Suite will also work with Debian GNU/kFreeBSD.</p>
<p>For DragonFlyBSD, it's a matter of just using <em>pkg_radd</em> with php5, php5-json, php5-dom, and php5-zip or <em>pkgsrc</em>. Under FreeBSD/PC-BSD, PHP can be obtained from the <em>php5</em> and <em>php5-extensions</em> Ports collection.</p>
<p>The Phoronix Test Suite also supports *BSD operating systems. However, like the Solaris support, not all test profiles are compatible with BSD operating systems, but pts-core has been tested against FreeBSD 7.x/8.x/9.x, NetBSD, PC-BSD 7/8/9, DragonFlyBSD 3.0/3.2/3.4/3.6/4.2, and OpenBSD 4.4/4.6. The Phoronix Test Suite will also work with Debian GNU/kFreeBSD.</p>
<p>For DragonFlyBSD, it's a matter of just using <em>pkg_radd</em> with php5, php5-json, php5-dom, and php5-zip or <em>pkgsrc</em>. With DragonFlyBSD using dports, the command is <em>pkg install php5 php5-dom php5-zip php5-json php5-simplexml</em>. Under FreeBSD/PC-BSD, PHP can be obtained from the <em>php5</em> and <em>php5-extensions</em> Ports collection.</p>
<h2>Mac OS X Installation</h2>
<p>The Phoronix Test Suite is fully supported on Apple's Mac OS X operating system as of Mac OS X 10.5 with improved support under Mac OS X 10.6. PHP ships with Mac OS X by default so it's simply a matter of downloading the Phoronix Test Suite package, extracting it, and running the executable. For tests that rely upon a compiler, Apple's XCode with GCC and LLVM can be utilized.</p>
<h2>Windows Installation</h2>
<p>The Phoronix Test Suite support on Windows is in development and will function just fine, but is not yet feature complete compared to the other operating systems support. At this time the Phoronix Test Suite client is dependent upon PHP being installed to <em>C:\Program Files (x86)\PHP\php</em>. The Phoronix Test Suite also uses <a href="http://www.cpuid.com/cpuz.php">CPU-Z</a> for much of the hardware detection support on Windows and is dependent upon CPU-Z being installed to <em>C:\Program Files\CPUID\CPU-Z\cpuz.exe</em> if you wish to utilize this hardware reporting feature. In terms of the Microsoft Windows support, right now the Phoronix Test Suite is developed and solely tested against Microsoft Windows 7 x64 and Microsoft Windows 8 x64.</p>
<p>The Phoronix Test Suite support on Microsoft Windows is in development and will function just fine, but is not yet feature complete compared to the other operating systems support. Only a small subset of test profiles, mostly related to graphics, are supported. In terms of the version support, right now the Phoronix Test Suite is developed and tested solely against Microsoft Windows 7 x64 and Microsoft Windows 8 x64.</p>
<p>At this time the Phoronix Test Suite client is dependent upon the <em>php.exe</em> executable being installed to <em>C:\Program Files (x86)\PHP\ </em> or one of its subdirectories (see PHP installation notes above). Once this requirement is met, simply download the Phoronix Test Suite package, extract it to a directory of your choice, and run <em>phoronix-test-suite.bat</em></p>
<p>NOTE: because of lack of external dependencies support, it is necessary to manually download and install the files for some test profiles, such as the Unigine graphics benchmarks. See Troubleshooting for more information.</p>
<h2>Facebook HipHop</h2>
<p>The Phoronix Test Suite can use Facebook's <a href="https://github.com/facebook/hiphop-php">HopHop HHVM</a> virtual machine as an alternative to the de facto PHP implementation. The Phoronix Test Suite has been tested against HHVM 2.0. If HHVM is present on the system but not PHP, it will automatically be used by the Phoronix Test Suite. Alternatively, the <em>PHP_BIN</em> environment variable can be set to point to an alternative <em>hhvm</em> binary.</p>
<p>The Phoronix Test Suite can use Facebook's <a href="https://github.com/facebook/hiphop-php">HipHop HHVM</a> virtual machine as an alternative to the de facto PHP implementation. The Phoronix Test Suite has been tested against HHVM 2.0. If HHVM is present on the system but not PHP, it will automatically be used by the Phoronix Test Suite. Alternatively, the <em>PHP_BIN</em> environment variable can be set to point to an alternative <em>hhvm</em> binary.</p>
<p>The Phoronix Test Suite also supports the older version of Facebook HipHop that serves as a PHP to C++ translator and compiler with GCC. This support though is primitive and not officially supported. To compile the Phoronix Test Suite using HipHop/GCC, run <em>find . -name "*.php" > files.list && hphp --input-list=files.list -k 1 --log=3 --include-path="." --cluster-count=50 -v "AllDynamic=true" -v "AllVolatile=true"</em> from the root <em>phoronix-test-suite/</em> directory. It can then be executed in the form of <em>/tmp/hphp_XXX/program -f pts-core/phoronix-test-suite.php system-info</em>.</p>
</body>
</html>

View File

@@ -1 +1 @@
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>External Dependencies</title></head><body><p>The Phoronix Test Suite has a feature known as "External Dependencies" where the Phoronix Test Suite can attempt to automatically install some of the test-specific dependencies on supported distributions. If running on a distribution where there is currently no External Dependencies profile, the needed package name(s) are listed for manual installation.</p><p>Below are a list of the operating systems that currently have external dependencies support within the Phoronix Test Suite for the automatic installation of needed test files.<hr><ul></ul><li>Amazon</li><li>Angstrom</li><li>Arch Linux</li><li>CentOS</li><li>ClearOS</li><li>ClearOS Core Server</li><li>Debian</li><li>DragonFlyBSD</li><li>Fedora</li><li>Fluxbuntu</li><li>FreeBSD</li><li>GNU KFreeBSD</li><li>Gentoo</li><li>Goobuntu</li><li>HP</li><li>Joli Cloud</li><li>Linaro</li><li>Linux Mint</li><li>MEPIS</li><li>Mac OS X</li><li>MacPorts</li><li>Mageia</li><li>Mandriva</li><li>MeeGo</li><li>Moblin</li><li>Mythbuntu</li><li>NetBSD</li><li>Nexenta Core</li><li>OLPC</li><li>OpenIndiana</li><li>OpenMandriva</li><li>OpenSolaris</li><li>OpenSuSE</li><li>Optware</li><li>Oracle Server</li><li>PCLinuxOS</li><li>PTS Desktop Live</li><li>PTS Linux Live</li><li>Palm</li><li>Pardus Linux</li><li>Red Hat Enterprise</li><li>Red Hat Enterprise Server</li><li>SUSE</li><li>SUSE Linux</li><li>Scientific</li><li>ScientificSL</li><li>Ubuntu</li><li>Zenwalk</li><li>gNewSense</li></p></body></html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>External Dependencies</title></head><body><p>The Phoronix Test Suite has a feature known as "External Dependencies" where the Phoronix Test Suite can attempt to automatically install some of the test-specific dependencies on supported distributions. If running on a distribution where there is currently no External Dependencies profile, the needed package name(s) are listed for manual installation.</p><p>Below are a list of the operating systems that currently have external dependencies support within the Phoronix Test Suite for the automatic installation of needed test files.<hr><ul></ul><li>Alpine Linux</li><li>Amazon</li><li>Angstrom</li><li>Arch Linux</li><li>CentOS</li><li>ClearOS</li><li>ClearOS Core Server</li><li>Debian</li><li>DragonFlyBSD</li><li>Fedora</li><li>Fluxbuntu</li><li>GNU KFreeBSD</li><li>Gentoo</li><li>Goobuntu</li><li>HP</li><li>Joli Cloud</li><li>Linaro</li><li>Linux Embedded Development Environment</li><li>Linux Mint</li><li>MEPIS</li><li>Mac OS X</li><li>MacPorts</li><li>Mageia</li><li>Mandriva</li><li>MeeGo</li><li>Microsoft Windows</li><li>MidnightBSD</li><li>Moblin</li><li>Mythbuntu</li><li>NetBSD</li><li>Nexenta Core</li><li>OLPC</li><li>OpenIndiana</li><li>OpenMandriva</li><li>OpenSolaris</li><li>OpenSuSE</li><li>Optware</li><li>Oracle Server</li><li>PCLinuxOS</li><li>PTS Desktop Live</li><li>PTS Linux Live</li><li>Palm</li><li>Pardus Linux</li><li>Red Hat Enterprise</li><li>Red Hat Enterprise Server</li><li>SUSE</li><li>SUSE Linux</li><li>Scientific</li><li>ScientificSL</li><li>Solus</li><li>Solus Linux</li><li>Termux</li><li>Ubuntu</li><li>Void Linux</li><li>Zenwalk</li><li>gNewSense</li><li>macOS Brew</li></p></body></html>

View File

@@ -31,6 +31,8 @@
<p>For setting any test option(s) from an environment variable rather than being prompted for the options when running a test. Example: <em>PRESET_OPTIONS=&quot;stream.run-type=Add&quot; ./phoronix-test-suite benchmark stream</em>. Multiple options can be passed to this environment variable when delimited by a semicolon.</p>
<p><strong>SKIP_TESTS</strong></p>
<p>If there are any test(s) to exempt from the testing process, specify them in this variable. Multiple tests can be waived by delimiting each test identifier by a comma. A test hardware type (i.e. Graphics) can also be supplied for skipping a range of tests.</p>
<p><strong>SKIP_TESTS_HAVING_ARGS</strong></p>
<p>If any of the test(s) have an argument matching any strings contained in this environment variable, the test execution will be skipped. Multiple strings can be set when delimiting by a comma.</p>
<p><strong>RUN_TESTS_IN_RANDOM_ORDER</strong></p>
<p>Setting this environment variable will cause the tests to be run in a random order.</p>
<p><strong>SKIP_TESTING_SUBSYSTEMS</strong></p>
@@ -46,7 +48,7 @@
<p><strong>PTS_DISPLAY_MODE</strong></p>
<p>If you wish to load a non-default display mode for a single instance, specify the mode in this variable.</p>
<p><strong>TOTAL_LOOP_TIME</strong></p>
<p>When running any test(s), if you would like the test(s) to continue running as a loop until a certain time has been reached, this variable can be used. The value should be the number of minutes to run the testing process before the loop is ended.</p>
<p>When running any test(s), if you would like the test(s) to continue running as a loop until a certain time has been reached, this variable can be used. The value should be the number of minutes to run the testing process before the loop is ended. The testing will finish whenever the currently active test has finished once the time has elapsed. The minimum value allowed is 10 minutes.</p>
<p><strong>LIMIT_ELAPSED_TEST_TIME</strong></p>
<p>If you want to ensure that the time for a given Phoronix Test Suite process doesn't elapse past a certain number of minutes, specify the number of minutes for this environment variable. When the amount of time spent testing exceeds that amount, the testing will end prematurely while still saving the tests that were completed in time.</p>
<p><strong>TOTAL_LOOP_COUNT</strong></p>
@@ -57,10 +59,14 @@
<p>This is similar to the FORCE_TIMES_TO_RUN option but will only be used if the test profile's run count is less than this defined value.</p>
<p><strong>NO_FILE_HASH_CHECKS</strong></p>
<p>To disable MD5/SHA256 check-sums from being checked when downloading test files, set this variable to 1. This variable used to be known as <em>NO_MD5_CHECKS</em>, which is still honored but was changed to <em>NO_FILE_HASH_CHECKS</em> to reflect other kind of file hash sum checks.</p>
<p><strong>NO_HTTPS</strong></p>
<p>Set this environment variable to 1 if you don't wish to use HTTPS download links for test profiles (or the system/network lacks HTTPS support). When enabled, HTTPS links will then be done over HTTP.</p>
<p><strong>PTS_DOWNLOAD_CACHE</strong></p>
<p>While non-standard Phoronix Test Suite download caches can be specified within the <em>user-config.xml</em> file, an additional directory to look for potential Phoronix Test Suite download files can be specified by this variable.</p>
<p><strong>GRAPH_HIGHLIGHT</strong></p>
<p>If this variable is set with a valid test identifer from a result file whether you are using the <em>refresh-graphs</em> command or any other related to the rendering of test results on a bar graph, the specified test identifier's result will be highlighted in a different color than the other rendered test results. Multiple identifiers can be specified when delimited by a comma.</p>
<p>If this variable is set with a valid test identifer from a result file whether you are using the <em>refresh-graphs</em> command or any other related to the rendering of test results on a bar graph, the specified test identifier's result will be rendered in a different color than the other test results. Multiple identifiers can be specified when delimited by a comma. Additionally, for each key it is possible to provide the actual color value, or an index in the color palette. Example: &quot;will_be_different,group1a=1,group1b=1,blue=#0000ff&quot;</p>
<p><strong>TEST_EXEC_PREPEND</strong></p>
<p>Set this variable to any command/environment variable that you may be passed prepended to the test execution string at runtime.</p>
<p><strong>VIDEO_MEMORY</strong></p>
<p>If Phodevi fails to detect the system's video memory capacity or is incorrectly detected, the video memory capacity (in MB) can be specified by this variable.</p>
<p><strong>OVERRIDE_VIDEO_MODES</strong></p>

View File

@@ -34,6 +34,13 @@
<p>- If you want the specified test(s) to run in a loop for a set period of time, use the <em>TOTAL_LOOP_TIME</em> environment variable. For instance, running <em>TOTAL_LOOP_TIME=120 phoronix-test-suite benchmark ffmpeg</em> would keep running the ffmpeg test profile for 120 minutes.</p>
<p>- If you want the specified test(s) to run in a loop for a set number of times, use the <em>TOTAL_LOOP_COUNT</em> environment variable. For instance, running <em>TOTAL_LOOP_COUNT=3 phoronix-test-suite benchmark ffmpeg</em> would keep running the ffmpeg test profile three times.</p>
<p>- When any tests are being installed and when tests are being run, a lock is created in the system's temporary directory with the name <em>phoronix-test-suite.active</em> (i.e. <em>/tmp/phoronix-test-suite.active</em>) and is removed upon completion. Thus if you have any system scripts that you wish to run when tests are not running or being installed as to not impact the results, one simple way to handle this is by having the script check for the existence of this lock.</p>
<h2>Troubleshooting</h2>
In the event that a test profile fails to install or run, the following general troubleshooting steps may be helpful:
<p>- If a test profile fails immediately after starting, check the test profile's directory in <em>~/.phoronix-test-suite/installed-tests/</em> to confirm that the needed files are present. On platforms without External Dependencies support (Windows), it may be necessary to download the files manually and place them in this directory. If this is the case, you will notice that the "Downloading" phase of test installation completes instantly.</p>
<p>- Inspect the scripts inside the above test profile's directory and confirm that directories or search paths for the test correspond to those on your system</p>
<p>- Try running the test profile with the <em>debug-benchmark</em> command, or reinstalling with the <em>debug-install</em> command and make note of any unusual output.
<h2>Configuration</h2>
<p>- The user configuration options for the Phoronix Test Suite are stored in <em>~/.phoronix-test-suite/user-config.xml</em>. The batch mode options are also stored within this file and those can be adjusted by running <em>phoronix-test-suite batch-setup</em>.</p>
<p>- The colors, size, and other attributes for the graphs found within the Phoronix Test Suite Results Viewer can be modified via the file <em>~/.phoronix-test-suite/graph-config.json</em>.</p>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,72 @@
<html>
<head>
<Title>Creating Test Profiles</Title>
</head>
<body>
<h1>Creating A New Phoronix Test Suite / OpenBenchmarking.org Test Profile</h1>
<p>A test profile itself consists of a main XML file containing the test's meta-data (<em>test-definition.xml</em>), an XML file if needed to specify required files, download URLs and their MD5/SHA256 hashes and file sizes (<em>downloads.xml</em>), and the <em>install.sh</em> script for installing the test and generating the run-script for execution by the Phoronix Test Suite at run-time. There are also other potential files like <em>pre.sh</em>, <em>interim.sh</em>, and <em>post.sh</em> for execution at pre-run, interim-run, and post-run stages by the Phoronix Test Suite. With the script files comprising test profiles, there is also the option of post-fixing them with e.g. <em>_linux</em> or <em>_windows</em> if wishing to supply different script files based upon the operating system being run during testing, if the setup steps may differ greatly based upon MacOS/Windows/Linux/BSD/Solaris platforms.</p>
<p>Traditionally the easiest way to learn/understand test profile development has been by looking at looking at a basic test like <em>c-ray</em>, <em>tesseract</em> or the hundreds of others that are publicly available. Simply run for example <em>phoronix-test-suite benchmark tesseract</em> and then look at the test profile's contents either via the default locations in <em>~/.phoronix-test-suite/test-profiles</em> or <em>/var/lib/phoronix-test-suite/test-profiles/</em> if running as root on non-Windows platforms.</p>
<h2>Versioning Mandate</h2>
<p>The Phoronix Test Suite / OpenBenchmarking.org philosophy <em>mandates that with any change, a new version of the test profile be tagged</em>. This is done for reproducibility and being able to ensure the exact test profile state when a set of tests are conducted. Test profiles are versioned in a <strong>test-X.Y.Z</strong> format where <em>X</em> or <em>Y</em> are bumped whenever a change is made to the test profile that makes the results incomparable to a previous version of the tests (e.g. updating against a new upstream code-base, adjusting the parameters to what is benchmarked, etc). The Phoronix Test Suite then knows not to attempt any comparisons with an incompatible version difference or to go and fetch that specific version of the package. The <em>Z</em> is bumped when just making non-important changes such as just updating the test's meta-data, changing download URLs, etc. This is easy to enforce with the OpenBenchmarking.org infrastructure rather than having to worry about non-human-friendly Git hashes as test profile versions or having to create Git tags after every commit. The test profile version can optionally be specified when running a test, e.g. <em>phoronix-test-suite benchmark scimark2-1.2.1</em> instead of <em>phoronix-test-suite benchmark scimark2</em>, which would by default choose the latest available test profile version from OpenBenchmarking.org or the latest version on any local Phoromatic Server. The test profile versions are also always written out as part of the Phoronix Test Suite result XML data.</p>
<h2>Writing A Sample Program</h2>
<p>Writing a test profile for the Phoronix Test Suite is a relatively quick and easy process for anyone familiar with common Linux commands and the basics of XML. To help you understand the design of the Phoronix Test Suite, this guide covers the steps needed to write a testing profile for a very simple application.</p>
<p>The first step in the profile writing process is to, well, have a piece of software you'd like to use with the Phoronix Test Suite. This software can be closed-source or open-source and be virtually anything as long as it is compatible with an operating system that is supported by the Phoronix Test Suite.</p>
<p>For this guide, the piece of software being used for demonstration is just a simple C++ program that calculates Pi to 8,765,4321 digits using the Leibniz formula. Below is this sample piece of software intended just for demonstration purposes.</p>
<blockquote>#include &lt;iostream&gt;<br>
#include &lt;math.h&gt;</p>
<p>int main()<br>
{<br>
double pi = 0;</p>
<p> for(long int i = 1; i &lt;= 87654321; i++)<br>
pi += (double) pow(-1, i + 1) / (2 * i - 1);</p>
<p> pi *= 4;<br>
std::cout &lt;&lt; &quot;Done Calculating Pi...&quot; &lt;&lt; endl;<br>
return 0;<br>
}</blockquote>
<p>The first step in the actual profile writing process is to name it. If you're looking to ultimately push this profile to be included in the Phoronix Test Suite, its name must be all lower case and consist of just alpha-numeric characters, but can contain dashes (-). A more advanced test profile capability is operating system prefixes, and if using those there is an underscore separating the prefix from the normal profile name. For this sample profile, we're calling it <em>sample-program</em> and the file-name would be <em>sample-program/test-definition.xml</em>. Our (very basic) profile is showcased below.</p>
<blockquote>&lt;PhoronixTestSuite&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestProfile&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Version&gt;1.1.0&lt;/Version&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestType&gt;Processor&lt;/TestType&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;SoftwareType&gt;Utility&lt;/SoftwareType&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;License&gt;FREE&lt;/License&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Status&gt;PRIVATE&lt;/Status&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Maintainer&gt;Phoronix Media&lt;/Maintainer&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TestProfile&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TestInformation&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Title&gt;Sample Pi Program&lt;/Title&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TimesToRun&gt;3&lt;/TimesToRun&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ResultScale&gt;Seconds&lt;/ResultScale&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Proportion&gt;LIB&lt;/Proportion&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Description&gt;A simple C++ program that calculates Pi to 8,765,4321 digits using the Leibniz formula. This test can be used for showcasing how to write a basic test profile.&lt;/Description&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ExternalDependencies&gt;build-utilities&lt;/ExternalDependencies&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TestInformation&gt;<br>
&lt;/PhoronixTestSuite&gt;</blockquote>
<p>This XML profile is what interfaces with the Phoronix Test Suite and provides all the needed information about the test as well as other attributes. For a complete listing of all the supported profile options, look at the specification files in the documentation folder. In the case of <em>sample-program</em>, it lets the Phoronix Test Suite know that it's composed of free software, is designed to test the processor, is intended for private use only, and this profile is maintained by Phoronix Media. In addition, it tells the Phoronix Test Suite to execute this program three times and as no result quantifier is set, the average of the three runs will be taken. This profile also tells the Phoronix Test Suite that the generic <em>build-utilities</em> package is needed, which will attempt to ensure that default system C/C++ compiler and the standard development utilities/libraries are installed on your Linux distribution. This is needed as the C++ source-code will need to be built from source.</p>
<p>The next step is to write the <em>install.sh</em> file, which once called by the Phoronix Test Suite is intended to install the test locally for benchmarking purposes. The <em>install.sh</em> file is technically optional, but is generally used by all tests. Note: The first argument supplied to the install script is the directory that the test needs to be installed to. The <em>install.sh</em> file (in our instance) is to be placed inside <em>test-profiles/sample-program</em>. Below is the <em>install.sh</em> for the <em>sample-program</em>.</p>
<blockquote>#!/bin/sh<br /><br />
tar -xjf sample-pi-program-1.tar.bz2<br />
g++ sample-pi-program.cpp -o sample-pi-program<br />
echo &quot;#!/bin/sh<br />
./sample-pi-program 2&gt;&amp;1<br />
&quot; &gt; sample-program<br>
chmod +x sample-program</blockquote>
<p>This install file builds the code with GCC, and then creates a small script that is run by the Phoronix Test Suite. Where does the source-code come into play? Well, it needs to be downloaded now from a web server. The Phoronix Test Suite has built-in support for managing downloads from multiple servers in a random over, fall-back support if one mirror is done, and verification of MD5 check-sums. Below is the <em>downloads.xml</em> file for <em>sample-program</em> that covers all of this.</p>
<blockquote>&lt;PhoronixTestSuite&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Downloads&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Package&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;URL&gt;http://www.phoronix-test-suite.com/benchmark-files/sample-pi-program.cpp&lt;/URL&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;MD5&gt;e90fb790df8d1544696a1439c9b5bd8d&lt;/MD5&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Package&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Downloads&gt;<br>
&lt;/PhoronixTestSuite&gt;</blockquote>
<p>The final step in the profile writing process is to write a parser to strip all information but the reported result from the standard output or <em>$LOG_FILE</em>. In the case of a test profile just measuring how long it takes to run, it is as simple as a <em>results-definition.xml</em> looking like:</p>
<blockquote>&lt;?xml version="1.0"?&gt;<br>
&lt;PhoronixTestSuite&gt;<br>
&lt;SystemMonitor&gt;<br>
&lt;Sensor&gt;sys.time&lt;/Sensor&gt;<br>
&lt;/SystemMonitor&gt;<br>
&lt;/PhoronixTestSuite&gt;</blockquote>
<p>After that, with all the files in their correct locations, just run: <em>phoronix-test-suite benchmark sample-program</em>. The Phoronix Test Suite should now handle the rest by installing the test, running the test, and recording the results (if you so choose). There is no additional work that needs to be done for the results to be recorded in the results viewer or even reporting the results to OpenBenchmarking.org. An up-to-date version of this test profile can be run via <em>phoronix-test-suite benchmark sample-program</em> and then by looking at the test profile source via <em>~/.phoronix-test-suite/test-profiles/pts/sample-program*</em> or within <em>/var/lib/phoronix-test-suite/test-profiles/pts/</em> if running as root.</p>
</body>
</html>

View File

@@ -1,20 +0,0 @@
<html>
<head>
<Title>PTS Desktop Live</Title>
</head>
<body>
<h1>PTS Desktop Live 2010.1 &quot;Anzhofen&quot;</h1>
<p>PTS Desktop Live and PTS Netbook Live are Linux-based operating systems designed to provide a free software platform for carrying out system tests and hardware benchmarks in an automated, reproducible, and effective manner. The Phoronix Test Suite operating systems are designed around the <a href="http://www.phoronix-test-suite.com/">Phoronix Test Suite</a> with the operating system itself consisting of a stripped down Linux environment, then built upon that is the Phoronix Test Suite with its test profiles and suites. This is not a standard Linux desktop with the normal throng of packages.</p>
<p>Testing with PTS Desktop Live is intended to be via a Live DVD or Live USB (i.e. flash drive or memory card) environment. PTS Netbook Live is similar to PTS Desktop Live but designed for testing on lightweight x86 systems and netbooks. Both PTS Desktop Live and PTS Netbook Live make it very easy to deploy the Phoronix Test Suite across an array of systems, isolates any software differences when seeking to perform hardware comparisons, and is designed to be very easy to carry out these Linux benchmarks even for a first-time Linux user.</p>
<p>The inaugural release of this operating system was PTS Desktop Live 2009.3 (codenamed &quot;Gernlinden&quot;) and was based upon the Phoronix Test Suite 2.0 release. The Gernlinden release shipped with more than 50 open-source test profiles and all needed files being located on the disc image. PTS Desktop Live uses the GTK2 GUI dialog for the Phoronix Test Suite by default, but the CLI options are also accessible. PTS Desktop Live also features optimizations to the Linux kernel and related components for use on the latest high-end hardware and other performance related tweaking. PTS Netbook Live features optimizations for the Intel Atom processor.</p>
<p>The mission of the Phoronix Test Suite and related products will not be achieved until it has made Linux benchmarking incredibly robust and innovative, drop dead easy to perform nearly any kind of benchmark, and when it out-paces other leading operating systems for its benchmarking abilities. These operating systems are being updated quarterly in conjunction with new Phoronix Test Suite releases. The Phoronix Test Suite will continue to be supported under all other Linux distributions, OpenSolaris, Mac OS X, Windows, and *BSD operating systems, but this is just another addition on top of that.</p>
<p>PTS Desktop Live is designed to run on x86_64 compatible systems with 2GB or more of system memory (ideally 4GB+ if you wish to run many of the tests in a live environment) being highly recommended along with a modern CPU and graphics processor. No proprietary graphics drivers are shipped with PTS Desktop Live at this time, so depending upon the hardware you may not have OpenGL acceleration to run the few graphics-related tests that are included with this release. Only graphics drivers are provided for ATI/AMD, NVIDIA, and Intel hardware. An Internet connection is not required but is needed for communication with OpenBenchmarking.org and for utilizing some of the other Phoronix Test Suite features.</p>
<p>PTS Netbook Live is designed for netbooks and nettop computers with an Intel Atom processor.</p>
<h2>Quick Start Guide</h2>
<p>When the operating system has fully booted, the end-user agreement for the Phoronix Test Suite will be displayed, followed by initializing the main GTK user interface for the Phoronix Test Suite. The Phoronix Test Suite has more than 100 test profiles while there are about 50 test profiles featured within live environment, which are free software, do not pose significant install size problems, and are suitable for benchmarking from a live environment. By default, PTS Desktop Live and PTS Netbook Live will only show the test profiles and suites where all of the needed test files and dependencies ship with this open-source operating system. However, to access any of the test profiles that may require downloading additional files or external dependencies, use the <em>View</em> menu to toggle the different options. The system's hardware and software information can also be viewed in a graphical window from this menu.</p>
<p>From the <em>Available Tests</em> tab, any test/suite can be selected to view more information. If you wish to install the test, simply click on the install button while waiting shortly for it to install. Afterwards, the test can be run by selecting it again and clicking on the run/benchmark button. If you have a <a href="http://www.openbenchmarking.org/">OpenBenchmarking.org</a> account, you can login from the <em>File</em> menu while Phoronix Test Suite settings are adjustable from the <em>Edit</em> menu.</p>
<p>When the testing has completed, the graphical user interface will reappear. Via the buttons that appear at the top of the interface, the test results can then be opened within the web browser. Depending upon the test profile, it may also be possible to immediately compare the test result(s) against a set of reference systems. If the completed test(s) do have reference results available, a list of the comparable systems are shown, so that you can click on one or more of these reference systems to see how the given system performs in comparison. Results from OpenBenchmarking.org can also be compared with any of the test results.</p>
<p>Assuming you did not launch any commands from the terminal to alter the disk(s) or its contents or carry out any other changes; PTS Desktop Live will have not touched your data or the installed operating system(s). If you wish to archive any of your test results, upload the results to OpenBenchmarking.org. Alternatively, when going to the <em>Test Results</em> tab and selecting a test, the <em>File</em> menu presents options for exporting results to text, CSV, and PDF files. The contents of the <em>~/.phoronix-test-suite/test-results/</em> folder can also be backed up for preserving the test results.</p>
<p>If you wish to use the Phoronix Test Suite from the command-line, open a terminal and run <em>phoronix-test-suite</em>.</p>
</body>
</html>

View File

@@ -3,55 +3,4 @@
<Title>Development Credits</Title>
</head>
<body>
<p>The Phoronix Test Suite is based upon the extensive testing and internal tools developed by <a href="http://www.phoronix.com/">Phoronix.com</a> since 2004 along with support from leading tier-one computer hardware and software vendors. The principal architects of the Phoronix Test Suite are <a href="http://www.michaellarabel.com/">Michael Larabel</a> and Matthew Tippett. The phoronix-test-suite, pts_Graph, bilde_renderer, Phodevi, tandem_Xml, and nye_Xml are some of the related open-source projects provided by <a href="http://www.phoronix-media.com/">Phoronix Media</a>.</p>
<p>Below is a list of individuals and organizations that have contributed upstream patches, test profiles, and/or made other contributions to the Phoronix Test Suite that Phoronix Media would like to thank.</p>
<ul>
<li>Achim Gottinger</li>
<li>Achim Lange</li>
<li>Andrew Schofield</li>
<li>Apaige</li>
<li>Ben Kero</li>
<li>Bryan Quigley</li>
<li>Chris Campbell</li>
<li>Daniel D&iacute;az</li>
<li>Daniel Stodden / Citrix</li>
<li>Dean Hilkewich</li>
<li>ESET s.r.o.</li>
<li>Fatima Sheremetyeva</li>
<li>Fujitsu</li>
<li>Hans Ulrich Niedermann</li>
<li>Intel Open-Source Technology Center</li>
<li>Jeroen van Rijn</li>
<li>Johannes Obermayr</li>
<li>Juan Aguado</li>
<li>J&ouml;rg Schirottke</li>
<li>Kenney Phillis</li>
<li>Kim Bisgaard</li>
<li>Laminar Research</li>
<li>Marco Poletti</li>
<li>Matthew Tippett</li>
<li>Michael Larabel</li>
<li>Michael Opdenacker</li>
<li>Michael Ploujnikov</li>
<li>Michal Zatloukal</li>
<li>Mufasa72</li>
<li>Nicholas Omann</li>
<li>NickZ</li>
<li>Nils Kneuper</li>
<li>NVIDIA Corporation</li>
<li>Pekka Panula</li>
<li>Peter Kraus</li>
<li>Rainer K&ouml;nig</li>
<li>SOMA Networks, Inc.</li>
<li>Stefan Doesinger</li>
<li>Stepan Hrbek</li>
<li>St&eacute;phane Teletch&eacute;a</li>
<li>Sun Microsystems</li>
<li>Tao Zhang</li>
<li>Thomas Klausner</li>
<li>Unigine Corp</li>
<li>Vadim Peretokin</li>
<li>Zachary Powers</li>
</ul>
</body>
</html>
<p>The Phoronix Test Suite is based upon the extensive testing and internal tools developed by <a href="http://www.phoronix.com/">Phoronix.com</a> since 2004 along with support from leading tier-one computer hardware and software vendors. The principal architects of the Phoronix Test Suite are <a href="http://www.michaellarabel.com/">Michael Larabel</a> and Matthew Tippett. The phoronix-test-suite, pts_Graph, Phoromatic, Phodevi, tandem_Xml, and nye_Xml are some of the related open-source projects provided by <a href="http://www.phoronix-media.com/">Phoronix Media</a>.</p>

View File

@@ -1,27 +1,25 @@
The Phoronix Test Suite itself is an open-source framework for conducting automated tests along with reporting of test results, detection of installed system software/hardware, and other features. Modules for the Phoronix Test Suite also allow for integration with git-bisect and other revision control systems for per-commit regression testing, system sensor monitoring, and other extras.
This framework is designed to be an extensible architecture so that new test profiles and suites can be easily added to represent performance benchmarks, unit tests, and other quantitative and qualitative (e.g. image quality comparison) measurements. Available through OpenBenchmarking.org, a collaborative storage platform developed in conjunction with the Phoronix Test Suite, are more than 200 individual test profiles and more than 60 test suites available by default from the Phoronix Test Suite. Independent users are also able to upload their test results, profiles, and suites to OpenBenchmarking.org. A test profile is a single test that can be executed by the Phoronix Test Suite -- with a series of options possible within every test -- and a test suite is a seamless collection of test profiles and/or additional test suites. A test profile consists of a set of bash/shell scripts and XML files while a test suite is a single XML file.
This framework is designed to be an extensible architecture so that new test profiles and suites can be easily added to represent performance benchmarks, unit tests, and other quantitative and qualitative (e.g. image quality comparison) measurements. Available through OpenBenchmarking.org, a collaborative storage platform developed in conjunction with the Phoronix Test Suite, are more than 200 individual test profiles and more than 60 test suites available by default from the Phoronix Test Suite. Independent users are also able to upload their test results, profiles, and suites to OpenBenchmarking.org. A test profile is a single test that can be executed by the Phoronix Test Suite -- with a series of options possible within every test -- and a test suite is a seamless collection of test profiles and/or additional test suites. A test profile consists of a set of Bash/shell scripts and XML files while a test suite is a single XML file.
OpenBenchmarking.org <http://www.openbenchmarking.org/> also allows for conducting side-by-side result comparisons, a central location for storing and sharing test results, and collaborating over test data. Phoromatic <http://www.phoromatic.com/> is a complementary platform to OpenBenchmarking.org and the Phoronix Test Suite for interfacing with Phoronix Test Suite client(s) to automatically execute test runs on a timed, per-commit, or other trigger-driven basis. Phoromatic is designed for enterprise and allows for the easy management of multiple networked systems running Phoronix Test Suite clients via a single web-based interface.
[OpenBenchmarking.org](http://www.openbenchmarking.org/) also allows for conducting side-by-side result comparisons, a central location for storing and sharing test results, and collaborating over test data. [Phoromatic](http://www.phoromatic.com/) is a complementary platform to OpenBenchmarking.org and the Phoronix Test Suite for interfacing with Phoronix Test Suite client(s) to automatically execute test runs on a timed, per-commit, or other trigger-driven basis. Phoromatic is designed for enterprise and allows for the easy management of multiple networked systems running Phoronix Test Suite clients via a single web-based interface.
Professional support and custom engineering for the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org is available by contacting <http://www.phoronix-test-suite.com/>.
Full details on the Phoronix Test Suite setup and usage is available from the included HTML/PDF documentation within the phoronix-test-suite package and from the Phoronix Test Suite web-site.
Full details on the Phoronix Test Suite setup and usage is available from the included HTML/PDF documentation within the phoronix-test-suite package and from the Phoronix Test Suite website.
INSTALLATION & SETUP:
#####################
## Installation & Setup
The Phoronix Test Suite is supported on Linux, *BSD, Solaris, Mac OS X, and Windows systems. However, the most full-featured and well supported operating system for conducting the tests is Linux with some non-basic functionality not being available under all platforms. The Phoronix Test Suite software/framework is compatible with all major CPU architectures (e.g. i686, x86_64, ARM, PowerPC), but not all of the test profiles/suites are compatible with all architectures.
The Phoronix Test Suite can be installed for system-wide usage or run locally without installation from the extracted tar.gz/zip package. The only hard dependency on the Phoronix Test Suite is having command-line support for PHP (PHP 5.2+) installed. A complete PHP stack (e.g. with web-server) is NOT needed, but merely the PHP command-line support, which is widely available from operating system package managers under the name php, php5-cli, or php5.
The Phoronix Test Suite can be installed for system-wide usage or run locally without installation from the extracted tar.gz/zip package. The only hard dependency on the Phoronix Test Suite is having command-line support for PHP (PHP 5.3+) installed. A complete PHP stack (e.g. with web server) is **not** needed, but merely the PHP command-line support, which is widely available from operating system package managers under the name `php`, `php5-cli`, or `php5`.
USAGE:
######
## Usage
The process to download, install/setup, execute, and report the results of a benchmark can be as simple as a command such as *phoronix-test-suite benchmark smallpt* to run a simple CPU test profile. If wishing to simply install a test, it's a matter of running *phoronix-test-suite install <test or suite name>* and to run it's *phoronix-test-suite run <test or suite name>*. There's also a batch mode for non-interactive benchmarking by first running *phoronix-test-suite batch-setup* and then using the *batch-run* sub-command rather than *run*.
The process to download, install/setup, execute, and report the results of a benchmark can be as simple as a command such as `phoronix-test-suite benchmark smallpt` to run a simple CPU test profile. If wishing to simply install a test, it's a matter of running `phoronix-test-suite install <test or suite name>` and to run it's `phoronix-test-suite run <test or suite name>`. There's also a batch mode for non-interactive benchmarking by first running `phoronix-test-suite batch-setup` and then using the `batch-run` sub-command rather than `run`.
Viewing installed system hardware and software is available via *phoronix-test-suite system-info* or *phoronix-test-suite detailed-system-info* for greater verbosity.
Viewing installed system hardware and software is available via `phoronix-test-suite system-info`.
Facilitating a result comparison from OpenBenchmarking.org can be done by running, for example, *phoronix-test-suite benchmark 1204293-BY-PHORONIX357* if wishing to compare the results of the *http://openbenchmarking.org/result/1204293-BY-PHORONIX357* result file.
Facilitating a result comparison from OpenBenchmarking.org can be done by running, for example, `phoronix-test-suite benchmark 1204293-BY-PHORONIX357` if wishing to compare the results of the `http://openbenchmarking.org/result/1204293-BY-PHORONIX357` result file.
Additional information is available from the Phoronix Test Suite web-site <http://www.phoronix-test-suite.com/> and the material bundled within the phoronix-test-suite/documentation/ directory. A man page is also bundled with the phoronix-test-suite software.
Additional information is available from the Phoronix Test Suite website <http://www.phoronix-test-suite.com/> and the material bundled within the `phoronix-test-suite/documentation/` directory or via <http://www.phoronix-test-suite.com/documentation/>. A man page is also bundled with the phoronix-test-suite software.

View File

@@ -2,7 +2,7 @@
# Phoronix Test Suite
# URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
# Copyright (C) 2008 - 2014, Phoronix Media
# Copyright (C) 2008 - 2018, Phoronix Media
#
# 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
@@ -42,7 +42,7 @@ fi
mkdir -p $DESTDIR$INSTALL_PREFIX
if [ ! -w $DESTDIR$INSTALL_PREFIX ]
then
echo "\nERROR: $DESTDIR$INSTALL_PREFIX is not writable. Run this installer as root or specify a different directory prefix as the first argument sent to this script.\n"
echo "ERROR: $DESTDIR$INSTALL_PREFIX is not writable. Run this installer as root or specify a different directory prefix as the first argument sent to this script."
exit
fi
@@ -57,10 +57,10 @@ mkdir -p $DESTDIR$INSTALL_PREFIX/share/man/man1/
mkdir -p $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
mkdir -p $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/bash_completion.d/
#mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/systemd/system/
#mkdir -p $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
#mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/init/
cp CHANGE-LOG $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
cp ChangeLog $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
cp COPYING $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
cp AUTHORS $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
@@ -76,15 +76,15 @@ cp pts-core/static/phoronix-test-suite.desktop $DESTDIR$INSTALL_PREFIX/share/app
cp pts-core/static/phoronix-test-suite-launcher.desktop $DESTDIR$INSTALL_PREFIX/share/applications/
cp pts-core/static/phoronix-test-suite.appdata.xml $DESTDIR$INSTALL_PREFIX/share/appdata/
mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/systemd/system/
cp pts-core/static/*.service $DESTDIR$INSTALL_PREFIX/../etc/systemd/system/
mkdir -p $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
cp deploy/*-systemd/*.service $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/init/
cp pts-core/static/upstart/*.conf $DESTDIR$INSTALL_PREFIX/../etc/init/
# mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/init/
# cp pts-core/static/upstart/*.conf $DESTDIR$INSTALL_PREFIX/../etc/init/
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts/etc/scripts/package-build-*
rm -rf $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core
cp -r pts-core $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
cp -r deploy $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/static/phoronix-test-suite.desktop
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/static/phoronix-test-suite-launcher.desktop
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/openbenchmarking.org/openbenchmarking-mime.xml
@@ -99,7 +99,7 @@ chmod +x $DESTDIR$INSTALL_PREFIX/bin/phoronix-test-suite
# sed 's:\$url = PTS_PATH . \"documentation\/index.html\";:\$url = \"'"$INSTALL_PREFIX"'\/share\/doc\/packages\/phoronix-test-suite\/index.html\";:g' pts-core/commands/gui_gtk.php > $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/commands/gui_gtk.php
# XDG MIME OpenBenchmarking support
if [ "X$DESTDIR" = "X" ]
if [ "X$DESTDIR" = "X" ] && which xdg-mime >/dev/null && which xdg-icon-resource >/dev/null
then
#No chroot
xdg-mime install pts-core/openbenchmarking.org/openbenchmarking-mime.xml

33
install.bat Normal file
View File

@@ -0,0 +1,33 @@
@echo off
:: Phoronix Test Suite
:: URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
:: Copyright (C) 2018, Phoronix Media
::
:: 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/>.
:: Generic Phoronix Test Suite installer for Windows
:: Ensure the user is in the correct directory
If Not Exist "pts-core\phoronix-test-suite.php" (
echo "To install the Phoronix Test Suite you must first change directories to phoronix-test-suite. For support visit: http://www.phoronix-test-suite.com/"
exit
)
set destination="C:\phoronix-test-suite"
md %destination%
:: cd /d %destination%
:: for /F "delims=" %%i in ('dir /b') do (rmdir "%%i" /s/q || del "%%i" /s/q)
xcopy %cd% %destination% /E
echo Phoronix Test Suite installed to %destination%

View File

@@ -3,8 +3,8 @@
#
# Phoronix Test Suite
# URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
# Copyright (C) 2008 - 2014, Phoronix Media
# Copyright (C) 2008 - 2014, Michael Larabel
# Copyright (C) 2008 - 2018, Phoronix Media
# Copyright (C) 2008 - 2018, Michael Larabel
# phoronix-test-suite: The Phoronix Test Suite is an extensible open-source testing / benchmarking platform
#
# This program is free software; you can redistribute it and/or modify
@@ -25,37 +25,85 @@
# export PTS_DIR=$(readlink -f `dirname $0`)
export PTS_DIR=`pwd`
export PTS_MODE="CLIENT"
if which realpath >/dev/null 2>&1 ;
then
export PTS_LAUNCHER=`realpath $0`
else
export PTS_LAUNCHER="$PTS_DIR/phoronix-test-suite"
fi
if [ $PTS_DIR != "`pwd`" ]
then
cd $PTS_DIR
fi
# Run any start-up hooks, such as to pre-seed environment variables or other non-default behaviors / customizations
if [ -d pts-core/hooks/startup ]
then
for file in pts-core/hooks/startup/*.sh
do
./$file
done
fi
# Determine PHP binary location
if [ ! "X$PHP_BIN" = "X" ] && [ -x $PHP_BIN ]
then
export PHP_BIN=$PHP_BIN
elif [ -x /usr/bin/php5 ] || [ -x /usr/local/bin/php5 ] || [ -x /usr/pkg/bin/php5 ]
elif [ -x /usr/bin/php7 ] || [ -x /usr/local/bin/php7 ] || [ -x /usr/pkg/bin/php7 ]
then
export PHP_BIN="php5"
elif [ -x /usr/bin/php ] || [ -x /usr/local/bin/php ] || [ -x /usr/pkg/bin/php ]
export PHP_BIN="php7"
elif [ -x /usr/bin/php ] || [ -x /usr/pkg/bin/php ]
then
export PHP_BIN="php"
elif [ -x /usr/php5/bin/php ]
elif [ -x /usr/php7/bin/php ]
then
export PHP_BIN="/usr/php5/bin/php"
export PHP_BIN="/usr/php7/bin/php"
elif [ -x /usr/php/bin/php ]
then
export PHP_BIN="/usr/php/bin/php"
elif [ -x /usr/local/bin/php ]
then
export PHP_BIN="/usr/local/bin/php"
elif [ -x /usr/local/bin/php-7.0 ]
then
export PHP_BIN="/usr/local/bin/php-7.0"
elif [ -x /usr/local/bin/php-7.1 ]
then
export PHP_BIN="/usr/local/bin/php-7.1"
elif [ -x /usr/local/bin/php-7.2 ]
then
export PHP_BIN="/usr/local/bin/php-7.2"
elif [ -x /opt/bin/php ]
then
export PHP_BIN="/opt/bin/php"
elif [ -x /usr/pkg/libexec/cgi-bin/php ]
then
export PHP_BIN="/usr/pkg/libexec/cgi-bin/php"
elif which php >/dev/null 2>&1 ;
then
export PHP_BIN="php"
elif which php7 >/dev/null 2>&1 ;
then
export PHP_BIN="php7"
elif [ -x /usr/php5/bin/php ]
then
export PHP_BIN="/usr/php5/bin/php"
elif [ -x /usr/bin/php5 ] || [ -x /usr/local/bin/php5 ] || [ -x /usr/pkg/bin/php5 ]
then
export PHP_BIN="php5"
elif which php5 >/dev/null 2>&1 ;
then
export PHP_BIN="php5"
elif which php-cli >/dev/null 2>&1 ;
then
export PHP_BIN="php-cli"
elif [ -x /usr/bin/hhvm ]
then
export PHP_BIN="/usr/bin/hhvm"
elif which hhvm >/dev/null 2>&1 ;
then
export PHP_BIN="hhvm"
else
export PHP_BIN=""
fi
@@ -65,37 +113,126 @@ if [ "X$PHP_BIN" = "X" ]
then
cat <<'EOT'
PHP 5.2 or newer must be installed for the Phoronix Test Suite
PHP 5.3 or newer or PHP 7 must be installed for the Phoronix Test Suite
The PHP command-line package is commonly called php-cli, php5-cli, or php.
For more information visit: http://www.phoronix-test-suite.com/
EOT
if [ -x /usr/bin/apt-get ]
if [ -x /usr/bin/zypper ]
then
# SUSE / OpenSUSE
echo "The command to likely run for your operating system is: "
echo "# apt-get install php5-cli php5-json php5-gd"
echo "# zypper install php7 php7-zip"
echo " "
elif [ -x /usr/bin/apt-get ]
then
# Debian / Ubuntu Based Systems
echo "The command to likely run for your operating system is: "
echo "# apt-get install php-cli php-xml"
echo " "
elif [ -x /usr/bin/dnf ]
then
# Modern Fedora
echo "The command to likely run for your operating system is: "
echo "# dnf install php-cli php-xml"
echo " "
elif [ -x /usr/bin/yum ]
then
# Red Hat / Fedora / etc
echo "The command to likely run for your operating system is: "
echo "# yum install php-cli php-xml"
echo " "
elif [ -x /usr/bin/zypper ]
then
echo "The command to likely run for your operating system is: "
echo "# zypper install php5 php5-zip"
echo "# yum install php-cli php-xml php-json"
echo " "
elif [ -x /usr/bin/pkg_radd ]
then
# BSD
echo "The command to likely run for your operating system is: "
echo "# pkg_radd php5 php5-json php5-zip php5-dom"
echo "# pkg_radd php7 php7-json php7-zip php7-dom"
echo " "
elif [ -x /usr/bin/pacman ]
then
# Arch Linux
echo "The command to likely run for your operating system is: "
echo "# pacman -S php"
echo " "
elif [ -x /usr/local/sbin/pkg ] || [ -x /usr/sbin/pkg ]
then
# DragonFlyBSD and others
echo "The command to likely run for your operating system is: "
echo "# pkg install php72 php72-dom php72-zip php72-json php72-simplexml php72-openssl"
echo " "
elif [ -x /usr/local/swupd ]
then
# Clear Linux
echo "The command to likely run for your operating system is: "
echo "# swupd bundle-add os-testsuite-phoronix"
echo " "
elif [ -x /usr/sbin/pkg_add ]
then
# OpenBSD
echo "The command to likely run for your operating system is: "
echo "# pkg_add php php-zip"
echo " "
elif [ -x /usr/sbin/equo ]
then
# Sabayon
echo "The command to likely run for your operating system is: "
echo "# equo install dev-lang/php"
echo " "
elif [ -x /usr/bin/xbps-install ] || [ -x /usr/sbin/xbps-install ]
then
# Void Linux
echo "The command to likely run for your operating system is: "
echo "# xbps-install -Sy php unzip"
echo " "
elif [ -x /usr/sbin/netpkg ]
then
# Zenwalk / Slackware
echo "The command to likely run for your operating system is: "
echo "# netpkg php"
echo " "
elif [ -x /sbin/apk ]
then
# Alpine Linux
echo "The command to likely run for your operating system is: "
echo "# apk add php7 php7-dom php7-zip php7-json php7-simplexml"
echo " "
elif [ -x /usr/bin/urpmi ]
then
# OpenMandriva Linux
echo "The command to likely run for your operating system is: "
echo "# urpmi php-cli"
echo " "
elif [ -x /usr/bin/eopkg ]
then
# Solus Linux
echo "The command to likely run for your operating system is: "
echo "# eopkg install php"
echo " "
elif [ -x /usr/sbin/mport ]
then
# MidnightBSD
echo "The command to likely run for your operating system is: "
echo "# mport install php70 php70-dom php70-zip php70-json php70-simplexml"
echo " "
elif [ -x /bin/opkg ]
then
# Linux Embedded Development Environment
echo "The command to likely run for your operating system is: "
echo "# opkg install php7-cli php7-mod-dom php7-mod-zip php7-mod-json php7-mod-simplexml"
echo " "
elif [ -x /usr/bin/equo ]
then
# Sabayon
echo "The command to likely run for your operating system is: "
echo "# equo install php"
echo " "
elif [ -x /usr/bin/emerge ]
then
# Gentoo
echo "The command to likely run for your operating system is: "
echo "# emerge dev-lang/php"
echo " "
fi
exit
@@ -123,15 +260,16 @@ case "$1" in
"test-module" | "debug-module" | "webui")
export PTS_IGNORE_MODULES=1
;;
"debug-self-test")
export PTS_IGNORE_MODULES=1
export PTS_SILENT_MODE=1
;;
"enterprise-setup")
export PTS_SILENT_MODE=1
;;
esac
if [ -f $HOME/.phoronix-test-suite/web-server-launcher ]
then
rm -f $HOME/.phoronix-test-suite/web-server-launcher
elif [ -f $HOME/.phoronix-test-suite/phoromatic-server-launcher ]
then
rm -f $HOME/.phoronix-test-suite/phoromatic-server-launcher
fi
export PTS_EXT_LAUNCH_SCRIPT_DIR=`mktemp -d 2>/dev/null || mktemp -d -t ptstmp`
# Run The Phoronix Test Suite
PTS_EXIT_STATUS=8
@@ -140,14 +278,15 @@ while [ $PTS_EXIT_STATUS -eq 8 ]; do
PTS_EXIT_STATUS=$?
done
if [ -f $HOME/.phoronix-test-suite/web-server-launcher ]
if [ -f $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher ]
then
chmod +x $HOME/.phoronix-test-suite/web-server-launcher
exec $HOME/.phoronix-test-suite/web-server-launcher
rm -f $HOME/.phoronix-test-suite/web-server-launcher
elif [ -f $HOME/.phoronix-test-suite/phoromatic-server-launcher ]
chmod +x $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher
exec $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher
rm -f $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher
elif [ -f $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher ]
then
chmod +x $HOME/.phoronix-test-suite/phoromatic-server-launcher
exec $HOME/.phoronix-test-suite/phoromatic-server-launcher
rm -f $HOME/.phoronix-test-suite/phoromatic-server-launcher
chmod +x $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher
exec $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher
rm -f $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher
fi
# rm -rf $PTS_EXT_LAUNCH_SCRIPT_DIR

36
phoronix-test-suite.bat Executable file → Normal file
View File

@@ -1,7 +1,7 @@
:: Phoronix Test Suite
:: URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
:: Copyright (C) 2008 - 2014, Phoronix Media
:: Copyright (C) 2008 - 2014, Michael Larabel
:: Copyright (C) 2008 - 2018, Phoronix Media
:: Copyright (C) 2008 - 2018, Michael Larabel
:: phoronix-test-suite: The Phoronix Test Suite is an extensible open-source testing / benchmarking platform
::
:: This program is free software; you can redistribute it and/or modify
@@ -20,16 +20,34 @@
:: Full path to root directory of the actual Phoronix Test Suite code
@echo off
set PTS_DIR=%cd%
set PTS_DIR=%~dp0
set PTS_MODE=CLIENT
set PTS_LAUNCHER=%0
:: See if php was setup via Cygwin64, the benefit there is allowing access to PCNTL extensions, etc
:: If exist C:\cygwin64\bin\php.exe (
:: set PHP_BIN=C:\cygwin64\bin\php.exe
:: )
:: TODO: Other work to bring this up to sync with the *NIX phoronix-test-suite launcher
If defined PHP_BIN goto SkipBinSearch
echo "No PHP_BIN defined checking for usual locations."
If exist "C:\Program Files (x86)\PHP"\php set PHP_BIN="C:\Program Files (x86)\PHP"\php
If exist C:\php-gtk2\php set PHP_BIN=C:\php-gtk2\php
set PHP_BIN="C:\Program Files (x86)\PHP"\php
:: Download PHP for Windows and then extract it
If not exist C:\PHP\php.exe (
echo Attempting to download and setup Windows PHP release.
If not exist php.zip (
powershell -command "& { iwr http://phoronix-test-suite.com/benchmark-files/php-7.2.3-Win32-VC15-x64.zip -OutFile php.zip }"
)
powershell -command "& { Expand-Archive php.zip -DestinationPath C:\PHP }"
If not exist VC_redist.x64.exe (
echo Attempting to download and run Visual C++ Redistributable for Visual Studio 2017 support.
powershell -command "& { iwr https://go.microsoft.com/fwlink/?LinkId=746572 -OutFile VC_redist.x64.exe }"
VC_redist.x64.exe
)
)
:: Use the newly downloaded PHP location
set PHP_BIN=C:\PHP\php.exe
:SkipBinSearch
cls
%PHP_BIN% pts-core/phoronix-test-suite.php %*
%PHP_BIN% "%PTS_DIR%\pts-core\phoronix-test-suite.php" %*

View File

@@ -1,30 +1,24 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, 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 implements pts_option_interface
{
const doc_section = 'Result Analytics';
const doc_section = 'Result Management';
const doc_description = '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 is numerical result data from all trial runs.\n\nThe 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.';
public static function argument_checks()
{
return array(
@@ -33,8 +27,7 @@ class analyze_all_runs implements pts_option_interface
}
public static function run($args)
{
pts_client::regenerate_graphs($args[0], 'The ' . $args[0] . ' result file graphs have been re-rendered to show all test runs.', array('graph_render_type' => 'CANDLESTICK'));
pts_client::regenerate_graphs($args[0], 'The ' . $args[0] . ' result file graphs have been re-rendered to show all test runs.', array('graph_render_type' => 'HORIZONTAL_BOX_PLOT'));
}
}
?>

View File

@@ -1,54 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, 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_batch implements pts_option_interface
{
const doc_section = 'Result Analytics';
const doc_description = '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).';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function run($args)
{
$base_file = $args[0];
do
{
$rand_file = rand(1000, 9999);
$save_to = 'analyze-' . $rand_file . '/';
}
while(is_dir(PTS_SAVE_RESULTS_PATH . $save_to));
$save_to .= 'composite.xml';
// Analyze Results
$SAVED_RESULTS = pts_merge::generate_analytical_batch_xml($base_file);
pts_client::save_test_result($save_to, $SAVED_RESULTS);
echo 'Results Saved To: ' . PTS_SAVE_RESULTS_PATH . $save_to . PHP_EOL . PHP_EOL;
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . dirname($save_to) . '/index.html');
}
}
?>

View File

@@ -1,138 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2011, Phoronix Media
Copyright (C) 2009 - 2011, 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_image_delta implements pts_option_interface
{
const doc_section = 'Result Analytics';
const doc_description = 'This option will analyze a test result file if it contains any test results that produced an image quality comparison (IQC) and will render image deltas illustrating the difference between images from two test results.';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function run($args)
{
$result = $args[0];
$result_file = new pts_result_file($result);
$result_file_identifiers = $result_file->get_system_identifiers();
if(count($result_file_identifiers) < 2)
{
echo PHP_EOL . 'There are not multiple test runs in this result file.' . PHP_EOL;
return false;
}
$base_identifier = pts_user_io::prompt_text_menu('Select the base test run', $result_file_identifiers);
$base_select = new pts_result_merge_select($result, $base_identifier);
$compare_identifier = pts_user_io::prompt_text_menu('Select the test run to compare', $result_file_identifiers);
$compare_select = new pts_result_merge_select($result, $compare_identifier);
do
{
$extract_to = 'iqc-analyze-' . rand(100, 999);
}
while(is_dir(PTS_SAVE_RESULTS_PATH . $extract_to));
$extract_result = pts_merge::merge_test_results($base_select, $compare_select);
pts_client::save_test_result($extract_to . '/composite.xml', $extract_result);
$compare_file = new pts_result_file($extract_to);
$result_file_writer = new pts_result_file_writer('Image Delta');
foreach($compare_file->get_result_objects() as $result_object)
{
if($result_object->test_profile->get_display_format() != 'IMAGE_COMPARISON')
{
continue;
}
$base_result = null;
$compare_result = null;
foreach($result_object->test_result_buffer->get_buffer_items() as $buffer_item)
{
if($buffer_item->get_result_identifier() == $base_identifier && $base_result == null)
{
$base_result = $buffer_item->get_result_value();
}
else if($buffer_item->get_result_identifier() == $compare_identifier && $compare_result == null)
{
$compare_result = $buffer_item->get_result_value();
}
if($compare_result != null && $base_result != null)
{
break;
}
}
if($compare_result == null || $base_result == null)
{
continue;
}
$base_img = imagecreatefromstring(base64_decode($base_result));
$compare_img = imagecreatefromstring(base64_decode($compare_result));
$delta_img = imagecreatefromstring(base64_decode($compare_result));
$img_width = imagesx($base_img);
$img_height = imagesy($base_img);
$img_changed = false;
for($x = 0; $x < $img_width; $x++)
{
for($y = 0; $y < $img_height; $y++)
{
$base_image_color = pts_image::rgb_gd_color_at($base_img, $x, $y);
$compare_image_color = pts_image::rgb_gd_color_at($compare_img, $x, $y);
if($base_image_color == $compare_image_color || pts_image::rgb_int_diff($base_image_color, $compare_image_color) < 9)
{
if(($cords = pts_image::color_pixel_delta($base_img, $compare_img, $x, $y)))
{
$pixel_rgb = pts_image::rgb_gd_color_at($delta_img, $cords[0], $cords[1]);
$color_invert = imagecolorresolve($delta_img, 255 - $pixel_rgb[0], 255 - $pixel_rgb[1], 255 - $pixel_rgb[2]);
imagesetpixel($delta_img, $x, $y, $color_invert);
$img_changed = true;
}
}
}
}
if($img_changed)
{
imagepng($delta_img, PTS_SAVE_RESULTS_PATH . $extract_to . '/scratch.png');
$result_value = base64_encode(file_get_contents(PTS_SAVE_RESULTS_PATH . $extract_to . '/scratch.png', FILE_BINARY));
pts_file_io::unlink(PTS_SAVE_RESULTS_PATH . $extract_to . '/scratch.png');
$result_file_writer->add_result_from_result_object_with_value_string($result_object, $result_value);
}
}
pts_client::save_result_file($result_file_writer, $extract_to);
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $extract_to . '/composite.xml');
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2012, Phoronix Media
Copyright (C) 2012, Michael Larabel
Copyright (C) 2012 - 2018, Phoronix Media
Copyright (C) 2012 - 2018, 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
@@ -25,10 +25,6 @@ class auto_compare implements pts_option_interface
const doc_section = 'Testing';
const doc_description = 'This option will autonomously determine the most relevant test(s) to run for any selected sub-system(s). The tests to run are determined via OpenBenchmarking.org integration with the global results pool. Related test results from OpenBenchmarking.org are also merged to provide a straight-forward and effective means of carrying out a system comparison. If wishing to find comparable results for any particular test profile(s), simply pass the test profile names as additional arguments to this command.';
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
}
public static function run($r)
{
$compare_tests = array();
@@ -39,7 +35,7 @@ class auto_compare implements pts_option_interface
if($test_object instanceof pts_test_profile)
{
array_push($compare_tests, $test_object->get_identifier(false));
$compare_tests[] = $test_object->get_identifier(false);
if(!isset($compare_subsystems[$test_object->get_test_hardware_type()]))
{
@@ -113,11 +109,10 @@ class auto_compare implements pts_option_interface
foreach($json['auto_compare']['public_ids'] as $public_id)
{
$result_xml = pts_openbenchmarking::clone_openbenchmarking_result($public_id, true);
if($result_xml)
$ret = pts_openbenchmarking::clone_openbenchmarking_result($public_id);
if($ret)
{
$result_file = new pts_result_file($result_xml);
$result_file = new pts_result_file($public_id);
$result_objects = $result_file->get_result_objects();
foreach($result_objects as $i => &$result_object)
@@ -140,54 +135,49 @@ class auto_compare implements pts_option_interface
continue;
}
$result_file->override_result_objects($result_objects);
array_push($compare_results, $result_file);
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
$compare_results[] = $public_id;
}
}
if(count($compare_results) > 0)
{
$result_xml = pts_merge::merge_test_results_array($compare_results);
$result_file = new pts_result_file(null, true);
$result_file->merge($compare_results);
$result_objects = $result_file->get_result_objects();
$system_count = $result_file->get_system_count();
$result_count = count($result_objects);
$result_match_count = array();
if(count($compare_results) > 2)
if($result_count > 3)
{
$result_file = new pts_result_file($result_xml);
$result_objects = $result_file->get_result_objects();
$system_count = $result_file->get_system_count();
$result_count = count($result_objects);
$result_match_count = array();
if($result_count > 3)
foreach($result_objects as $i => &$result_object)
{
foreach($result_objects as $i => &$result_object)
{
$result_match_count[$i] = $result_object->test_result_buffer->get_count();
}
$result_match_count[$i] = $result_object->test_result_buffer->get_count();
}
arsort($result_match_count);
$biggest_size = pts_arrays::first_element($result_match_count);
if($biggest_size == $system_count || $biggest_size > 3)
arsort($result_match_count);
$biggest_size = pts_arrays::first_element($result_match_count);
if($biggest_size == $system_count || $biggest_size > 3)
{
foreach($result_match_count as $key => $value)
{
foreach($result_match_count as $key => $value)
if($value < 2)
{
if($value < 2)
{
unset($result_objects[$key]);
}
unset($result_objects[$key]);
}
}
$result_file->override_result_objects($result_objects);
$result_xml = pts_merge::merge_test_results_array(array($result_file));
}
$result_file->override_result_objects($result_objects);
}
pts_client::save_test_result('auto-comparison/composite.xml', $result_xml);
pts_client::save_test_result('auto-comparison/composite.xml', $result_file->get_xml());
}
}
pts_test_installer::standard_install(array('auto-comparison'));
pts_test_run_manager::standard_run(array('auto-comparison'));
$test_run_manager = new pts_test_run_manager();
$test_run_manager->standard_run(array('auto-comparison'));
}
protected static function system_component_to_format(&$system_info, &$to_array, $component_types, $allow_trim_extra = false)
{
@@ -203,10 +193,10 @@ class auto_compare implements pts_option_interface
{
$value_r = explode(' ', str_replace('-', ' ', $value));
array_pop($value_r);
array_push($to_array, $component_type . ':' . implode(' ', $value_r));
$to_array[] = $component_type . ':' . implode(' ', $value_r);
}
array_push($to_array, $component_type . ':' . $value);
$to_array[] = $component_type . ':' . $value;
}
}
}

View File

@@ -0,0 +1,68 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2017, Phoronix Media
Copyright (C) 2017, 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 auto_load_module implements pts_option_interface
{
const doc_section = 'Modules';
const doc_description = 'This option can be used for easily adding a module to the LoadModules list in the Phoronix Test Suite user configuration file. That list controls what PTS modules are automatically loaded on start-up of the Phoronix Test Suite.';
public static function run($r)
{
$loaded_modules = pts_strings::comma_explode(pts_config::read_user_config('PhoronixTestSuite/Options/Modules/LoadModules', null));
$available_modules = pts_module_manager::list_available_modules();
echo PHP_EOL . 'Currently Loaded Modules: ' . PHP_EOL;
echo pts_user_io::display_text_list($loaded_modules);
echo PHP_EOL . 'Available Modules: ' . PHP_EOL;
echo pts_user_io::display_text_list($available_modules);
if(count($r) == 0)
{
echo PHP_EOL . 'You must specify a valid module from the list to load.' . PHP_EOL;
echo 'Example: phoronix-test-suite auto-load-module update_checker' . PHP_EOL;
return false;
}
foreach($r as $module_to_load)
{
if(!in_array($module_to_load, $available_modules))
{
echo PHP_EOL . 'Module Not Available: ' . $module_to_load . PHP_EOL;
}
else if(in_array($module_to_load, $loaded_modules))
{
echo PHP_EOL . 'Module Already Loaded: ' . $module_to_load . PHP_EOL;
}
else
{
echo PHP_EOL . 'Module To Load: ' . $module_to_load . PHP_EOL;
array_push($loaded_modules, $module_to_load);
}
}
$new_options = array('PhoronixTestSuite/Options/Modules/LoadModules' => implode(', ', $loaded_modules));
pts_config::user_config_generate($new_options);
echo PHP_EOL . 'New user configuration file written.' . PHP_EOL . PHP_EOL;
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014, Phoronix Media
Copyright (C) 2014, Michael Larabel
Copyright (C) 2014 - 2018, Phoronix Media
Copyright (C) 2014 - 2018, 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
@@ -33,9 +33,7 @@ class auto_sort_result_file implements pts_option_interface
}
public static function run($args)
{
$result = $args[0];
$result_file = new pts_result_file($result);
$result_file = new pts_result_file($args[0]);
$result_file_identifiers = $result_file->get_system_identifiers();
if(count($result_file_identifiers) < 2)
@@ -48,20 +46,10 @@ class auto_sort_result_file implements pts_option_interface
echo PHP_EOL . 'Automatically sorting the results...' . PHP_EOL;
sort($result_file_identifiers);
foreach($result_file_identifiers as $identifier)
{
array_push($extract_selects, new pts_result_merge_select($result, $identifier));
}
$ordered_result = pts_merge::merge_test_results_array($extract_selects);
pts_client::save_test_result($args[0] . '/composite.xml', $ordered_result);
$result_file->reorder_runs($result_file_identifiers);
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $args[0] . '/index.html');
}
public static function invalid_command($passed_args = null)
{
pts_tests::recently_saved_results();
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009, Phoronix Media
Copyright (C) 2009, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, 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
@@ -33,8 +33,9 @@ class batch_benchmark implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::batch_mode);
pts_test_run_manager::standard_run($r, pts_c::batch_mode);
pts_test_installer::standard_install($r, false, true);
$test_run_manager = new pts_test_run_manager(true);
$test_run_manager->standard_run($r);
}
}

View File

@@ -33,7 +33,7 @@ class batch_install implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::batch_mode);
pts_test_installer::standard_install($r, false, true);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2012, Phoronix Media
Copyright (C) 2009 - 2012, Michael Larabel
Copyright (C) 2009 - 2018, Phoronix Media
Copyright (C) 2009 - 2018, 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
@@ -33,11 +33,8 @@ class batch_run implements pts_option_interface
}
public static function run($r)
{
pts_test_run_manager::standard_run($r, pts_c::batch_mode);
}
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
$test_run_manager = new pts_test_run_manager(true);
$test_run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, 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
@@ -29,10 +29,6 @@ class benchmark implements pts_option_interface
{
return array('test');
}
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
}
public static function argument_checks()
{
return array(
@@ -42,7 +38,8 @@ class benchmark implements pts_option_interface
public static function run($r)
{
pts_test_installer::standard_install($r);
pts_test_run_manager::standard_run($r);
$run_manager = new pts_test_run_manager();
$run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2017, Phoronix Media
Copyright (C) 2008 - 2017, 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
@@ -22,7 +22,7 @@
class build_suite implements pts_option_interface
{
const doc_section = 'Other';
const doc_section = 'Asset Creation';
const doc_description = 'This option will guide the user through the process of generating their own test suite, which they can then run. Optionally, passed as arguments can be the test(s) or suite(s) to add to the suite to be created, instead of being prompted through the process.';
public static function run($r)
@@ -37,8 +37,12 @@ class build_suite implements pts_option_interface
$possible_suites = pts_openbenchmarking::available_suites();
$possible_tests = pts_openbenchmarking::available_tests();
$suite_writer = new pts_test_suite_writer();
$suite_writer->add_suite_information($suite_name, '1.0.0', $suite_maintainer, $suite_test_type, $suite_description);
$new_suite = new pts_test_suite();
$new_suite->set_title($suite_name);
$new_suite->set_version('1.0.0');
$new_suite->set_maintainer($suite_maintainer);
$new_suite->set_suite_type($suite_test_type);
$new_suite->set_description($suite_description);
foreach($r as $test_object)
{
@@ -51,12 +55,12 @@ class build_suite implements pts_option_interface
for($i = 0; $i < count($args); $i++)
{
// Not binding the test profile version to this suite, otherwise change false to true
$suite_writer->add_to_suite($test_object->get_identifier(false), $args[$i], $description[$i]);
$new_suite->add_to_suite($test_object, $args[$i], $description[$i]);
}
}
else if($test_object instanceof pts_test_suite)
{
$suite_writer->add_to_suite($test_object->get_identifier(), null, null);
$new_suite->add_suite_tests_to_suite($test_object);
}
}
@@ -74,12 +78,13 @@ class build_suite implements pts_option_interface
for($i = 0; $i < count($args); $i++)
{
$suite_writer->add_to_suite($test_to_add, $args[$i], $description[$i]);
$new_suite->add_to_suite($test_profile, $args[$i], $description[$i]);
}
break;
case 'Add Sub-Suite':
$suite_to_add = pts_user_io::prompt_text_menu('Enter test suite', $possible_suites);
$suite_writer->add_to_suite($suite_to_add, null, null);
$test_suite = new pts_test_suite($suite_to_add);
$new_suite->add_suite_tests_to_suite($test_suite);
break;
}
echo PHP_EOL . 'Available Options:' . PHP_EOL;
@@ -87,13 +92,9 @@ class build_suite implements pts_option_interface
}
while($input_option != 'Save & Exit');
$suite_identifier = pts_test_run_manager::clean_save_name($suite_name);
$save_to = PTS_TEST_SUITE_PATH . 'local/' . $suite_identifier . '/suite-definition.xml';
mkdir(dirname($save_to));
if($suite_writer->save_xml($save_to) != false)
if($new_suite->save_xml($suite_name) != false)
{
echo PHP_EOL . PHP_EOL . 'Saved To: ' . $save_to . PHP_EOL . 'To run this suite, type: phoronix-test-suite benchmark ' . $suite_identifier . PHP_EOL . PHP_EOL;
echo PHP_EOL . PHP_EOL . 'Saved -- to run this suite, type: phoronix-test-suite benchmark ' . $new_suite->get_identifier() . PHP_EOL . PHP_EOL;
}
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2010, Phoronix Media
Copyright (C) 2008 - 2010, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, 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
@@ -24,7 +24,7 @@ class clone_openbenchmarking_result implements pts_option_interface
{
const doc_section = 'OpenBenchmarking.org';
const doc_use_alias = 'clone-result';
const doc_description = 'This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied. More than one ID can be specified and the results will then be merged.';
const doc_description = 'This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied.';
public static function command_aliases()
{
@@ -42,14 +42,13 @@ class clone_openbenchmarking_result implements pts_option_interface
foreach($args as $id)
{
$xml = pts_openbenchmarking::clone_openbenchmarking_result($id, true);
array_push($result_files, new pts_result_file($xml));
if($xml)
{
$result_file = new pts_result_file($xml);
pts_client::save_test_result($id . '/composite.xml', $result_file->get_xml(), true);
echo PHP_EOL . 'Result Saved To: ' . PTS_SAVE_RESULTS_PATH . $id . '/composite.xml' . PHP_EOL;
}
}
$writer = new pts_result_file_writer(null);
pts_merge::merge_test_results_process($writer, $result_files);
pts_client::save_test_result($args[0] . '/composite.xml', $writer->get_xml(), true);
echo PHP_EOL . 'Result Saved To: ' . PTS_SAVE_RESULTS_PATH . $args[0] . '/composite.xml' . PHP_EOL;
}
}

View File

@@ -3,9 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2010, Phoronix Media
Copyright (C) 2008 - 2010, Michael Larabel
bilde_png_renderer: The PNG rendering implementation for bilde_renderer.
Copyright (C) 2018, Phoronix Media
Copyright (C) 2018, 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
@@ -21,18 +20,28 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
class bilde_png_renderer extends bilde_gd_renderer
class commands implements pts_option_interface
{
public $renderer = "PNG";
const doc_section = 'Other';
const doc_description = 'This option will display a short list of possible Phoronix Test Suite commands.';
public function render_image($output_file = null, $quality = 100)
public static function run($r)
{
$quality = floor(9 - (($quality / 100) * 9)); // calculate compression level
if(defined("BILDE_IMAGE_INTERLACING"))
$options = pts_documentation::client_commands_array();
$commands = array();
foreach($options as $section => &$contents)
{
imageinterlace($this->image, BILDE_IMAGE_INTERLACING);
if(empty($contents))
{
continue;
}
foreach($contents as &$option)
{
$commands[] = $option[0];
}
}
return imagepng($this->image, $output_file, $quality);
echo pts_user_io::display_packed_list($commands);
echo PHP_EOL;
}
}

View File

@@ -1,64 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010 - 2013, Phoronix Media
Copyright (C) 2010 - 2013, 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 copy_run_in_result_file implements pts_option_interface
{
const doc_section = 'Result Management';
const doc_description = 'This option is used if you wish to change an existing test run within a saved results file.';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function run($r)
{
$result = $r[0];
$result_file = new pts_result_file($result);
$result_file_identifiers = $result_file->get_system_identifiers();
$copy_identifier = pts_user_io::prompt_text_menu('Select the test run to copy', $result_file_identifiers);
$copy_identifier_new = pts_user_io::prompt_user_input('Enter the new identifier of the copied run');
$merge_selects = array();
foreach($result_file_identifiers as $identifier)
{
$this_merge_select = new pts_result_merge_select($result, $identifier);
array_push($merge_selects, $this_merge_select);
if($identifier == $copy_identifier)
{
$this_merge_select = new pts_result_merge_select($result, $identifier);
$this_merge_select->rename_identifier($copy_identifier_new);
array_push($merge_selects, $this_merge_select);
}
}
$extract_result = pts_merge::merge_test_results_array($merge_selects);
pts_client::save_test_result($r[0] . '/composite.xml', $extract_result);
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $r[0] . '/index.html');
}
}
?>

View File

@@ -0,0 +1,91 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2018, Phoronix Media
Copyright (C) 2018, 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 create_test_profile implements pts_option_interface
{
const doc_section = 'Asset Creation';
const doc_description = 'This option can be used for creating a Phoronix Test Suite test profile by answering questions about the test for constructing the test profile XML meta-data and handling other boiler-plate basics for getting started in developing new tests.';
public static function run($r)
{
echo 'The create-test-profile helper will attempt to walk you through creating the basics of creating a new test profile for execution by the Phoronix Test Suite. Follow the prompts to begin filling out the XML meta-data that defines a test profile.' . PHP_EOL;
do
{
$is_valid = true;
$input = pts_user_io::prompt_user_input('Enter an identifier/name for the test profile', false, false);
$input = pts_validation::string_to_sanitized_test_profile_base($input);
if(pts_test_profile::is_test_profile($input))
{
$is_valid = false;
echo 'There is already a ' . $input . ' test profile.' . PHP_EOL;
}
else if(pts_test_suite::is_suite($input))
{
$is_valid = false;
echo 'There is already a test suite named ' . $input . '.' . PHP_EOL;
}
else if(pts_result_file::is_test_result_file($input))
{
$is_valid = false;
echo 'There is already a result file named ' . $input . '.' . PHP_EOL;
}
}
while(!$is_valid);
$tp_identifier = 'local/'. $input;
$tp_path = PTS_TEST_PROFILE_PATH . $tp_identifier;
echo 'Creating test profile: ' . $tp_identifier . ' @ ' . $tp_path . PHP_EOL;
pts_file_io::mkdir($tp_path);
$types = pts_validation::process_xsd_types();
pts_client::$display->generic_heading('test-definition.xml Creation');
$writer = new nye_XmlWriter();
pts_validation::xsd_to_cli_creator(pts_openbenchmarking::openbenchmarking_standards_path() . 'schemas/test-profile.xsd', $writer, $types);
$writer->saveXMLFile($tp_path . '/test-definition.xml');
echo 'Generated: ' . $tp_path . '/test-definition.xml' . PHP_EOL;
pts_client::$display->generic_heading('downloads.xml Creation');
$writer = new nye_XmlWriter();
do
{
pts_validation::xsd_to_cli_creator(pts_openbenchmarking::openbenchmarking_standards_path() . 'schemas/test-profile-downloads.xsd', $writer, $types);
}
while(pts_user_io::prompt_bool_input('Add another file/download?', -1));
$writer->saveXMLFile($tp_path . '/downloads.xml');
echo 'Generated: ' . $tp_path . '/downloads.xml' . PHP_EOL;
/*
pts_client::$display->generic_heading('results-definition.xml Creation');
$writer = new nye_XmlWriter();
pts_validation::xsd_to_cli_creator(pts_openbenchmarking::openbenchmarking_standards_path() . 'schemas/results-parser.xsd', $writer, $types);
$writer->saveXMLFile($tp_path . '/results-definition.xml');
echo 'Generated: ' . $tp_path . '/results-definition.xml' . PHP_EOL;
*/
pts_validation::generate_test_profile_file_templates($tp_identifier, $tp_path);
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2014, Phoronix Media
Copyright (C) 2009 - 2014, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, 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
@@ -42,7 +42,9 @@ class debug_benchmark implements pts_option_interface
// For debugging, usually running just once is sufficient, unless FORCE_TIMES_TO_RUN is preset
pts_client::pts_set_environment_variable('FORCE_TIMES_TO_RUN', 1);
// Run the test(s) in debug mode
pts_test_run_manager::standard_run($r, pts_c::debug_mode);
pts_client::set_debug_mode(true);
$test_run_manager = new pts_test_run_manager();
$test_run_manager->standard_run($r);
}
}

View File

@@ -0,0 +1,45 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2015, Phoronix Media
Copyright (C) 2015, 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 debug_dependency_handler implements pts_option_interface
{
const doc_section = 'Other';
const doc_description = 'This option is used for testing the distribution-specific dependency handler for external dependencies.';
public static function run($r)
{
$exdep_parser = new pts_exdep_generic_parser();
foreach($exdep_parser->get_available_packages() as $pkg)
{
$pkg_data = $exdep_parser->get_package_data($pkg);
$files = explode(' ', str_replace(array(' OR ', ', '), ' ', $pkg_data['file_check']));
foreach($files as $file)
{
echo (is_array($file) ? implode(' ', $file) : $file) . ': ';
$deps = pts_external_dependencies::packages_that_provide($file);
echo (is_array($deps) ? implode(' ', $deps) : null) . PHP_EOL;
}
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, 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
@@ -33,7 +33,8 @@ class debug_install implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::debug_mode | pts_c::force_install);
pts_client::set_debug_mode(true);
pts_test_installer::standard_install($r, true);
}
}

View File

@@ -0,0 +1,125 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2015 - 2017, Phoronix Media
Copyright (C) 2015 - 2017, 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 debug_render_test implements pts_option_interface
{
const doc_section = 'Other';
const doc_description = 'This option is used during the development of the Phoronix Test Suite software for testing of the result and graph rendering code-paths This option will download a large number of reference test results from LinuxBenchmarking.com.';
public static function run($r)
{
$render_dir = pts_client::temporary_directory() . '/pts-render-test-20171112/';
if(!is_file($render_dir . 'mega-render-test-20171112.tar.xz'))
{
pts_file_io::mkdir($render_dir);
pts_network::download_file('http://linuxbenchmarking.com/misc/mega-render-test-20171112.tar.xz', $render_dir . 'mega-render-test-20171112.tar.xz');
}
pts_compression::archive_extract($render_dir . 'mega-render-test-20171112.tar.xz');
if(!defined('PATH_TO_EXPORTED_PHOROMATIC_DATA'))
{
define('PATH_TO_EXPORTED_PHOROMATIC_DATA', $render_dir . 'mega-render-test-20171112/');
}
error_reporting(E_ALL);
ini_set('memory_limit','2048M');
$export_index_json = file_get_contents(PATH_TO_EXPORTED_PHOROMATIC_DATA . 'export-index.json');
$export_index_json = json_decode($export_index_json, true);
$dump_size = 0;
$start = microtime(true);
foreach(array_keys($export_index_json['phoromatic']) as $REQUESTED)
{
$this_render_test = time();
$tracker = &$export_index_json['phoromatic'][$REQUESTED];
$triggers = $tracker['triggers'];
echo PHP_EOL . 'STARTING RENDER TEST ON: ' . $REQUESTED . ' (' . count($triggers) . ' Triggers)' . PHP_EOL;
$length = count($tracker['triggers']);
$result_files = array();
foreach($triggers as $trigger)
{
$results_for_trigger = glob(PATH_TO_EXPORTED_PHOROMATIC_DATA . '/' . $REQUESTED . '/' . $trigger . '/*/composite.xml');
echo '.';
if($results_for_trigger == false)
continue;
foreach($results_for_trigger as $composite_xml)
{
// Add to result file
$system_name = basename(dirname($composite_xml)) . ': ' . $trigger;
$result_files[] = new pts_result_merge_select($composite_xml, null, $system_name);
}
}
echo 'STARTING MERGE; ';
$result_file = new pts_result_file(null, true);
$result_file->merge($result_files);
echo 'MAKING NEW RESULT FILE; ';
$extra_attributes = array('reverse_result_buffer' => true, 'force_simple_keys' => true, 'force_line_graph_compact' => true, 'force_tracking_line_graph' => true);
//$extra_attributes['normalize_result_buffer'] = true;
$intent = null;
//$table = new pts_ResultFileTable($result_file, $intent);
//echo '<p style="text-align: center; overflow: auto;" class="result_object">' . pts_render::render_graph_inline_embed($table, $result_file, $extra_attributes) . '</p>';
echo 'STARTING RESULT LOOP; ';
$html_dump = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>';
foreach($result_file->get_result_objects((isset($_POST['show_only_changed_results']) ? 'ONLY_CHANGED_RESULTS' : -1)) as $i => $result_object)
{
echo $result_object->test_profile->get_title() . ' ';
$html_dump .= '<h3>' . $result_object->get_arguments_description() . '</h3>';
$html_dump .= pts_render::render_graph_inline_embed($result_object, $result_file, $extra_attributes);
unset($result_object);
}
$table = new pts_ResultFileSystemsTable($result_file);
$html_dump .= pts_render::render_graph_inline_embed($table, $result_file, $extra_attributes);
echo PHP_EOL . PHP_EOL . 'RENDER TEST ON: ' . $REQUESTED . ' TOOK ' . (time() - $this_render_test) . PHP_EOL;
$dump_size += strlen($html_dump);
file_put_contents(PATH_TO_EXPORTED_PHOROMATIC_DATA . $REQUESTED . '.html', $html_dump . '</body></html>');
}
if(getenv('DEBUG_RENDER_TEST_LOCAL_TOO') != false)
{
echo PHP_EOL . 'LOCAL RENDER TEST TIME' . PHP_EOL;
$extra_graph_attributes = null;
foreach(pts_client::saved_test_results() as $saved_result)
{
$save_to_dir = pts_client::setup_test_result_directory($saved_result);
$generated_graphs = pts_client::generate_result_file_graphs($saved_result, $save_to_dir, $extra_graph_attributes);
echo $saved_result . ': ' . count($generated_graphs) . PHP_EOL;
}
}
echo PHP_EOL . 'RENDER TEST TOOK: ' . (time() - $start) . PHP_EOL . PHP_EOL;
echo PHP_EOL . 'PEAK MEMORY USAGE: ' . round(memory_get_peak_usage(true) / 1048576, 3) . ' MB';
echo PHP_EOL . 'PEAK MEMORY USAGE (emalloc): ' . round(memory_get_peak_usage() / 1048576, 3) . ' MB';
echo PHP_EOL . 'TOTAL FILE SIZE: ' . ceil($dump_size / 1000) . ' KB';
echo PHP_EOL;
}
}
?>

View File

@@ -0,0 +1,48 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2017, Phoronix Media
Copyright (C) 2017, 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 debug_result_parser implements pts_option_interface
{
const doc_section = 'Asset Creation';
const doc_description = 'This option is intended for use by test profile writers and is used for debugging a result parser. No test execution is done, but there must already be PTS-generated .log files present within the test\'s installation directory.';
public static function argument_checks()
{
return array(
new pts_argument_check('VARIABLE_LENGTH', array('pts_types', 'identifier_to_object'), null)
);
}
public static function run($r)
{
// Make sure you're debugging the latest test script...
//pts_test_installer::standard_install($r);
// For debugging, usually running just once is sufficient, unless FORCE_TIMES_TO_RUN is preset
pts_client::pts_set_environment_variable('FORCE_TIMES_TO_RUN', 1);
// Run the test(s) in debug mode
pts_client::set_debug_mode(true);
$test_run_manager = new pts_test_run_manager();
$test_run_manager->DEBUG_no_test_execution_just_result_parse = true;
$test_run_manager->standard_run($r);
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2013, Phoronix Media
Copyright (C) 2013, Michael Larabel
Copyright (C) 2013 - 2018, Phoronix Media
Copyright (C) 2013 - 2018, 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
@@ -27,16 +27,19 @@ class debug_self_test implements pts_option_interface
public static function run($r)
{
define('PHOROMATIC_PROCESS', true);
$commands = array(
'detailed_system_info' => null,
'system_info' => null,
'list_available_tests' => null,
'list_available_suites' => null,
'info' => array('xonotic'),
'clone_openbenchmarking_result' => array('1107247-LI-MESACOMMI48'),
// 'refresh_graphs' => array('1107247-LI-MESACOMMI48'),
'info' => array('pts/all'),
'clone_openbenchmarking_result' => array('1107247-LI-MESACOMMI48', '1509040-HA-GCCINTELS17', '1508201-HA-GTX95073337', '1508233-HA-INTELSKYL16'),
'refresh_graphs' => array('1107247-LI-MESACOMMI48', '1711094-AL-ZOTACGEFO61', '1711073-AL-GTX770TIL45', '1710268-AL-CPUTESTS119'),
'result_file_to_text' => array('1107247-LI-MESACOMMI48'),
'merge_results' => array('1107247-LI-MESACOMMI48', '1509040-HA-GCCINTELS17', '1508201-HA-GTX95073337', '1508233-HA-INTELSKYL16', '1711094-AL-ZOTACGEFO61', '1711073-AL-GTX770TIL45', '1710268-AL-CPUTESTS119'),
'diagnostics' => null,
'dump_possible_options' => null,
'debug_render_test' => null,
);
$individual_times = array();
@@ -54,7 +57,7 @@ class debug_self_test implements pts_option_interface
$c_start = microtime(true);
pts_client::execute_command($command, $args);
$c_finish = microtime(true);
array_push($individual_times[$command], ($c_finish - $c_start));
$individual_times[$command][] = ($c_finish - $c_start);
}
}
$finish = microtime(true);
@@ -68,9 +71,9 @@ class debug_self_test implements pts_option_interface
echo strtoupper($component) . ': ' . (str_repeat(' ', $longest_c - strlen($component))) . pts_math::set_precision(round(array_sum($times) / count($times), 3), 3) . ' seconds' . PHP_EOL;
}
echo PHP_EOL . 'ELAPSED TIME: ' . (str_repeat(' ', $longest_c - strlen('ELAPSED TIME'))) . round($finish - $start, 3) . ' seconds';
echo PHP_EOL . 'TOTAL ELAPSED TIME: ' . (str_repeat(' ', $longest_c - strlen('ELAPSED TIME'))) . round($finish - $start, 3) . ' seconds';
echo PHP_EOL . 'PEAK MEMORY USAGE: ' . (str_repeat(' ', $longest_c - strlen('PEAK MEMORY USAGE'))) . round(memory_get_peak_usage(true) / 1048576, 3) . ' MB';
echo PHP_EOL . 'PEAK MEMORY USAGE (emalloc): ' . (str_repeat(' ', $longest_c - strlen('PEAK MEMORY USAGE (emalloc)'))) . round(memory_get_peak_usage() / 1048576, 3) . ' MB';
echo PHP_EOL . 'PEAK MEMORY USAGE EMALLOC: ' . (str_repeat(' ', $longest_c - strlen('PEAK MEMORY USAGE (emalloc)'))) . round(memory_get_peak_usage() / 1048576, 3) . ' MB';
echo PHP_EOL;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010, Phoronix Media
Copyright (C) 2010, Michael Larabel
Copyright (C) 2010 - 2018, Phoronix Media
Copyright (C) 2010 - 2018, 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
@@ -28,7 +28,7 @@ class debug_test_download_links implements pts_option_interface
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_test_or_suite'), null)
new pts_argument_check(0, array('pts_types', 'identifier_to_object'), null)
);
}
public static function run($r)
@@ -37,7 +37,7 @@ class debug_test_download_links implements pts_option_interface
{
echo 'Checking: ' . $test_profile . PHP_EOL;
foreach(pts_test_install_request::read_download_object_list($test_profile) as $test_file_download)
foreach($test_profile->get_downloads() as $test_file_download)
{
foreach($test_file_download->get_download_url_array() as $url)
{
@@ -48,7 +48,7 @@ class debug_test_download_links implements pts_option_interface
if($file_pointer == false)
{
echo PHP_EOL . 'DOWNLOAD: ' . $test_file_download->get_filename() . ' / ' . $url . PHP_EOL;
echo PHP_EOL . 'BAD URL: ' . $test_file_download->get_filename() . ' / ' . $url . PHP_EOL;
}
else
{

View File

@@ -42,22 +42,22 @@ class debug_websocket_client implements pts_option_interface
pts_web_socket_client::$debug_mode = true;
$ws_client = new pts_web_socket_client($web_socket_address, $web_socket_port);
$ws_client->send_message('TEST 123');
$ws_client->send_message('BIG TEST SENDDDDDDDDDDDDDDDDDDDDDDDDDDDDD MESSSSSSSSSSSSSSSSSSSSSSSSSAGE');
$ws_client->send_message('1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE END END END 321');
$ws_client->send_message('TEST MESSAGE');
$ws_client->send('TEST 123');
$ws_client->send('BIG TEST SENDDDDDDDDDDDDDDDDDDDDDDDDDDDDD MESSSSSSSSSSSSSSSSSSSSSSSSSAGE');
$ws_client->send('1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE END END END 321');
$ws_client->send('TEST MESSAGE');
while(1)
{
$msg = $ws_client->receive_message();
$msg = $ws_client->receive();
if($msg != null)
{
echo PHP_EOL . 'RECEIVED: ' . $ws_client->receive_message() . PHP_EOL;
echo PHP_EOL . 'RECEIVED: ' . $ws_client->receive() . PHP_EOL;
}
//if(date('s') % 5 == 0)
//{
// $ws_client->send_message(rand(1, getrandmax()));
// $ws_client->send(rand(1, getrandmax()));
//}
}
$ws_client->disconnect();

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, 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
@@ -34,7 +34,8 @@ class default_benchmark implements pts_option_interface
public static function run($r)
{
pts_test_installer::standard_install($r);
pts_test_run_manager::standard_run($r, pts_c::defaults_mode);
$test_run_manager = new pts_test_run_manager(false, 2);
$test_run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, 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
@@ -33,7 +33,8 @@ class default_run implements pts_option_interface
}
public static function run($r)
{
pts_test_run_manager::standard_run($r, pts_c::defaults_mode);
$test_run_manager = new pts_test_run_manager(false, 2);
$test_run_manager->standard_run($r);
}
}

View File

@@ -1,57 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2011 - 2012, Phoronix Media
Copyright (C) 2011 - 2012, 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 detailed_system_info implements pts_option_interface
{
const doc_section = 'System';
const doc_description = 'Display detailed information about the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.';
public static function run($r)
{
pts_client::$display->generic_heading('System Information');
echo 'Hardware:' . PHP_EOL . phodevi::system_hardware(true) . PHP_EOL . PHP_EOL;
echo 'Software:' . PHP_EOL . phodevi::system_software(true) . PHP_EOL . PHP_EOL;
//
// Processor Information
//
$cpu_flags = phodevi_cpu::get_cpu_flags();
echo PHP_EOL . 'PROCESSOR:' . PHP_EOL . PHP_EOL;
echo 'Core Count: ' . phodevi_cpu::cpuinfo_core_count() . PHP_EOL;
echo 'Thread Count: ' . phodevi_cpu::cpuinfo_thread_count() . PHP_EOL;
echo 'Cache Size: ' . phodevi_cpu::cpuinfo_cache_size() . ' KB' . PHP_EOL;
echo 'Instruction Set Extensions: ' . phodevi_cpu::instruction_set_extensions() . PHP_EOL;
echo 'AES Encryption: ' . ($cpu_flags & phodevi_cpu::get_cpu_feature_constant('aes') ? 'YES' : 'NO') . PHP_EOL;
echo 'Energy Performance Bias: ' . ($cpu_flags & phodevi_cpu::get_cpu_feature_constant('epb') ? 'YES' : 'NO') . PHP_EOL;
echo 'Virtualization: ' . (phodevi_cpu::virtualization_technology() ? phodevi_cpu::virtualization_technology() : 'NO') . PHP_EOL;
// Other info
foreach(pts_test_run_manager::pull_test_notes(true) as $test_note_head => $test_note)
{
echo ucwords(str_replace('-', ' ', $test_note_head)) . ': ' . $test_note . PHP_EOL;
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2014, Phoronix Media
Copyright (C) 2008 - 2014, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -34,18 +34,18 @@ class diagnostics implements pts_option_interface
continue;
}
echo $constant . ' = ' . $constant_value . PHP_EOL;
echo pts_client::cli_just_bold($constant) . ' = ' . $constant_value . PHP_EOL;
}
echo PHP_EOL . 'Variables That Can Be Used As Result Identifiers / File Names:' . PHP_EOL;
foreach(pts_client::user_run_save_variables() as $var => $var_value)
{
echo $var . ' = ' . $var_value . PHP_EOL;
echo pts_client::cli_just_bold($var) . ' = ' . $var_value . PHP_EOL;
}
echo PHP_EOL . 'Environmental Variables (accessible via test scripts):' . PHP_EOL;
foreach(pts_client::environmental_variables() as $var => $var_value)
{
echo $var . ' = ' . $var_value . PHP_EOL;
echo pts_client::cli_just_bold($var) . ' = ' . $var_value . PHP_EOL;
}
echo PHP_EOL;
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010 - 2014, Phoronix Media
Copyright (C) 2010 - 2014, Michael Larabel
Copyright (C) 2010 - 2018, Phoronix Media
Copyright (C) 2010 - 2018, 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
@@ -24,25 +24,15 @@ class dump_documentation implements pts_option_interface
{
public static function run($r)
{
if(is_file('/usr/share/php/fpdf/fpdf.php'))
{
include_once('/usr/share/php/fpdf/fpdf.php');
}
else
{
echo PHP_EOL . 'The FPDF library must be installed.' . PHP_EOL . PHP_EOL;
return;
}
$pdf = new pts_pdf_template(pts_title(false), 'Test Client Documentation');
$html_doc = new pts_html_template(pts_title(false), 'Test Client Documentation');
$pdf = new pts_pdf_template(pts_core::program_title(false), 'Test Client Documentation');
$html_doc = new pts_html_template(pts_core::program_title(false), 'Test Client Documentation');
$pdf->AddPage();
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/pts-308x160.png', 69, 85, 73, 38, 'PNG', 'http://www.phoronix-test-suite.com/');
$pdf->Ln(120);
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'http://www.phoronix-test-suite.com/');
$pdf->Ln(15);
$pdf->WriteBigHeaderCenter(pts_title(true));
$pdf->WriteBigHeaderCenter(pts_core::program_title(true));
$pdf->WriteHeaderCenter('User Manual');
//$pdf->WriteText($result_file->get_description());
@@ -50,6 +40,7 @@ class dump_documentation implements pts_option_interface
// Write the test options HTML
$dom = new DOMDocument();
$dom->formatOutput = true;
$html = $dom->createElement('html');
$dom->appendChild($html);
$head = $dom->createElement('head');
@@ -103,7 +94,7 @@ class dump_documentation implements pts_option_interface
$body = $dom->createElement('body');
$html->appendChild($body);
$p = $dom->createElement('p', 'The following list is the modules included with the Phoronix Test Suite that are intended to extend the functionality of pts-core. Some of these options have commands that can be run directly in a similiar manner to the other Phoronix Test Suite user commands. Some modules are just meant to be loaded directly by adding the module name to the LoadModules tag in ~/.phoronix-test-suite/user-config.xml or via the PTS_MODULES environmental variable. A list of available modules is also available by running ');
$p = $dom->createElement('p', 'The following list is the modules included with the Phoronix Test Suite that are intended to extend the functionality of pts-core. Some of these options have commands that can be run directly in a similiar manner to the other Phoronix Test Suite user commands. Some modules are just meant to be loaded directly by adding the module name to the LoadModules tag in ~/.phoronix-test-suite/user-config.xml or via the PTS_MODULES environment variable. A list of available modules is also available by running ');
$em = $dom->createElement('em', 'phoronix-test-suite list-modules.');
$p->appendChild($em);
$phr = $dom->createElement('hr');
@@ -215,10 +206,12 @@ class dump_documentation implements pts_option_interface
$dom->saveHTMLFile(PTS_PATH . 'documentation/stubs/55_virtual_suites.html');
// Load the HTML documentation
$md = new pts_md_template();
foreach(pts_file_io::glob(PTS_PATH . 'documentation/stubs/*_*.html') as $html_file)
{
$pdf->html_to_pdf($html_file);
$html_doc->html_to_html($html_file);
$md->html_to_md($html_file);
}
if(!is_writable(PTS_PATH . 'documentation/'))
@@ -232,6 +225,8 @@ class dump_documentation implements pts_option_interface
$html_doc->Output(PTS_PATH . 'documentation/phoronix-test-suite.html');
echo PHP_EOL . 'Saved To: ' . $pdf_file . PHP_EOL . PHP_EOL;
$md->Output(PTS_PATH . 'documentation/phoronix-test-suite.md');
// Also re-generate the man page
$man_page = '.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "' . PTS_VERSION . '"' . PHP_EOL . '.SH NAME' . PHP_EOL;
$man_page .= 'phoronix-test-suite \- The Phoronix Test Suite is an extensible open-source platform for performing testing and performance evaluation.' . PHP_EOL;
@@ -263,15 +258,15 @@ class dump_documentation implements pts_option_interface
// simple README
$readme = 'Phoronix Test Suite ' . PTS_VERSION . PHP_EOL . 'http://www.phoronix-test-suite.com/' . PHP_EOL . '#####################################' . PHP_EOL . PHP_EOL;
$readme = '# Phoronix Test Suite ' . PTS_VERSION . PHP_EOL . 'http://www.phoronix-test-suite.com/' . PHP_EOL . PHP_EOL;
$readme .= pts_documentation::basic_description() . PHP_EOL . PHP_EOL;
$readme .= pts_file_io::file_get_contents(PTS_PATH . 'documentation/stubs/readme-basics.txt') . PHP_EOL . PHP_EOL;
$readme = wordwrap($readme, 80, PHP_EOL);
file_put_contents(PTS_PATH . 'README', $readme);
file_put_contents(PTS_PATH . 'README.md', $readme);
// Phoromatic Documentation
$pdf = new pts_pdf_template(pts_title(false), 'Phoromatic Documentation');
$html_doc = new pts_html_template(pts_title(false), 'Phoromatic Documentation');
$pdf = new pts_pdf_template(pts_core::program_title(false), 'Phoromatic Documentation');
$html_doc = new pts_html_template(pts_core::program_title(false), 'Phoromatic Documentation');
$pdf->AddPage();
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/pts-308x160.png', 69, 85, 73, 38, 'PNG', 'http://www.phoronix-test-suite.com/');
@@ -280,13 +275,22 @@ class dump_documentation implements pts_option_interface
$pdf->Ln(15);
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/phoromatic-390x56.png', 55, 250, 0, 0, 'PNG', 'http://www.phoronix-test-suite.com/');
//$pdf->Image(PTS_CORE_STATIC_PATH . 'images/phoromatic-390x56.png', 69, 85, 73, 38, 'PNG', 'http://www.phoromatic.com/');
$pdf->WriteBigHeaderCenter(pts_title(true));
$pdf->WriteBigHeaderCenter(pts_core::program_title(true));
$pdf->WriteHeaderCenter('Phoromatic User Manual');
$pdf->html_to_pdf(PTS_PATH . 'documentation/phoromatic.html');
$pdf_file = PTS_PATH . 'documentation/phoromatic.pdf';
$pdf->Output($pdf_file);
echo PHP_EOL . 'Saved To: ' . $pdf_file . PHP_EOL . PHP_EOL;
$md = new pts_md_template();
$md->html_to_md(PTS_PATH . 'documentation/phoromatic.html');
$md->Output(PTS_PATH . 'documentation/phoromatic.md');
$md = new pts_md_template();
$md->html_to_md(PTS_PATH . 'documentation/phoronix-test-suite-windows.html');
$md->Output(PTS_PATH . 'documentation/phoronix-test-suite-window.md');
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2011, Phoronix Media
Copyright (C) 2009 - 2011, Michael Larabel
Copyright (C) 2017, Phoronix Media
Copyright (C) 2017, 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
@@ -20,37 +20,30 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
class sys_v5 implements phodevi_sensor
class dump_file_info implements pts_option_interface
{
public static function get_type()
public static function run($r)
{
return 'sys';
}
public static function get_sensor()
{
return 'v5-voltage';
}
public static function get_unit()
{
return 'Volts';
}
public static function support_check()
{
$test = self::read_sensor();
return is_numeric($test) && $test != -1;
}
public static function read_sensor()
{
if(phodevi::is_linux())
pts_client::$display->generic_heading('File Information');
if(empty($r))
{
$sensor = phodevi_linux_parser::read_sensors(array('V5', '+5V'));
echo PHP_EOL . 'No files passed.' . PHP_EOL;
}
else
foreach($r as $f)
{
$sensor = -1;
}
if(!is_file($f))
{
echo PHP_EOL . 'Not a file: ' . $f . PHP_EOL;
}
else
{
echo PHP_EOL . 'FILE: ' . basename($f) . PHP_EOL;
echo 'MD5: ' . md5_file($f) . PHP_EOL;
echo 'SHA256: ' . hash_file('sha256', $f) . PHP_EOL;
echo 'SIZE: ' . filesize($f) . PHP_EOL;
}
return $sensor;
}
}
}

View File

@@ -0,0 +1,53 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2018, Phoronix Media
Copyright (C) 2018, 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 dump_phodevi_properties implements pts_option_interface
{
public static function run($r)
{
$properties = phodevi::read_all_properties();
foreach($properties as $component => $component_properties)
{
echo strtoupper($component) . PHP_EOL;
foreach($component_properties as $property => $value)
{
echo ' ' . $property . ' = ';
if(is_array($value))
{
var_dump($value);
/* echo PHP_EOL;
foreach($value as $i => $j)
echo ' ' . $i . ' = ' . $j . PHP_EOL; */
}
else
{
echo $value . PHP_EOL;
}
}
echo PHP_EOL;
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2018, Phoronix Media
Copyright (C) 2009 - 2018, 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
@@ -24,20 +24,8 @@ class dump_possible_options implements pts_option_interface
{
public static function run($r)
{
$options = array();
foreach(pts_file_io::glob(PTS_COMMAND_PATH . '*.php') as $option_php)
{
$name = str_replace('_', '-', basename($option_php, '.php'));
if(!in_array(pts_strings::first_in_string($name, '-'), array('dump', 'debug', 'task')))
{
array_push($options, $name);
}
}
$is_true = isset($r[0]) && $r[0] == 'TRUE';
echo implode($is_true ? ' ' : PHP_EOL, $options) . ($is_true ? null : PHP_EOL);
echo implode($is_true ? ' ' : PHP_EOL, pts_client::possible_sub_commands()) . ($is_true ? null : PHP_EOL);
}
}

View File

@@ -0,0 +1,80 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2017, Phoronix Media
Copyright (C) 2017, 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 dump_suites_to_git implements pts_option_interface
{
const doc_section = 'OpenBenchmarking.org';
const doc_description = 'This option will create a Git repository of OpenBenchmarking.org test suites.';
public static function run($r)
{
pts_client::$display->generic_heading('OpenBenchmarking.org Tests To Suites');
$path_to_git = getenv('TEST_SUITES_GIT_PATH') . '/';
if(!pts_client::executable_in_path('git'))
{
echo PHP_EOL . 'git was not found on the system.' . PHP_EOL . PHP_EOL;
return false;
}
if(empty($path_to_git) || !is_dir($path_to_git) || !is_writable($path_to_git))
{
echo PHP_EOL . 'TEST_SUITES_GIT_PATH must be set or the set directory is not writable/present.' . PHP_EOL . PHP_EOL;
return false;
}
shell_exec('cd ' . $path_to_git . ' && git pull');
foreach(pts_openbenchmarking::linked_repositories() as $repo)
{
if($repo == 'local')
{
// Skip local since it's a fake repository
continue;
}
if(!is_dir($path_to_git . $repo))
{
pts_file_io::mkdir($path_to_git . $repo);
}
$repo_index = pts_openbenchmarking::read_repository_index($repo);
$changes = pts_openbenchmarking_client::fetch_repository_changelog_full($repo);
foreach($changes['suites'] as $suite_identifier => $d)
{
foreach($d['changes'] as $suite_version => $dd)
{
$suite = $repo . '/' . $suite_identifier . '-' . $suite_version; // . ' ' . $dd['commit_description'] . ' ' . date('d F Y', $dd['last_updated']) . PHP_EOL;
if(is_dir($path_to_git . $suite))
continue;
pts_openbenchmarking::download_test_suite($suite, $path_to_git);
if(is_dir($path_to_git . $suite))
{
$test_suite = new pts_test_suite($suite);
echo 'git commit -m "' . $suite . ': ' . $dd['commit_description'] . '" --author="' . $test_suite->get_maintainer() . ' <no-reply@openbenchmarking.org>" --date="' . date(DATE_RFC2822, $dd['last_updated']) . '" ' . $suite . PHP_EOL;
shell_exec('cd ' . $path_to_git . ' && git add ' . $suite . ' && git commit -m "' . $suite . ': ' . $dd['commit_description'] . '" --author="' . $test_suite->get_maintainer() . ' <no-reply@openbenchmarking.org>" --date="' . date(DATE_RFC2822, $dd['last_updated']) . '" ' . $suite);
}
}
}
}
}
}
?>

View File

@@ -0,0 +1,81 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2017, Phoronix Media
Copyright (C) 2017, 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 dump_tests_to_git implements pts_option_interface
{
const doc_section = 'OpenBenchmarking.org';
const doc_description = 'This option will create a Git repository of OpenBenchmarking.org test profiles.';
public static function run($r)
{
pts_client::$display->generic_heading('OpenBenchmarking.org Tests To Git');
$path_to_git = getenv('TEST_PROFILES_GIT_PATH') . '/';
if(!pts_client::executable_in_path('git'))
{
echo PHP_EOL . 'git was not found on the system.' . PHP_EOL . PHP_EOL;
return false;
}
if(empty($path_to_git) || !is_dir($path_to_git) || !is_writable($path_to_git))
{
echo PHP_EOL . 'TEST_PROFILES_GIT_PATH must be set or the set directory is not writable/present.' . PHP_EOL . PHP_EOL;
return false;
}
shell_exec('cd ' . $path_to_git . ' && git pull');
foreach(pts_openbenchmarking::linked_repositories() as $repo)
{
if($repo == 'local')
{
// Skip local since it's a fake repository
continue;
}
if(!is_dir($path_to_git . $repo))
{
pts_file_io::mkdir($path_to_git . $repo);
}
$repo_index = pts_openbenchmarking::read_repository_index($repo);
$changes = pts_openbenchmarking_client::fetch_repository_changelog_full($repo);
foreach($changes['tests'] as $test_identifier => $d)
{
foreach($d['changes'] as $test_version => $dd)
{
$test = $repo . '/' . $test_identifier . '-' . $test_version; // . ' ' . $dd['commit_description'] . ' ' . date('d F Y', $dd['last_updated']) . PHP_EOL;
if(is_dir($path_to_git . $test))
continue;
pts_openbenchmarking::download_test_profile($test, $path_to_git);
if(is_dir($path_to_git . $test))
{
$test_profile = new pts_test_profile($test);
$maintainer = $test_profile->get_maintainer() != null ? $test_profile->get_maintainer() : 'Phoronix Test Suite';
echo 'git commit -m "' . $test . ': ' . $dd['commit_description'] . '" --author="' . $maintainer . ' <no-reply@openbenchmarking.org>" --date="' . date(DATE_RFC2822, $dd['last_updated']) . '" ' . $test . PHP_EOL;
shell_exec('cd ' . $path_to_git . ' && git add ' . $test . ' && git commit -m "' . $test . ': ' . $dd['commit_description'] . '" --author="' . $maintainer . ' <no-reply@openbenchmarking.org>" --date="' . date(DATE_RFC2822, $dd['last_updated']) . '" ' . $test);
}
}
}
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014, Phoronix Media
Copyright (C) 2014, Michael Larabel
Copyright (C) 2014 - 2018, Phoronix Media
Copyright (C) 2014 - 2018, 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
@@ -31,37 +31,24 @@ class edit_result_file implements pts_option_interface
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function invalid_command($passed_args = null)
{
pts_tests::recently_saved_results();
}
public static function run($r)
{
$result_file = new pts_result_file($r[0]);
$result_title = $result_file->get_title();
echo PHP_EOL . 'Current Result Title: ' . $result_title . PHP_EOL;
$new_title = pts_user_io::prompt_user_input('Enter New Title');
if(!empty($new_title))
{
$result_title = $new_title;
$result_file->set_title($new_title);
}
$result_description = $result_file->get_description();
echo PHP_EOL . 'Current Result Description: ' . $result_description . PHP_EOL;
$new_description = pts_user_io::prompt_user_input('Enter New Description');
if(!empty($new_description))
{
$result_description = $new_description;
$result_file->set_description($new_description);
}
$result_file_writer = new pts_result_file_writer();
$result_file_writer->add_result_file_meta_data($result_file, null, $new_title, $new_description);
$result_file_writer->add_system_information_from_result_file($result_file);
$result_file_writer->add_results_from_result_file($result_file);
pts_client::save_test_result($r[0] . '/composite.xml', $result_file_writer->get_xml());
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $r[0] . '/index.html');
}
}

View File

@@ -0,0 +1,49 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014 - 2017, Phoronix Media
Copyright (C) 2014 - 2017, 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 enterprise_setup implements pts_option_interface
{
const doc_section = 'User Configuration';
const doc_description = 'This option can be run by enterprise users immediately after package installation or as part of an in-house setup script. Running this command will ensure the phoronix-test-suite program is never interrupted on new runs to accept user agreement changes and defaults the anonymous usage reporting to being disabled and other conservative defaults.';
public static function run($r)
{
$force_options = array(
'PhoronixTestSuite/Options/OpenBenchmarking/AnonymousUsageReporting' => 'FALSE'
);
if(pts_network::internet_support_available() == false)
{
$force_options['PhoronixTestSuite/Options/Networking/NoInternetCommunication'] = 'TRUE';
}
pts_config::user_config_generate($force_options);
$pso = pts_storage_object::recover_from_file(PTS_CORE_STORAGE);
$pso->add_object('user_agreement_cs', 'enterprise-agree');
$pso->save_to_file(PTS_CORE_STORAGE);
echo PHP_EOL . 'Enterprise setup tasks executed.' . PHP_EOL . PHP_EOL;
}
}
?>

View File

@@ -0,0 +1,63 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2017, Phoronix Media
Copyright (C) 2017, 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 estimate_run_time implements pts_option_interface
{
const doc_section = 'Testing';
const doc_description = 'This option will provide estimates for test run-time / length.';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'identifier_to_object'))
);
}
public static function run($args)
{
echo PHP_EOL;
if($args[0] == 'pts/all' || empty($args))
{
$args = pts_openbenchmarking::available_tests(false);
}
$tests = array();
$total_time = 0;
$test_count = 0;
foreach($args as $arg)
{
foreach(pts_types::identifiers_to_test_profile_objects($arg) as $t)
{
$tests[] = array($t->get_identifier(), pts_strings::format_time($t->get_estimated_run_time()));
$total_time += $t->get_estimated_run_time();
$test_count++;
}
}
if($test_count > 1 && $total_time > 0)
{
echo pts_user_io::display_text_table($tests);
echo PHP_EOL . PHP_EOL . 'TOTAL TIME ESTIMATE: ' . pts_strings::format_time($total_time) . PHP_EOL . PHP_EOL;
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2013, Phoronix Media
Copyright (C) 2009 - 2013, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, 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
@@ -33,9 +33,7 @@ class extract_from_result_file implements pts_option_interface
}
public static function run($args)
{
$result = $args[0];
$result_file = new pts_result_file($result);
$result_file = new pts_result_file($args[0]);
$result_file_identifiers = $result_file->get_system_identifiers();
if(count($result_file_identifiers) < 2)
@@ -45,12 +43,8 @@ class extract_from_result_file implements pts_option_interface
}
$extract_identifiers = pts_strings::comma_explode(pts_user_io::prompt_text_menu('Select the test run(s) to extract', $result_file_identifiers, true));
$extract_selects = array();
foreach($extract_identifiers as $extract_identifier)
{
array_push($extract_selects, new pts_result_merge_select($result, $extract_identifier));
}
$remove_identifiers = array_diff($result_file_identifiers, $extract_identifiers);
$result_file->remove_run($remove_identifiers);
do
{
@@ -58,10 +52,9 @@ class extract_from_result_file implements pts_option_interface
$extract_to = pts_user_io::read_user_input();
$extract_to = pts_test_run_manager::clean_save_name($extract_to);
}
while(empty($extract_to) || pts_result_file::is_test_result_file($extract_to));
while(empty($extract_to));
$extract_result = call_user_func_array(array('pts_merge', 'merge_test_results'), $extract_selects);
pts_client::save_test_result($extract_to . '/composite.xml', $extract_result);
pts_client::save_test_result($extract_to . '/composite.xml', $result_file->get_xml());
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $extract_to . '/index.html');
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2011, Phoronix Media
Copyright (C) 2009 - 2011, Michael Larabel
Copyright (C) 2009 - 2018, Phoronix Media
Copyright (C) 2009 - 2018, 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
@@ -39,9 +39,14 @@ class finish_run implements pts_option_interface
$system_identifiers = $result_file->get_system_identifiers();
$test_positions = array();
$pos = 0;
foreach($result_file->get_result_objects() as $result_object)
foreach($result_file->get_result_objects() as $pos => $result_object)
{
// Don't load null test profile identifier tests into the run queue
if($result_object->test_profile->get_identifier() == null)
{
continue;
}
$this_result_object_identifiers = $result_object->test_result_buffer->get_identifiers();
foreach($system_identifiers as $system_identifier)
@@ -53,13 +58,10 @@ class finish_run implements pts_option_interface
$test_positions[$system_identifier] = array();
}
array_push($test_positions[$system_identifier], $pos);
$test_positions[$system_identifier][] = $pos;
}
}
$pos++;
}
$incomplete_identifiers = array_keys($test_positions);
if(count($incomplete_identifiers) == 0)
@@ -69,15 +71,14 @@ class finish_run implements pts_option_interface
}
$selected = pts_user_io::prompt_text_menu('Select which incomplete test run you would like to finish', $incomplete_identifiers);
$test_run_manager = new pts_test_run_manager();
// Now run it
if(pts_test_run_manager::initial_checks($args[0]) == false)
if($test_run_manager->initial_checks($args[0]) == false)
{
return false;
}
$test_run_manager = new pts_test_run_manager(pts_c::is_recovering);
// Load the tests to run
if($test_run_manager->load_result_file_to_run($save_name, $selected, $result_file, $test_positions[$selected]) == false)
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2014, Phoronix Media
Copyright (C) 2009 - 2014, Michael Larabel
Copyright (C) 2009 - 2018, Phoronix Media
Copyright (C) 2009 - 2018, 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
@@ -22,7 +22,7 @@
class force_install implements pts_option_interface
{
const doc_section = 'Asset Creation';
const doc_section = 'Test Installation';
const doc_description = 'This option will force the installation (or re-installation) of a test or suite. The arguments and process is similar to the install option but even if the test is installed, the entire installation process will automatically be executed. This option is generally used when debugging a test installation problem.';
public static function argument_checks()
@@ -33,11 +33,7 @@ class force_install implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::force_install);
}
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
pts_test_installer::standard_install($r, true);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2012 - 2014, Phoronix Media
Copyright (C) 2012 - 2014, Michael Larabel
Copyright (C) 2012 - 2018, Phoronix Media
Copyright (C) 2012 - 2018, 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
@@ -23,7 +23,7 @@
class gui implements pts_option_interface
{
const doc_section = 'Web / GUI Support';
const doc_description = 'Launch the Phoronix Test Suite HTML5 web user-interface in the local GUI mode (no remote web support) and attempt to auto-launch the web-browser.';
const doc_description = 'Launch the Phoronix Test Suite HTML5 web user-interface in the local GUI mode (no remote web support) and attempt to auto-launch the web-browser. THIS FEATURE IS CURRENTLY EXPERIMENTAL AND NO LONGER ACTIVE DEVELOPMENT. See Phoronix Test Suite Phoromatic as an alternative web UI approach.';
public static function command_aliases()
{
@@ -39,6 +39,10 @@ class gui implements pts_option_interface
return false;
}
echo pts_client::cli_just_bold(PHP_EOL . 'THE PHORONIX TEST SUITE WEB GUI IS CURRENTLY DEPRECATED AND UNMAINTAINED. NO FUTURE IMPROVEMENTS TO THIS GUI ARE PLANNED AT THIS TIME UNLESS THERE IS ENTERPRISE SUPPORT INTEREST.' . PHP_EOL . PHP_EOL . 'THOSE WANTING TO MAKE USE OF A PHORONIX TEST SUITE USER-INTERFACE ARE ENCOURAGED TO USE THE PHOROMATIC [https://www.phoromatic.com/] COMPONENT OF THE PHORONIX TEST SUITE. THERE IS ALSO `phoronix-test-suite interactive` and `phoronix-test-suite-shell` FOR A SELF-GUIDED PHORONIX TEST SUITE EXPERIENCE.' . PHP_EOL . PHP_EOL);
echo 'Continuing in 10 seconds...' . PHP_EOL;
sleep(10);
$web_port = 0;
$blocked_ports = array(2049, 3659, 4045, 6000);
@@ -104,14 +108,15 @@ class gui implements pts_option_interface
// Shutdown / Kill Servers (Might want to find a cleaner way)
$server_launcher .= PHP_EOL . 'taskkill /f /im php.exe';
// For now lets clean this up.
$server_launcher .= PHP_EOL . 'del /f ' . PTS_USER_PATH . 'run*' . PHP_EOL;
$server_launcher .= PHP_EOL . 'del /f ' . getenv('PTS_EXT_LAUNCH_SCRIPT_DIR') . 'run*' . PHP_EOL;
$server_launcher .= 'exit /B' . PHP_EOL . PHP_EOL;
// HTTP Server Setup
$server_launcher .= ':run_local_server' . PHP_EOL;
if(strpos(getenv('PHP_BIN'), 'hhvm'))
{
$server_launcher .= 'cd ' . PTS_CORE_PATH . 'web-interface\\ && ' . getenv('PHP_BIN') . ' --config ' . PTS_CORE_PATH . 'static\\hhvm-server.hdf -m server -vServer.Port=' . $web_port . ' -vServer.IP=' . $server_ip . ' -vServer.SourceRoot=' . PTS_CORE_PATH . 'web-interface\\' . ' &' . PHP_EOL;
echo PHP_EOL . 'Unfortunately, the HHVM built-in web server has abandoned upstream. Users will need to use the PHP binary or other alternatives.' . PHP_EOL . PHP_EOL;
return false;
}
else
{
@@ -131,20 +136,22 @@ class gui implements pts_option_interface
}
else
{
$script_path = PTS_USER_PATH . 'web-server-launcher';
$script_path = getenv('PTS_EXT_LAUNCH_SCRIPT_DIR') . '/web-server-launcher';
pts_file_io::unlink($script_path);
$server_launcher = '#!/bin/sh' . PHP_EOL;
// WebSocket Server Setup
$server_launcher .= 'export PTS_WEBSOCKET_PORT=' . $web_socket_port . PHP_EOL;
$server_launcher .= 'export PTS_WEBSOCKET_SERVER=GUI' . PHP_EOL;
$server_launcher .= 'cd ' . getenv('PTS_DIR') . ' && PTS_MODE="CLIENT" ' . getenv('PHP_BIN') . ' pts-core/phoronix-test-suite.php start-ws-server &' . PHP_EOL;
$server_launcher .= 'websocket_server_pid=$!'. PHP_EOL;
// HTTP Server Setup
if(strpos(getenv('PHP_BIN'), 'hhvm'))
{
$server_launcher .= 'cd ' . PTS_CORE_PATH . 'web-interface/ && ' . getenv('PHP_BIN') . ' --config ' . PTS_CORE_PATH . 'static/hhvm-server.hdf -m server -vServer.Port=' . $web_port . ' -vServer.IP=' . $server_ip . ' -vServer.SourceRoot=' . PTS_CORE_PATH . 'web-interface/' . ' &' . PHP_EOL;
echo PHP_EOL . 'Unfortunately, the HHVM built-in web server has abandoned upstream. Users will need to use the PHP binary or other alternatives.' . PHP_EOL . PHP_EOL;
return false;
}
else
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010 - 2011, Phoronix Media
Copyright (C) 2010 - 2011, Michael Larabel
Copyright (C) 2010 - 2017, Phoronix Media
Copyright (C) 2010 - 2017, 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
@@ -23,11 +23,11 @@
class help implements pts_option_interface
{
const doc_section = 'Other';
const doc_description = 'This option will display the list of available Phoronix Test Suite commands.';
const doc_description = 'This option will display a list of available Phoronix Test Suite commands and possible parameter types.';
public static function run($r)
{
echo PHP_EOL . pts_title(true) . PHP_EOL . PHP_EOL;
echo PHP_EOL . pts_client::cli_colored_text(pts_core::program_title(true), 'green', true) . PHP_EOL . PHP_EOL;
echo pts_documentation::basic_description() . PHP_EOL . PHP_EOL . 'View the included PDF / HTML documentation or visit http://www.phoronix-test-suite.com/ for full details.' . PHP_EOL;
$options = pts_documentation::client_commands_array();
@@ -38,13 +38,15 @@ class help implements pts_option_interface
continue;
}
echo PHP_EOL . strtoupper($section) . PHP_EOL . PHP_EOL;
echo PHP_EOL . pts_client::cli_just_bold(strtoupper($section)) . PHP_EOL . PHP_EOL;
sort($contents);
$tabled = array();
foreach($contents as &$option)
{
echo ' ' . trim($option[0] . ' ' . implode(' ', $option[1])) . PHP_EOL;
$tabled[] = array($option[0], pts_client::cli_colored_text(implode(' ', $option[1]), 'gray'));
}
echo pts_user_io::display_text_table($tabled, ' ') . PHP_EOL;
}
echo PHP_EOL;
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2012, Phoronix Media
Copyright (C) 2008 - 2012, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -28,123 +28,224 @@ class info implements pts_option_interface
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'identifier_to_object'), 'object')
new pts_argument_check(0, array('pts_types', 'identifier_to_object'))
);
}
public static function run($args)
{
echo PHP_EOL;
if($args['object'] instanceof pts_test_suite)
if($args[0] == 'pts/all')
{
pts_client::$display->generic_heading($args['object']->get_title());
echo 'Run Identifier: ' . $args['object']->get_identifier() . PHP_EOL;
echo 'Suite Version: ' . $args['object']->get_version() . PHP_EOL;
echo 'Maintainer: ' . $args['object']->get_maintainer() . PHP_EOL;
echo 'Suite Type: ' . $args['object']->get_suite_type() . PHP_EOL;
echo 'Unique Tests: ' . $args['object']->get_unique_test_count() . PHP_EOL;
echo 'Suite Description: ' . $args['object']->get_description() . PHP_EOL;
echo PHP_EOL;
echo $args['object']->pts_format_contained_tests_string();
echo PHP_EOL;
$args = pts_openbenchmarking::available_tests(false);
}
else if($args['object'] instanceof pts_test_profile)
foreach($args as $arg)
{
$test_title = $args['object']->get_title();
$test_version = $args['object']->get_app_version();
if(!empty($test_version))
$o = pts_types::identifier_to_object($arg);
if($o instanceof pts_test_suite)
{
$test_title .= ' ' . $test_version;
}
pts_client::$display->generic_heading($test_title);
echo 'Run Identifier: ' . $args['object']->get_identifier() . PHP_EOL;
echo 'Profile Version: ' . $args['object']->get_test_profile_version() . PHP_EOL;
echo 'Maintainer: ' . $args['object']->get_maintainer() . PHP_EOL;
echo 'Test Type: ' . $args['object']->get_test_hardware_type() . PHP_EOL;
echo 'Software Type: ' . $args['object']->get_test_software_type() . PHP_EOL;
echo 'License Type: ' . $args['object']->get_license() . PHP_EOL;
echo 'Test Status: ' . $args['object']->get_status() . PHP_EOL;
echo 'Project Web-Site: ' . $args['object']->get_project_url() . PHP_EOL;
if($args['object']->get_estimated_run_time() > 1)
{
echo 'Estimated Run-Time: ' . $args['object']->get_estimated_run_time() . ' Seconds' . PHP_EOL;
}
$download_size = $args['object']->get_download_size();
if(!empty($download_size))
{
echo 'Download Size: ' . $download_size . ' MB' . PHP_EOL;
}
$environment_size = $args['object']->get_environment_size();
if(!empty($environment_size))
{
echo 'Environment Size: ' . $environment_size . ' MB' . PHP_EOL;
}
echo PHP_EOL . 'Description: ' . $args['object']->get_description() . PHP_EOL;
if($args['object']->test_installation != false)
{
$last_run = $args['object']->test_installation->get_last_run_date();
$last_run = $last_run == '0000-00-00' ? 'Never' : $last_run;
$avg_time = $args['object']->test_installation->get_average_run_time();
$avg_time = !empty($avg_time) ? pts_strings::format_time($avg_time, 'SECONDS') : 'N/A';
$latest_time = $args['object']->test_installation->get_latest_run_time();
$latest_time = !empty($latest_time) ? pts_strings::format_time($latest_time, 'SECONDS') : 'N/A';
echo PHP_EOL . 'Test Installed: Yes' . PHP_EOL;
echo 'Last Run: ' . $last_run . PHP_EOL;
if($last_run != 'Never')
pts_client::$display->generic_heading($o->get_title());
echo pts_client::cli_just_bold('Suite Description: ') . ' ' . $o->get_description() . PHP_EOL . PHP_EOL;
$table = array();
$table[] = array(pts_client::cli_just_bold('Run Identifier: '), $o->get_identifier());
$table[] = array(pts_client::cli_just_bold('Suite Version: '), $o->get_version());
$table[] = array(pts_client::cli_just_bold('Maintainer: '), $o->get_maintainer());
$table[] = array(pts_client::cli_just_bold('Suite Type: '), $o->get_suite_type());
$table[] = array(pts_client::cli_just_bold('Unique Tests: '), $o->get_unique_test_count());
$table[] = array(pts_client::cli_just_bold('Contained Tests: '));
foreach($o->get_contained_test_result_objects() as $result_obj)
{
if($args['object']->test_installation->get_run_count() > 1)
$table[] = array(pts_client::cli_just_bold(null), $result_obj->test_profile->get_title() . ' ', $result_obj->get_arguments_description());
}
echo pts_user_io::display_text_table($table) . PHP_EOL;
}
else if($o instanceof pts_test_profile)
{
$test_title = $o->get_title();
$test_version = $o->get_app_version();
if(!empty($test_version))
{
$test_title .= ' ' . $test_version;
}
pts_client::$display->generic_heading($test_title);
if($o->get_license() == 'Retail' || $o->get_license() == 'Restricted')
{
echo pts_client::cli_just_bold(strtoupper('NOTE: This test profile is marked \'' . $o->get_license() . '\' and may have issues running without third-party/commercial dependencies.')) . PHP_EOL . PHP_EOL;
}
if($o->get_status() != 'Verified')
{
echo pts_client::cli_just_bold(strtoupper('NOTE: This test profile is marked \'' . $o->get_status() . '\' and may have known issues with test installation or execution.')) . PHP_EOL . PHP_EOL;
}
$table = array();
$table[] = array(pts_client::cli_just_bold('Run Identifier: '), $o->get_identifier());
$table[] = array(pts_client::cli_just_bold('Profile Version: '), $o->get_test_profile_version());
$table[] = array(pts_client::cli_just_bold('Maintainer: '), $o->get_maintainer());
$table[] = array(pts_client::cli_just_bold('Test Type: '), $o->get_test_hardware_type());
$table[] = array(pts_client::cli_just_bold('Software Type: '), $o->get_test_software_type());
$table[] = array(pts_client::cli_just_bold('License Type: '), $o->get_license());
$table[] = array(pts_client::cli_just_bold('Test Status: '), $o->get_status());
$table[] = array(pts_client::cli_just_bold('Supported Platforms: '), implode(', ', $o->get_supported_platforms()));
$table[] = array(pts_client::cli_just_bold('Project Web-Site: '), $o->get_project_url());
if($o->get_estimated_run_time() > 1)
{
$table[] = array(pts_client::cli_just_bold('Estimated Run-Time: '), $o->get_estimated_run_time() . ' Seconds');
}
$download_size = $o->get_download_size();
if(!empty($download_size))
{
$table[] = array(pts_client::cli_just_bold('Download Size: '), $download_size . ' MB');
}
$environment_size = $o->get_environment_size();
if(!empty($environment_size))
{
$table[] = array(pts_client::cli_just_bold('Environment Size: '), $environment_size . ' MB');
}
echo pts_user_io::display_text_table($table);
echo PHP_EOL . PHP_EOL . pts_client::cli_just_bold('Description: ') . $o->get_description() . PHP_EOL;
if(stripos($o->get_identifier(0), 'local/') === false)
{
echo PHP_EOL . PHP_EOL . pts_client::cli_just_bold('OpenBenchmarking.org Test Profile: ') . 'https://openbenchmarking.org/test/' . $o->get_identifier() . PHP_EOL . PHP_EOL;
}
foreach(array('Pre-Install Message' => $o->get_pre_install_message(), 'Post-Install Message' => $o->get_post_install_message(), 'Pre-Run Message' => $o->get_pre_run_message(), 'Post-Run Message' => $o->get_post_run_message()) as $msg_type => $msg)
{
if($msg != null)
{
echo 'Average Run-Time: ' . $avg_time . PHP_EOL;
echo PHP_EOL . pts_client::cli_just_bold($msg_type . ': ') . $msg . PHP_EOL. PHP_EOL;
}
}
if($o->test_installation != false)
{
$last_run = $o->test_installation->get_last_run_date();
$last_run = $last_run == '0000-00-00' ? 'Never' : $last_run;
$avg_time = $o->test_installation->get_average_run_time();
$avg_time = !empty($avg_time) ? pts_strings::format_time($avg_time, 'SECONDS') : 'N/A';
$latest_time = $o->test_installation->get_latest_run_time();
$latest_time = !empty($latest_time) ? pts_strings::format_time($latest_time, 'SECONDS') : 'N/A';
$install_time = ceil($o->test_installation->get_latest_install_time());
$install_time = !empty($install_time) ? pts_strings::format_time($install_time, 'SECONDS') : 'N/A';
$table = array();
$table[] = array(pts_client::cli_just_bold('Test Installed: '), 'Yes');
$table[] = array(pts_client::cli_just_bold('Last Run: '), $last_run);
$table[] = array(pts_client::cli_just_bold('Install Time: '), $install_time);
if($o->test_installation->get_install_size() > 0)
{
$table[] = array(pts_client::cli_just_bold('Install Size: '), $o->test_installation->get_install_size() . ' Bytes');
}
echo 'Latest Run-Time: ' . $latest_time . PHP_EOL;
echo 'Times Run: ' . $args['object']->test_installation->get_run_count() . PHP_EOL;
if($last_run != 'Never')
{
if($o->test_installation->get_run_count() > 1)
{
$table[] = array(pts_client::cli_just_bold('Average Run-Time: '), $avg_time);
}
$table[] = array(pts_client::cli_just_bold('Latest Run-Time: '), $latest_time);
$table[] = array(pts_client::cli_just_bold('Times Run: '), $o->test_installation->get_run_count());
}
echo pts_user_io::display_text_table($table) . PHP_EOL;
}
else
{
echo PHP_EOL . pts_client::cli_just_bold('Test Installed: ') . 'No' . PHP_EOL;
}
$dependencies = $o->get_external_dependencies();
if(!empty($dependencies) && !empty($dependencies[0]))
{
echo PHP_EOL . pts_client::cli_just_bold('Software Dependencies:') . PHP_EOL;
echo pts_user_io::display_text_list($o->get_dependency_names());
}
echo PHP_EOL;
// OpenBenchmarking.org Change-Log
if(stripos($o->get_identifier(), 'local/') === false)
{
$change_log = pts_openbenchmarking_client::fetch_repository_test_profile_changelog($o->get_identifier(false));
if(is_array($change_log) && isset($change_log['tests'][$o->get_identifier_base_name()]['changes']))
{
echo pts_client::cli_just_bold('OpenBenchmarking.org Change History') . PHP_EOL;
$change_log = $change_log['tests'][$o->get_identifier_base_name()]['changes'];
foreach($change_log as $version => $data)
{
echo pts_client::cli_colored_text('v' . $version . ' - ' . date('j F Y', $data['last_updated']), 'green', true) . PHP_EOL;
echo $data['commit_description'] . PHP_EOL;
}
}
}
// Recent Test Results With This Test
$o_identifier = $o->get_identifier(false);
$table = array();
foreach(pts_client::saved_test_results() as $saved_results_identifier)
{
$result_file = new pts_result_file($saved_results_identifier);
foreach($result_file->get_result_objects() as $result_object)
{
if($result_object->test_profile->get_identifier(false) == $o_identifier)
{
$table[] = array(pts_client::cli_just_bold($result_file->get_identifier()), $result_file->get_title());
break;
}
}
}
if(!empty($table))
{
echo PHP_EOL . pts_client::cli_just_bold('Results Containing This Test') . PHP_EOL;
echo pts_user_io::display_text_table($table);
}
}
else
else if($o instanceof pts_result_file)
{
echo PHP_EOL . 'Test Installed: No' . PHP_EOL;
}
echo pts_client::cli_just_bold('Title: ') . $o->get_title() . PHP_EOL . pts_client::cli_just_bold('Identifier: ') . $o->get_identifier() . PHP_EOL;
echo PHP_EOL . pts_client::cli_just_bold('Test Result Identifiers:') . PHP_EOL;
echo pts_user_io::display_text_list($o->get_system_identifiers());
$dependencies = $args['object']->get_dependencies();
if(!empty($dependencies) && !empty($dependencies[0]))
{
echo PHP_EOL . 'Software Dependencies:' . PHP_EOL;
echo pts_user_io::display_text_list($args['object']->get_dependency_names());
}
echo PHP_EOL;
}
else if($args['object'] instanceof pts_result_file)
{
echo 'Title: ' . $args['object']->get_title() . PHP_EOL . 'Identifier: ' . $args['object']->get_identifier() . PHP_EOL;
echo PHP_EOL . 'Test Result Identifiers:' . PHP_EOL;
echo pts_user_io::display_text_list($args['object']->get_system_identifiers());
$test_titles = array();
foreach($o->get_result_objects() as $result_object)
{
if($result_object->test_profile->get_display_format() == 'BAR_GRAPH')
{
$test_titles[] = $result_object->test_profile->get_title();
}
}
if(count(($tests = $args['object']->get_unique_test_titles())) > 0)
{
echo PHP_EOL . 'Contained Tests:' . PHP_EOL;
echo pts_user_io::display_text_list($tests);
if(count($test_titles) > 0)
{
echo PHP_EOL . pts_client::cli_just_bold('Contained Tests:') . PHP_EOL;
echo pts_user_io::display_text_list(array_unique($test_titles));
}
echo PHP_EOL;
}
echo PHP_EOL;
}
else if($args['object'] instanceof pts_virtual_test_suite)
{
pts_client::$display->generic_heading($args['object']->get_title());
echo 'Virtual Suite Description: ' . $args['object']->get_description() . PHP_EOL . PHP_EOL;
else if($o instanceof pts_virtual_test_suite)
{
pts_client::$display->generic_heading($o->get_title());
echo pts_client::cli_just_bold('Virtual Suite Description: ') . $o->get_description() . PHP_EOL . PHP_EOL;
foreach($args['object']->get_contained_test_profiles() as $test_profile)
{
echo '- ' . $test_profile . PHP_EOL;
foreach($o->get_contained_test_profiles() as $test_profile)
{
echo '- ' . $test_profile . PHP_EOL;
}
echo PHP_EOL;
}
echo PHP_EOL;
}
}
}

View File

@@ -0,0 +1,49 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2018, Phoronix Media
Copyright (C) 2018, 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 inspect_test_profile implements pts_option_interface
{
const doc_section = 'Asset Creation';
const doc_description = 'This option can be used for inspecting a Phoronix Test Suite test profile with providing inside details on test profiles for debugging / evaluation / learning purposes.';
public static function run($r)
{
$types = pts_validation::process_xsd_types();
foreach(pts_types::identifiers_to_test_profile_objects($r, true, true) as $test_profile)
{
pts_client::$display->generic_heading($test_profile . ' - test-definition.xml');
pts_validation::process_xsd_display_chart(pts_openbenchmarking::openbenchmarking_standards_path() . 'schemas/test-profile.xsd', $test_profile, $types);
pts_client::$display->generic_heading($test_profile . ' - downloads.xml');
pts_validation::process_xsd_display_chart(pts_openbenchmarking::openbenchmarking_standards_path() . 'schemas/test-profile-downloads.xsd', $test_profile, $types);
pts_client::$display->generic_heading($test_profile . ' - results-definition.xml');
pts_validation::process_xsd_display_chart(pts_openbenchmarking::openbenchmarking_standards_path() . 'schemas/results-parser.xsd', $test_profile, $types);
}
}
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_test_profile', 'is_test_profile'), null)
);
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2010, Phoronix Media
Copyright (C) 2008 - 2010, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, 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
@@ -34,7 +34,6 @@ class install_dependencies implements pts_option_interface
public static function run($r)
{
$test_profiles = pts_types::identifiers_to_test_profile_objects($r, true, true);
//pts_client::set_test_flags(pts_c::auto_mode);
pts_external_dependencies::install_dependencies($test_profiles);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -24,16 +24,12 @@ class install_test implements pts_option_interface
{
const doc_section = 'Test Installation';
const doc_use_alias = 'install';
const doc_description = 'This option will install the selected test(s) inside the testing environment directory). The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.';
const doc_description = 'This option will install the selected test(s) inside the testing environment directory. The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.';
public static function command_aliases()
{
return array('install');
}
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
}
public static function argument_checks()
{
return array(

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2011 - 2013, Phoronix Media
Copyright (C) 2011 - 2013, Michael Larabel
Copyright (C) 2011 - 2018, Phoronix Media
Copyright (C) 2011 - 2018, 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
@@ -27,63 +27,27 @@ class interactive implements pts_option_interface
public static function run($r)
{
$is_moscow = pts_flags::os_identifier_hash() == 'b28d6a7148b34595c5b397dfcf5b12ac7932b3dc';
if($is_moscow)
{
// Auto mount?
$drives = pts_file_io::glob('/dev/sda*');
sort($drives);
if(false && count($drives) > 0 && !is_dir('/media/pts-auto-mount') && is_writable('/media/'))
{
$last_drive = array_pop($drives);
echo PHP_EOL . 'Attempting to auto-mount drive: ' . $last_drive . PHP_EOL;
mkdir('/media/pts-auto-mount');
exec('mount ' . $last_drive . ' /media/pts-auto-mount');
putenv('PTS_TEST_INSTALL_ROOT_PATH=/media/pts-auto-mount/');
}
// Auto save results
$test_results_name = phodevi::read_property('motherboard', 'serial-number');
if($test_results_name == null)
{
$test_results_name = phodevi::read_name('motherboard');
}
if($test_results_name == null)
{
$test_results_name = phodevi::read_property('system', 'vendor-identifier');
}
putenv('TEST_RESULTS_NAME=' . str_replace(' ', null, $test_results_name));
putenv('TEST_RESULTS_IDENTIFIER=' . $test_results_name);
putenv('TEST_RESULTS_DESCRIPTION=Tests using ' . phodevi::read_property('system', 'operating-system') . ' on ' . date('d F Y') . ' of ' . $test_results_name . '.');
self::select_drive_mount();
}
pts_openbenchmarking::refresh_repository_lists();
pts_client::$display->generic_heading('Interactive Benchmarking');
echo 'System Hardware:' . PHP_EOL . phodevi::system_hardware(true) . (phodevi::read_property('motherboard', 'serial-number') != null ? PHP_EOL . 'System Serial Number: ' . phodevi::read_property('motherboard', 'serial-number') : null) . PHP_EOL . PHP_EOL . PHP_EOL;
$reboot_on_exit = pts_flags::is_live_cd() && pts_client::user_home_directory() == '/root/';
echo phodevi::system_centralized_view();
echo PHP_EOL . (phodevi::read_property('motherboard', 'serial-number') != null ? PHP_EOL . 'System Serial Number: ' . phodevi::read_property('motherboard', 'serial-number') : null) . PHP_EOL . PHP_EOL;
$reboot_on_exit = false;
do
{
$only_show_available_cached_tests = pts_network::internet_support_available() == false;
$options = array(
'RUN_TEST' => 'Run A Test',
'RUN_SUITE' => 'Run A Suite [A Collection Of Tests]',
'RUN_SYSTEM_TEST' => 'Run Complex System Test',
'RUN_TEST' => 'Run A Test / Benchmark',
'RUN_SUITE' => 'Run A Suite [A Collection Of Tests]',
'RUN_STRESS_TEST' => 'Run A Stress Test [Concurrent Benchmarks For Heavy System Load]',
'SHOW_INFO' => 'Show System Hardware / Software Information',
'SHOW_SENSORS' => 'Show Auto-Detected System Sensors',
'SET_RUN_COUNT' => 'Set Test Run Repetition'
'SHOW_SENSORS' => 'Show Available System Sensors',
'LIST_TESTS' => 'List Available Tests',
'LIST_RECOMMENDED_TESTS' => 'List Recommended Tests',
// 'SET_RUN_COUNT' => 'Set Test Run Repetition',
'SEARCH' => 'Search Tests / Suites / Results'
);
if($is_moscow)
{
unset($options['RUN_SUITE']);
// $options['SELECT_DRIVE_MOUNT'] = 'Select Disk Drive To Use For Testing';
}
if(count(pts_client::saved_test_results()) > 0)
{
$options['BACKUP_RESULTS_TO_USB'] = 'Backup Results To Media Storage';
@@ -95,20 +59,19 @@ class interactive implements pts_option_interface
switch($response)
{
case 'RUN_TEST':
$supported_tests = pts_openbenchmarking::available_tests();
$supported_tests = pts_openbenchmarking::available_tests(!$only_show_available_cached_tests, false, false, false, $only_show_available_cached_tests);
$supported_tests = pts_types::identifiers_to_test_profile_objects($supported_tests, false, true);
$longest_title_length = 0;
foreach($supported_tests as $i => &$test_profile)
{
if($test_profile->get_title() == null || pts_test_run_manager::test_profile_system_compatibility_check($test_profile) == false)
if($test_profile->get_title() == null || $test_profile->get_license() == 'Retail')
{
unset($supported_tests[$i]);
continue;
}
if($is_moscow && pts_test_install_request::test_files_available_locally($test_profile) == false)
if(!pts_test_run_manager::test_profile_system_compatibility_check($test_profile))
{
// Don't show tests where files need to be downloaded
unset($supported_tests[$i]);
continue;
}
@@ -127,54 +90,92 @@ class interactive implements pts_option_interface
$supported_tests = $t;
asort($supported_tests);
$tests_to_run = pts_user_io::prompt_text_menu('Select Test', $supported_tests, true, true);
$tests_to_run = pts_user_io::prompt_text_menu('Select Test(s)', $supported_tests, true, true);
$tests_to_run = explode(',', $tests_to_run);
pts_test_installer::standard_install($tests_to_run);
$run_manager = pts_test_run_manager::standard_run($tests_to_run, (pts_c::defaults_mode | pts_c::auto_mode));
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($tests_to_run);
if($run_manager != false)
{
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $run_manager->get_file_name() . '/index.html', null, true, true);
}
break;
case 'RUN_STRESS_TEST':
$supported_tests = pts_openbenchmarking::available_tests(!$only_show_available_cached_tests, false, false, false, $only_show_available_cached_tests);
$supported_tests = pts_types::identifiers_to_test_profile_objects($supported_tests, false, true);
$longest_title_length = 0;
foreach($supported_tests as $i => &$test_profile)
{
if($test_profile->get_title() == null || $test_profile->get_license() == 'Retail')
{
unset($supported_tests[$i]);
continue;
}
if(!pts_test_run_manager::test_profile_system_compatibility_check($test_profile))
{
unset($supported_tests[$i]);
continue;
}
$longest_title_length = max($longest_title_length, strlen($test_profile->get_title()));
}
$t = array();
foreach($supported_tests as $i => &$test_profile)
{
if($test_profile instanceof pts_test_profile)
{
$t[$test_profile->get_identifier()] = sprintf('%-' . ($longest_title_length + 1) . 'ls - %-10ls', $test_profile->get_title(), $test_profile->get_test_hardware_type());
}
}
$supported_tests = $t;
asort($supported_tests);
$tests_to_run = pts_user_io::prompt_text_menu('Select Test(s)', $supported_tests, true, true);
$tests_to_run = explode(',', $tests_to_run);
$concurrent_runs = pts_user_io::prompt_user_input('Number of tests to run concurrently');
putenv('PTS_CONCURRENT_TEST_RUNS=' . trim($concurrent_runs));
$minutes_loop_time = pts_user_io::prompt_user_input('Number of minutes to stress run');
putenv('TOTAL_LOOP_TIME=' . trim($minutes_loop_time));
pts_test_installer::standard_install($tests_to_run);
pts_client::execute_command('stress_run', $tests_to_run);
break;
case 'RUN_SUITE':
$possible_suites = pts_openbenchmarking::available_suites();
foreach(array_map('strtolower', pts_types::subsystem_targets()) as $subsystem)
{
array_push($possible_suites, 'pts/' . $subsystem);
$possible_suites[] = 'pts/' . $subsystem;
}
$suites_to_run = pts_user_io::prompt_text_menu('Select Suite', $possible_suites, true);
foreach(explode(',', $suites_to_run) as $suite_to_run)
{
pts_test_installer::standard_install($suite_to_run);
pts_test_run_manager::standard_run($suite_to_run, (pts_c::defaults_mode | pts_c::auto_mode));
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($suite_to_run);
}
break;
case 'SELECT_DRIVE_MOUNT':
self::select_drive_mount();
break;
case 'RUN_SYSTEM_TEST':
pts_client::$display->generic_heading('System Test');
$system_tests = array('apache', 'c-ray', 'ramspeed', 'postmark');
pts_test_installer::standard_install($system_tests);
$run_manager = pts_test_run_manager::standard_run($system_tests, (pts_c::defaults_mode | pts_c::auto_mode));
if($run_manager != false)
{
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $run_manager->get_file_name() . '/index.html', null, true, true);
}
case 'SEARCH':
pts_client::execute_command('search');
break;
case 'SHOW_INFO':
pts_client::$display->generic_heading('System Software / Hardware Information');
echo 'Hardware:' . PHP_EOL . phodevi::system_hardware(true) . PHP_EOL . PHP_EOL;
echo 'Software:' . PHP_EOL . phodevi::system_software(true) . PHP_EOL . PHP_EOL;
pts_client::execute_command('system_info');
break;
case 'SHOW_SENSORS':
pts_client::$display->generic_heading('Detected System Sensors');
foreach(phodevi::supported_sensors() as $sensor)
{
echo phodevi::sensor_name($sensor) . ': ' . phodevi::read_sensor($sensor) . ' ' . phodevi::read_sensor_unit($sensor) . PHP_EOL;
}
pts_client::execute_command('system_sensors');
break;
case 'LIST_TESTS':
pts_client::execute_command('list_available_tests');
break;
case 'LIST_RECOMMENDED_TESTS':
pts_client::execute_command('list_recommended_tests');
break;
case 'SET_RUN_COUNT':
$run_count = pts_user_io::prompt_user_input('Set the minimum number of times each test should repeat', false);
@@ -182,39 +183,20 @@ class interactive implements pts_option_interface
break;
case 'BACKUP_RESULTS_TO_USB':
pts_client::$display->generic_heading('Backing Up Test Results');
if($is_moscow)
$writable_backup_locations = array();
foreach(array_merge(pts_file_io::glob('/media/*'), pts_file_io::glob('/run/media/*/*')) as $media_dir)
{
$drives = pts_file_io::glob('/dev/sd*');
sort($drives);
if(count($drives) > 0 && is_writable('/media/'))
if(is_writable($media_dir))
{
$select_drive = pts_user_io::prompt_text_menu('Select Drive / Partition To Save Results', $drives);
echo PHP_EOL . 'Attempting to mount: ' . $select_drive . PHP_EOL;
mkdir('/media/00-results-backup');
exec('mount ' . $select_drive . ' /media/00-results-backup');
$writable_backup_locations[] = $media_dir;
}
}
foreach(pts_file_io::glob('/media/*') as $media_dir)
{
if(!is_writable($media_dir))
{
echo PHP_EOL . $media_dir . ' is not writable.' . PHP_EOL;
continue;
}
echo PHP_EOL . 'Writing Test Results To: ' . $media_dir . PHP_EOL;
pts_file_io::copy(PTS_SAVE_RESULTS_PATH, $media_dir . '/');
break;
}
if($is_moscow && is_dir('/media/00-results-backup'))
{
exec('umount /media/00-results-backup');
rmdir('/media/00-results-backup');
}
$backup_location = pts_user_io::prompt_text_menu('Select Backup Location', $writable_backup_locations);
$backup_location .= '/phoronix-test-suite-test-results/';
pts_file_io::mkdir($backup_location);
echo PHP_EOL . pts_client::cli_just_bold('Writing Test Results To: ') . $backup_location . PHP_EOL;
pts_file_io::copy(PTS_SAVE_RESULTS_PATH, $backup_location . '/');
break;
}
echo PHP_EOL . PHP_EOL;
@@ -229,7 +211,7 @@ class interactive implements pts_option_interface
exec('umount /media/pts-auto-mount 2>&1');
}
exec('reboot');
phodevi::reboot();
}
}
private static function select_drive_mount()
@@ -242,7 +224,7 @@ class interactive implements pts_option_interface
}
else
{
array_push($drives, 'No HDD');
$drives[] = 'No HDD';
$to_mount = pts_user_io::prompt_text_menu('Select Drive / Partition To Mount', $drives);
if($to_mount != 'No HDD')

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2013, Phoronix Media
Copyright (C) 2013, Michael Larabel
Copyright (C) 2013 - 2018, Phoronix Media
Copyright (C) 2013 - 2018, 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
@@ -33,7 +33,7 @@ class internal_run implements pts_option_interface
}
public static function run($r)
{
pts_test_run_manager::set_batch_mode(array(
$test_run_manager = new pts_test_run_manager(array(
'UploadResults' => false,
'SaveResults' => true,
'PromptForTestDescription' => true,
@@ -43,11 +43,7 @@ class internal_run implements pts_option_interface
'OpenBrowser' => true
));
pts_test_run_manager::standard_run($r, pts_c::batch_mode);
}
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
$test_run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -31,7 +31,7 @@ class list_available_suites implements pts_option_interface
}
public static function run($r)
{
$available_suites = pts_openbenchmarking::available_suites(false);
$available_suites = pts_tests::all_suites();
pts_client::$display->generic_heading('Available Suites');
if(count($available_suites) > 0)

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -23,39 +23,77 @@
class list_available_tests implements pts_option_interface
{
const doc_section = 'Information';
const doc_description = 'This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories.';
const doc_description = 'This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories where supported on the system and are of a verified state. If the system has no Internet access, it will only list the test profiles where the necesary test assets are available locally on the system or on an available network cache, unless using the list-all-tests option to override this behavior.';
public static function command_aliases()
{
return array('list_tests', 'list_supported_tests');
return array('list_tests', 'list_all_tests', 'list_supported_tests');
}
public static function run($r)
{
pts_client::$display->generic_heading('Available Tests');
$only_show_available_cached_tests = pts_client::get_sent_command() != 'list_all_tests' && pts_network::internet_support_available() == false;
if($only_show_available_cached_tests)
{
echo 'Internet support is not available/enabled, so the Phoronix Test Suite is only listing test profiles where any necessary test assets are already downloaded to the system or available via a network download cache. To override this behavior, use the ' . pts_client::cli_just_bold('phoronix-test-suite list-all-tests') . ' option.' . PHP_EOL . PHP_EOL;
}
$test_count = 0;
foreach(pts_openbenchmarking::available_tests(false) as $identifier)
{
$repo = substr($identifier, 0, strpos($identifier, '/'));
$id = substr($identifier, strlen($repo) + 1);
$repo_index = pts_openbenchmarking::read_repository_index($repo);
if(!in_array(phodevi::operating_system(), $repo_index['tests'][$id]['supported_platforms']) || empty($repo_index['tests'][$id]['title']))
if((!empty($repo_index['tests'][$id]['supported_platforms']) && !in_array(phodevi::os_under_test(), $repo_index['tests'][$id]['supported_platforms'])) || empty($repo_index['tests'][$id]['title']))
{
// Don't show unsupported tests
continue;
}
if(!empty($repo_index['tests'][$id]['status']) && $repo_index['tests'][$id]['status'] != 'Verified')
{
// Don't show unsupported tests
continue;
}
echo sprintf('%-30ls - %-35ls %-9ls', $identifier, $repo_index['tests'][$id]['title'], $repo_index['tests'][$id]['test_type']) . PHP_EOL;
if($only_show_available_cached_tests)
{
$show = false;
foreach($repo_index['tests'][$id]['versions'] as $version)
{
if(!pts_openbenchmarking::is_test_profile_downloaded($identifier . '-' . $version))
{
// Without Internet, won't be able to download test, so don't show it
continue;
}
$test_profile = new pts_test_profile($identifier . '-' . $version);
if(pts_test_install_request::test_files_available_via_cache($test_profile) == false)
{
// Without Internet, only show tests where files are local or in an available cache
continue;
}
$show = true;
$identifier .= '-' . $version;
break;
}
if($show == false)
{
continue;
}
}
echo sprintf('%-30ls - %-39ls %-9ls', $identifier, $repo_index['tests'][$id]['title'], $repo_index['tests'][$id]['test_type']) . PHP_EOL;
$test_count++;
}
foreach(pts_file_io::glob(PTS_TEST_PROFILE_PATH . 'local/*/test-definition.xml') as $path)
foreach(pts_tests::local_tests() as $identifier)
{
$test_profile = new pts_test_profile('local/' . basename(dirname($path)));
$test_profile = new pts_test_profile($identifier);
if($test_profile->get_title() != null && $test_profile->is_supported(false))
{
echo sprintf('%-30ls - %-35ls %-9ls', $test_profile->get_identifier(), $test_profile->get_title(), $test_profile->get_test_hardware_type()) . PHP_EOL;
echo sprintf('%-30ls - %-39ls %-9ls', $test_profile->get_identifier(), $test_profile->get_title(), $test_profile->get_test_hardware_type()) . PHP_EOL;
$test_count++;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2013, Phoronix Media
Copyright (C) 2009 - 2013, Michael Larabel
Copyright (C) 2009 - 2016, Phoronix Media
Copyright (C) 2009 - 2016, 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
@@ -34,7 +34,7 @@ class list_installed_suites implements pts_option_interface
$suite = new pts_test_suite($suite);
if($suite->needs_updated_install() == false)
{
array_push($installed_suites, $suite);
$installed_suites[] = $suite;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
Copyright (C) 2008 - 2016, Phoronix Media
Copyright (C) 2008 - 2016, 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

View File

@@ -0,0 +1,82 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2016 - 2018, Phoronix Media
Copyright (C) 2016 - 2018, 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 list_not_installed_tests implements pts_option_interface
{
const doc_section = 'Information';
const doc_description = 'This option will list all test profiles that are supported and available but presently NOT installed on the system.';
public static function command_aliases()
{
return array('list_uninstalled_tests');
}
public static function run($r)
{
pts_client::$display->generic_heading('Available Tests Not Installed');
$test_count = 0;
foreach(pts_openbenchmarking::available_tests(false) as $identifier)
{
$repo = substr($identifier, 0, strpos($identifier, '/'));
$id = substr($identifier, strlen($repo) + 1);
$repo_index = pts_openbenchmarking::read_repository_index($repo);
if((!empty($repo_index['tests'][$id]['supported_platforms']) && !in_array(phodevi::os_under_test(), $repo_index['tests'][$id]['supported_platforms'])) || empty($repo_index['tests'][$id]['title']))
{
// Don't show unsupported tests
continue;
}
$test_profile = new pts_test_profile($identifier);
if($test_profile->is_test_installed())
{
// Only show uninstalled tests
continue;
}
echo sprintf('%-30ls - %-35ls %-9ls', $identifier, $repo_index['tests'][$id]['title'], $repo_index['tests'][$id]['test_type']) . PHP_EOL;
$test_count++;
}
foreach(pts_tests::local_tests() as $identifier)
{
$test_profile = new pts_test_profile($identifier);
if($test_profile->is_test_installed())
{
// Only show uninstalled tests
continue;
}
if($test_profile->get_title() != null && $test_profile->is_supported(false))
{
echo sprintf('%-30ls - %-35ls %-9ls', $test_profile->get_identifier(), $test_profile->get_title(), $test_profile->get_test_hardware_type()) . PHP_EOL;
$test_count++;
}
}
if($test_count == 0)
{
echo PHP_EOL . 'No tests found. Please check that you have Internet connectivity to download test profile data from OpenBenchmarking.org. The Phoronix Test Suite has documentation on configuring the network setup, proxy settings, and PHP network options. Please contact Phoronix Media if you continuing to experience problems.' . PHP_EOL . PHP_EOL;
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2012, Phoronix Media
Copyright (C) 2012, Michael Larabel
Copyright (C) 2012 - 2018, Phoronix Media
Copyright (C) 2012 - 2018, 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
@@ -28,24 +28,47 @@ class list_recommended_tests implements pts_option_interface
public static function run($r)
{
pts_client::$display->generic_heading('Recommended OpenBenchmarking.org Test Profiles');
$test_count = 0;
$recommendation_index = pts_openbenchmarking::make_openbenchmarking_request('recommended_tests_index');
$recommendation_index = json_decode($recommendation_index, true);
foreach($recommendation_index['recommended_tests'] as $subsystem => $tests)
$tests = array();
foreach(pts_openbenchmarking::available_tests(false) as $identifier)
{
pts_client::$display->generic_heading($subsystem . ' Tests');
foreach($tests as $test)
$repo = substr($identifier, 0, strpos($identifier, '/'));
$id = substr($identifier, strlen($repo) + 1);
$repo_index = pts_openbenchmarking::read_repository_index($repo);
if((!empty($repo_index['tests'][$id]['supported_platforms']) && !in_array(phodevi::os_under_test(), $repo_index['tests'][$id]['supported_platforms'])) || empty($repo_index['tests'][$id]['title']))
{
echo sprintf('%-32ls - %-35ls', $test['test_profile'], $test['title']) . PHP_EOL;
// Don't show unsupported tests
continue;
}
if(!empty($repo_index['tests'][$id]['status']) && $repo_index['tests'][$id]['status'] != 'Verified')
{
// Don't show unsupported tests
continue;
}
$test_count++;
if($repo_index['tests'][$id]['last_updated'] < (time() - (60 * 60 * 24 * 365)))
{
// Don't show tests not actively maintained
continue;
}
if(!isset($tests[$repo_index['tests'][$id]['test_type']]))
{
$tests[$repo_index['tests'][$id]['test_type']] = array();
}
$tests[$repo_index['tests'][$id]['test_type']][$identifier] = $repo_index['tests'][$id];
}
if($test_count == 0)
foreach($tests as $subsystem => $test_json)
{
echo PHP_EOL . 'No tests found. Please check that you have Internet connectivity to download test profile data from OpenBenchmarking.org. The Phoronix Test Suite has documentation on configuring the network setup, proxy settings, and PHP network options. Please contact Phoronix Media if you continuing to experience problems.' . PHP_EOL . PHP_EOL;
uasort($test_json, array('pts_openbenchmarking_client', 'compare_test_json_download_counts'));
$test_json = array_slice($test_json, 0, 10);
pts_client::$display->generic_heading($subsystem . ' Tests');
foreach($test_json as $identifier => $test_individual_json)
{
echo sprintf('%-30ls - %-39ls', $identifier, $test_individual_json['title']) . PHP_EOL;
}
}
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2012, Phoronix Media
Copyright (C) 2008 - 2012, Michael Larabel
Copyright (C) 2008 - 2017, Phoronix Media
Copyright (C) 2008 - 2017, 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
@@ -32,7 +32,8 @@ class list_test_usage implements pts_option_interface
if(count($installed_tests) > 0)
{
echo sprintf('%-18ls %-8ls %-13ls %-11ls %-13ls %-10ls', 'TEST', 'VERSION', 'INSTALL DATE', 'LAST RUN', 'AVG RUN-TIME', 'TIMES RUN') . PHP_EOL;
echo sprintf('%-32ls %-12ls %-11ls %-8ls %-6ls', 'TEST', 'INSTALL', 'LAST RUN', 'AVERAGE', 'TIMES') . PHP_EOL;
echo sprintf('%-32ls %-12ls %-11ls %-8ls %-6ls', '', 'DATE', 'DATE', 'RUNTIME', 'RUN') . PHP_EOL;
foreach($installed_tests as $identifier)
{
$test_profile = new pts_test_profile($identifier);
@@ -45,7 +46,7 @@ class list_test_usage implements pts_option_interface
$last_run = $test_profile->test_installation->get_last_run_date();
$last_run = $last_run == '0000-00-00' ? 'NEVER' : $last_run;
echo sprintf('%-18ls - %-8ls %-13ls %-11ls %-13ls %-10ls', $identifier, $test_profile->test_installation->get_installed_version(), $test_profile->test_installation->get_install_date(), $last_run, $avg_time, $test_profile->test_installation->get_run_count()) . PHP_EOL;
echo sprintf('%-32ls %-12ls %-11ls %-8ls %-6ls', $identifier, $test_profile->test_installation->get_install_date(), $last_run, $avg_time, $test_profile->test_installation->get_run_count()) . PHP_EOL;
}
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2014, Phoronix Media
Copyright (C) 2008 - 2014, Michael Larabel
Copyright (C) 2008 - 2018, Phoronix Media
Copyright (C) 2008 - 2018, 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
@@ -27,29 +27,13 @@ class make_download_cache implements pts_option_interface
public static function run($r)
{
if(!empty($r))
{
$test_profiles = pts_types::identifiers_to_test_profile_objects($r, true, true);
// Force refresh of OB repository to ensure the latest profiles
pts_openbenchmarking::refresh_repository_lists(null, true);
if(count($test_profiles) > 0)
{
echo PHP_EOL . 'Downloading Test Files For: ' . implode(' ', $test_profiles);
pts_test_installer::only_download_test_files($test_profiles);
}
}
// Generates a PTS Download Cache
if(is_writable(PTS_SHARE_PATH))
{
// If running as root, might as well write it to the /usr/share PTS download cache so other users on system could benefit too
$dc_write_directory = PTS_SHARE_PATH . 'download-cache/';
pts_file_io::mkdir($dc_write_directory);
}
else
{
// The user's local cache
$dc_write_directory = pts_strings::add_trailing_slash(pts_client::parse_home_directory(pts_config::read_user_config('PhoronixTestSuite/Options/Installation/CacheDirectory', PTS_DOWNLOAD_CACHE_PATH)));
}
// Determine cache location
$dc_write_directory = pts_client::download_cache_path();
pts_file_io::mkdir($dc_write_directory);
echo PHP_EOL . 'Download Cache Directory: ' . $dc_write_directory . PHP_EOL;
if($dc_write_directory == null || !is_writable($dc_write_directory))
{
@@ -57,31 +41,40 @@ class make_download_cache implements pts_option_interface
return false;
}
echo PHP_EOL . 'Download Cache Directory: ' . $dc_write_directory . PHP_EOL;
if(!empty($r))
{
$test_profiles = pts_types::identifiers_to_test_profile_objects($r, true, true);
if(count($test_profiles) > 0)
{
echo PHP_EOL . 'Downloading Test Files For: ' . implode(' ', $test_profiles);
pts_test_installer::only_download_test_files($test_profiles, $dc_write_directory, false);
}
}
$json_download_cache = array('phoronix-test-suite' => array(
'main' => array('generated' => time()),
'download-cache' => array()
));
foreach(pts_tests::installed_tests() as $test)
foreach(pts_tests::partially_installed_tests() as $test)
{
$test_profile = new pts_test_profile($test);
echo PHP_EOL . 'Checking Downloads For: ' . $test . PHP_EOL;
echo PHP_EOL . pts_client::cli_just_bold('Checking Downloads For: ') . $test . PHP_EOL;
foreach(pts_test_install_request::read_download_object_list($test_profile, false) as $file)
foreach($test_profile->get_downloads() as $file)
{
$cached_valid = false;
if(is_file($dc_write_directory . $file->get_filename()) && $file->check_file_hash($dc_write_directory . $file->get_filename()))
{
echo ' Previously Cached: ' . $file->get_filename() . PHP_EOL;
echo pts_client::cli_just_bold(' Previously Cached: ') . $file->get_filename() . PHP_EOL;
$cached_valid = true;
}
else if(is_dir($test_profile->get_install_dir()))
{
if(is_file($test_profile->get_install_dir() . $file->get_filename()) && $file->check_file_hash($test_profile->get_install_dir() . $file->get_filename()))
{
echo ' Caching: ' . $file->get_filename() . PHP_EOL;
echo pts_client::cli_just_bold(' Caching: ') . $file->get_filename() . PHP_EOL;
if(copy($test_profile->get_install_dir() . $file->get_filename(), $dc_write_directory . $file->get_filename()))
{
$cached_valid = true;
@@ -103,7 +96,7 @@ class make_download_cache implements pts_option_interface
}
else if($file->get_md5() == $json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['md5'] && $file->get_sha256() == $json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['sha256'])
{
array_push($json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['associated_tests'], $test_profile->get_identifier());
$json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['associated_tests'][] = $test_profile->get_identifier();
}
}
}
@@ -125,7 +118,18 @@ class make_download_cache implements pts_option_interface
}
}
file_put_contents($dc_write_directory . 'pts-download-cache.json', json_encode($json_download_cache, JSON_PRETTY_PRINT));
$cached_tests = array();
foreach(pts_openbenchmarking::available_tests(true, true) as $test)
{
if(pts_test_install_request::test_files_in_install_dir($test) == false)
{
continue;
}
$cached_tests[] = $test;
}
$json_download_cache['phoronix-test-suite']['cached-tests'] = $cached_tests;
file_put_contents($dc_write_directory . 'pts-download-cache.json', json_encode($json_download_cache, (defined('JSON_PRETTY_PRINT') ? JSON_PRETTY_PRINT : 0)));
echo PHP_EOL;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014, Phoronix Media
Copyright (C) 2014, Michael Larabel
Copyright (C) 2014 - 2018, Phoronix Media
Copyright (C) 2014 - 2018, 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
@@ -42,6 +42,8 @@ class make_openbenchmarking_cache implements pts_option_interface
return false;
}
echo PHP_EOL . 'CACHE LOCATION: ' . PTS_OPENBENCHMARKING_SCRATCH_PATH . PHP_EOL;
$terminal_width = pts_client::terminal_width();
// Cache test profiles
@@ -56,16 +58,24 @@ class make_openbenchmarking_cache implements pts_option_interface
{
$qualified_identifier = $repo . '/' . $test . '-' . $version;
echo $qualified_identifier;
$success = pts_openbenchmarking::download_test_profile($repo . '/' . $test . '-' . $version);
$success = pts_openbenchmarking::download_test_profile($repo . '/' . $test . '-' . $version, null, true);
if($success && is_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip'))
if(is_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip'))
{
$file_size = round(filesize(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip') / 1024, 2);
$info = $file_size . 'KB - ' . sha1_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip');
echo ' ' . str_repeat('.', $terminal_width - strlen($qualified_identifier) - 3 - strlen($info)) . ' ' . $info . PHP_EOL;
$r_size = $terminal_width - strlen($qualified_identifier) - 3 - strlen($info);
if($r_size > 0)
{
echo ' ' . str_repeat('.', $terminal_width - strlen($qualified_identifier) - 3 - strlen($info)) . ' ' . $info . PHP_EOL;
}
$total_cache_count++;
$total_cache_size += $file_size;
}
else
{
echo 'Failed Downloading: ' . $qualified_identifier . '.zip';
}
}
echo PHP_EOL;
}
@@ -82,13 +92,14 @@ class make_openbenchmarking_cache implements pts_option_interface
{
$qualified_identifier = $repo . '/' . $test . '-' . $version;
echo $qualified_identifier;
$success = pts_openbenchmarking::download_test_suite($repo . '/' . $test . '-' . $version);
$success = pts_openbenchmarking::download_test_suite($repo . '/' . $test . '-' . $version, null, true);
if($success && is_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip'))
if(is_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip'))
{
$file_size = round(filesize(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip') / 1024, 2);
$info = $file_size . 'KB - ' . sha1_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip');
echo ' ' . str_repeat('.', $terminal_width - strlen($qualified_identifier) - 3 - strlen($info)) . ' ' . $info . PHP_EOL;
$dot_size = $terminal_width - strlen($qualified_identifier) - 3 - strlen($info);
echo ' ' . str_repeat('.', ($dot_size >= 0 ? $dot_size : 0)) . ' ' . $info . PHP_EOL;
$total_cache_count++;
$total_cache_size += $file_size;
}

Some files were not shown because too many files have changed in this diff Show More