Compare commits
649 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bf44807203 | ||
|
|
4c41808131 | ||
|
|
172d1153c9 | ||
|
|
fc9988d2b7 | ||
|
|
44b2841cf0 | ||
|
|
36044a04ae | ||
|
|
171c52494d | ||
|
|
a96068165f | ||
|
|
e76e2b8e52 | ||
|
|
c5fc6a2a0e | ||
|
|
4cab0aac81 | ||
|
|
bf7199d10c | ||
|
|
3489a38efa | ||
|
|
8139d6997e | ||
|
|
64b1fb75f6 | ||
|
|
439d03646b | ||
|
|
145cbdf9a7 | ||
|
|
ee514d675d | ||
|
|
07a3b0a588 | ||
|
|
728020421e | ||
|
|
febe4ee5af | ||
|
|
904c1633d4 | ||
|
|
d0e59c28bb | ||
|
|
a0d7684f7e | ||
|
|
c37b7772c6 | ||
|
|
4d0174c158 | ||
|
|
c32504de02 | ||
|
|
5dc91a9eec | ||
|
|
9a9f647f96 | ||
|
|
74f6689ec7 | ||
|
|
8261cdd3f0 | ||
|
|
7bdf0bf111 | ||
|
|
0ef549dbaf | ||
|
|
6d3c67c5e5 | ||
|
|
4b21f67b95 | ||
|
|
54797c83ef | ||
|
|
555067f28b | ||
|
|
e8ceea689d | ||
|
|
b0a38161b4 | ||
|
|
b3b9d6a743 | ||
|
|
51fed6432b | ||
|
|
8fe910096c | ||
|
|
1c8685f27d | ||
|
|
14e14e7789 | ||
|
|
ba5d5fe8d1 | ||
|
|
f00e4cfc52 | ||
|
|
0ca2f5bd7b | ||
|
|
e8508a7f03 | ||
|
|
360dbf2cfa | ||
|
|
1348ecfc9a | ||
|
|
31242eac12 | ||
|
|
682fa05eaa | ||
|
|
75d842c7ca | ||
|
|
369d1f6e81 | ||
|
|
f14b35788a | ||
|
|
63a9259828 | ||
|
|
bc96ac2fb5 | ||
|
|
f6d77f6b18 | ||
|
|
b6df9da3ff | ||
|
|
12df8d22f2 | ||
|
|
df6d425c3a | ||
|
|
944dbe18fb | ||
|
|
22e2bbe209 | ||
|
|
b35de7e3e1 | ||
|
|
5d9c8bbce2 | ||
|
|
2a3485b5b2 | ||
|
|
294b68a8f1 | ||
|
|
a6be4a9aae | ||
|
|
47f5edc933 | ||
|
|
62dc428df4 | ||
|
|
6064488fa3 | ||
|
|
8504468b1a | ||
|
|
3487363dbc | ||
|
|
ab5b144be5 | ||
|
|
1379863497 | ||
|
|
14d7e304c1 | ||
|
|
fc88a2156e | ||
|
|
fe11245f0f | ||
|
|
d90c06bb07 | ||
|
|
702f86b21b | ||
|
|
7a93cf85f4 | ||
|
|
d34c200665 | ||
|
|
37fcdec67c | ||
|
|
09d6c560bb | ||
|
|
8f0475e917 | ||
|
|
ddaeb4939d | ||
|
|
3a2644c245 | ||
|
|
9af2e04ac7 | ||
|
|
e5d188e291 | ||
|
|
83abcb694d | ||
|
|
bc71a89644 | ||
|
|
a3c0d10253 | ||
|
|
a32cdcdb82 | ||
|
|
e34b9baf2b | ||
|
|
c888cbcb29 | ||
|
|
d22e2c8de6 | ||
|
|
4326e56ce9 | ||
|
|
5416084bab | ||
|
|
55fbc75ef1 | ||
|
|
190b326a6f | ||
|
|
3c73548acc | ||
|
|
39e50c2a1c | ||
|
|
e14522f712 | ||
|
|
a485640eb5 | ||
|
|
66d763e6c3 | ||
|
|
00757f3691 | ||
|
|
5ec11037ac | ||
|
|
a324411f1a | ||
|
|
6295315af4 | ||
|
|
4c5b76b16b | ||
|
|
b0146409d0 | ||
|
|
be43c42111 | ||
|
|
6f80ecba98 | ||
|
|
f44c473999 | ||
|
|
13ae15a415 | ||
|
|
c313ba640b | ||
|
|
94adf88f9d | ||
|
|
cd9bdc0a69 | ||
|
|
979ee33dbd | ||
|
|
5ce85f8f19 | ||
|
|
acba362e26 | ||
|
|
7ec7d7c49e | ||
|
|
52a953ddf2 | ||
|
|
719ccccdcf | ||
|
|
5733e92d14 | ||
|
|
5f6e166671 | ||
|
|
fcb4c8f60e | ||
|
|
fa9e306cca | ||
|
|
9fd11565ab | ||
|
|
dcca9fd441 | ||
|
|
2e976253b1 | ||
|
|
728151d904 | ||
|
|
b8bb4216b6 | ||
|
|
fec0320433 | ||
|
|
effbadc08b | ||
|
|
4ff2f3a94e | ||
|
|
142fa30f0c | ||
|
|
bde55c7175 | ||
|
|
a468ebe1a0 | ||
|
|
618d275e37 | ||
|
|
bb84fa78fa | ||
|
|
8b669d24fa | ||
|
|
b9978be5ef | ||
|
|
7c40175e9c | ||
|
|
e0d51c9c02 | ||
|
|
a81cc2dfbe | ||
|
|
2c6a86e7a3 | ||
|
|
f8bee61ea9 | ||
|
|
6369ac969b | ||
|
|
696049a025 | ||
|
|
78be8addd9 | ||
|
|
f9f30c3109 | ||
|
|
3089150af4 | ||
|
|
0a4f92bd8e | ||
|
|
f25e2512b5 | ||
|
|
44205786aa | ||
|
|
1b5540ff1c | ||
|
|
70733f973d | ||
|
|
362b7cb72a | ||
|
|
f3ac598e14 | ||
|
|
60357b1709 | ||
|
|
1002667e62 | ||
|
|
43934eb876 | ||
|
|
4b1c9aea2f | ||
|
|
498d94431f | ||
|
|
609725f322 | ||
|
|
287253a3b8 | ||
|
|
5c5df2f003 | ||
|
|
39ddc90da4 | ||
|
|
5101bcfc93 | ||
|
|
fed8ea9303 | ||
|
|
71b840d672 | ||
|
|
f5963ca00b | ||
|
|
a5e0c6c42b | ||
|
|
6a25bb73e8 | ||
|
|
27e3114382 | ||
|
|
eae6e8559e | ||
|
|
a622b0c28d | ||
|
|
4e72163953 | ||
|
|
8db7adc53b | ||
|
|
b40ab79032 | ||
|
|
5d710789b2 | ||
|
|
10820f3352 | ||
|
|
f37a7043ed | ||
|
|
cedaa7984f | ||
|
|
424beeb454 | ||
|
|
d19af0b22a | ||
|
|
506b042faa | ||
|
|
60163e8b62 | ||
|
|
7c5d7d5fa2 | ||
|
|
fc450a6bbe | ||
|
|
ec72223373 | ||
|
|
463463d32b | ||
|
|
4cf98991a8 | ||
|
|
f06637f72f | ||
|
|
751e7b2dc4 | ||
|
|
040431ac4a | ||
|
|
ca1e67587c | ||
|
|
a5d60d57e8 | ||
|
|
1018988ad9 | ||
|
|
6fd1d950b5 | ||
|
|
942e66c1bc | ||
|
|
b32e678b6e | ||
|
|
f06a1fe4ff | ||
|
|
4903638e8d | ||
|
|
2d169d76b3 | ||
|
|
cf9f970d9f | ||
|
|
89f1387d20 | ||
|
|
e0eb95c159 | ||
|
|
ac40f89a43 | ||
|
|
44748932ff | ||
|
|
570d6a2c35 | ||
|
|
3e51650ba3 | ||
|
|
531444c8f1 | ||
|
|
46ccc94b63 | ||
|
|
35c73b6b67 | ||
|
|
42125dd145 | ||
|
|
7182af1852 | ||
|
|
568f1ee0a9 | ||
|
|
3474225df9 | ||
|
|
2611d14e47 | ||
|
|
99d68a8bf5 | ||
|
|
9a610df3e1 | ||
|
|
3d346cb4cc | ||
|
|
9b8f1d7339 | ||
|
|
c1ac02180a | ||
|
|
4c73f48617 | ||
|
|
0cf27bb30f | ||
|
|
79e69cf0b3 | ||
|
|
22958d1c0b | ||
|
|
165ef47acd | ||
|
|
7ff93a1d66 | ||
|
|
990ba0fa9a | ||
|
|
64e206c2fc | ||
|
|
00ddc171b4 | ||
|
|
c756f3b1a0 | ||
|
|
702fec9522 | ||
|
|
b600571d84 | ||
|
|
b3fdeda463 | ||
|
|
e4d93b2243 | ||
|
|
fbc7dd50a0 | ||
|
|
58a1ccb636 | ||
|
|
182567d450 | ||
|
|
0709212c2d | ||
|
|
086381523a | ||
|
|
5fd4223f6e | ||
|
|
bbd0cb619c | ||
|
|
304f505f05 | ||
|
|
78bed5da9e | ||
|
|
85da3d6e8d | ||
|
|
5a32573cbb | ||
|
|
37107776ef | ||
|
|
f5b89d3cf1 | ||
|
|
624adbdf89 | ||
|
|
c9bbbace0e | ||
|
|
4e02d9e939 | ||
|
|
4531b1a311 | ||
|
|
4869117ea1 | ||
|
|
8ef44f39ba | ||
|
|
5080889641 | ||
|
|
7a97676f26 | ||
|
|
ae23ae31c3 | ||
|
|
47aeaec6f6 | ||
|
|
3046cf66bb | ||
|
|
bd650ba3db | ||
|
|
ba0bba8769 | ||
|
|
f8b6b2d584 | ||
|
|
9888299c16 | ||
|
|
91a96a32b6 | ||
|
|
045490d5c0 | ||
|
|
e02a9f5eaf | ||
|
|
0d37d88559 | ||
|
|
1fe7d73f34 | ||
|
|
b0d1b4ff5c | ||
|
|
2769754f5e | ||
|
|
79ea58730d | ||
|
|
d94dfd6169 | ||
|
|
0a7b4d5423 | ||
|
|
4074e5d4c4 | ||
|
|
50c5f3c193 | ||
|
|
6bd3254801 | ||
|
|
3e2de2cac0 | ||
|
|
dfee1b90e0 | ||
|
|
97a6b9b55d | ||
|
|
e6586ef03d | ||
|
|
2ac4c5f60f | ||
|
|
f4586a373c | ||
|
|
3ff688305a | ||
|
|
48cfbac015 | ||
|
|
1cd0bf5212 | ||
|
|
49b71a4691 | ||
|
|
5a1fff5da5 | ||
|
|
ece93f0aa3 | ||
|
|
d5db3fdf01 | ||
|
|
5952329acc | ||
|
|
b5981d5250 | ||
|
|
b4633c3414 | ||
|
|
1c2864df81 | ||
|
|
4eabcf3dd3 | ||
|
|
1c2f697c1a | ||
|
|
4744ba344f | ||
|
|
66a6578e9d | ||
|
|
66e0cb4bec | ||
|
|
e2d23b0069 | ||
|
|
ee93f50b14 | ||
|
|
7bc9916d58 | ||
|
|
e3c4f2a647 | ||
|
|
85e633e712 | ||
|
|
01c94ee0a0 | ||
|
|
ee92e4ae0b | ||
|
|
10a227a316 | ||
|
|
d52f7cce38 | ||
|
|
8444b1abee | ||
|
|
dcb73373da | ||
|
|
061c2702a1 | ||
|
|
44dc6854b3 | ||
|
|
6f71005e3e | ||
|
|
a4e184d3e6 | ||
|
|
6d62e7399c | ||
|
|
cbbbc374a1 | ||
|
|
e2311cda3d | ||
|
|
9c128102cd | ||
|
|
bb5579125d | ||
|
|
2fb50776e3 | ||
|
|
6859349ffa | ||
|
|
16cb6b4f51 | ||
|
|
64eeb16aa4 | ||
|
|
223b982f21 | ||
|
|
3ee52f05d1 | ||
|
|
3bf1b1eb87 | ||
|
|
b8deb67d6b | ||
|
|
6bf5e66148 | ||
|
|
f662ba06e3 | ||
|
|
461ab86712 | ||
|
|
8060219473 | ||
|
|
07117dacfc | ||
|
|
f6951e081a | ||
|
|
973995b48e | ||
|
|
c40a740556 | ||
|
|
002461378c | ||
|
|
2a56f62e07 | ||
|
|
4f8f117259 | ||
|
|
a9811c3c9b | ||
|
|
295e130871 | ||
|
|
31b9534706 | ||
|
|
362c39a8e4 | ||
|
|
82662be6b8 | ||
|
|
0003dbf4e3 | ||
|
|
77f9ce6d8e | ||
|
|
08c9933529 | ||
|
|
2f9d47d2c0 | ||
|
|
baf0f7739c | ||
|
|
eb890889f5 | ||
|
|
5fdb6c25d3 | ||
|
|
a16c5597ad | ||
|
|
e6bb62d362 | ||
|
|
9cb64d8227 | ||
|
|
204c4d2466 | ||
|
|
f75b627ced | ||
|
|
93d0d75ad7 | ||
|
|
3b90098dac | ||
|
|
46780545b0 | ||
|
|
2e7773d3c5 | ||
|
|
fcac72a562 | ||
|
|
3eb47951c6 | ||
|
|
cf9d258806 | ||
|
|
866525e0ab | ||
|
|
6c4ad0668b | ||
|
|
408bc912a4 | ||
|
|
e3c6ad0636 | ||
|
|
e0df079101 | ||
|
|
b290788913 | ||
|
|
db794375c2 | ||
|
|
022c8193ca | ||
|
|
c691b19641 | ||
|
|
3e4526905a | ||
|
|
4d058991d1 | ||
|
|
14ca2576d2 | ||
|
|
4814c5cbc9 | ||
|
|
d3d9afc01a | ||
|
|
7be38ee32b | ||
|
|
2d58d8e053 | ||
|
|
57f2f985ca | ||
|
|
20e87f7738 | ||
|
|
094e1b8abb | ||
|
|
82823ad1c9 | ||
|
|
8ae57801c8 | ||
|
|
90fb1ddada | ||
|
|
b80825290c | ||
|
|
1dd29eee20 | ||
|
|
1c48032568 | ||
|
|
667ff28134 | ||
|
|
52dd9c7e4e | ||
|
|
ff2f6659bc | ||
|
|
2c07a48dad | ||
|
|
3c0a070663 | ||
|
|
afa3efa604 | ||
|
|
7d603bff85 | ||
|
|
fe6991a9f9 | ||
|
|
ef35e7f06e | ||
|
|
6bb8dbca7f | ||
|
|
c7c2dec295 | ||
|
|
d703559f39 | ||
|
|
355e107382 | ||
|
|
a74f7eb6e0 | ||
|
|
3f90403975 | ||
|
|
0a41974c80 | ||
|
|
caa2329926 | ||
|
|
29b94c8dd2 | ||
|
|
805885a58e | ||
|
|
fbc96a8bdf | ||
|
|
d1e1dd8c03 | ||
|
|
cb09c5e508 | ||
|
|
9490bc9721 | ||
|
|
f36f8db8ba | ||
|
|
2e24e720e4 | ||
|
|
793f76c6d7 | ||
|
|
4c9001a1dc | ||
|
|
d4152606c9 | ||
|
|
ad28eadc4a | ||
|
|
835f3e6868 | ||
|
|
c6e5e54088 | ||
|
|
c6c8f9261a | ||
|
|
9435ebd78f | ||
|
|
1bd6e6f952 | ||
|
|
e3f5ec1c0a | ||
|
|
452d9ed04c | ||
|
|
05b3fdf890 | ||
|
|
a7fab960a1 | ||
|
|
6b5e8df4e3 | ||
|
|
f6356c4a27 | ||
|
|
027f7e84bb | ||
|
|
eaa7431823 | ||
|
|
088a710bcd | ||
|
|
b717fa9582 | ||
|
|
f456fcb084 | ||
|
|
12f3d80f39 | ||
|
|
0bd0dee4d4 | ||
|
|
5df5624c2a | ||
|
|
571102774c | ||
|
|
1554c1804c | ||
|
|
146fff9de6 | ||
|
|
2f183c8100 | ||
|
|
be85bb3466 | ||
|
|
ffbe0513e9 | ||
|
|
4bf1a781b7 | ||
|
|
41759ab9ef | ||
|
|
02f4d29d16 | ||
|
|
d286f89f92 | ||
|
|
cf8e834598 | ||
|
|
3902d680be | ||
|
|
1ec7a10523 | ||
|
|
8afd4eb3ce | ||
|
|
f01ba250c2 | ||
|
|
56ca809504 | ||
|
|
8331cf461e | ||
|
|
eb4e073f80 | ||
|
|
1f10bf12e3 | ||
|
|
568bbf124a | ||
|
|
7955d58335 | ||
|
|
b74049cbf4 | ||
|
|
a60d870932 | ||
|
|
38f0f3eb6b | ||
|
|
655100774f | ||
|
|
1f6c7b7fa4 | ||
|
|
f410ada612 | ||
|
|
ba3203de8d | ||
|
|
68f34c22ff | ||
|
|
6c8067a20b | ||
|
|
50d8cdc3fb | ||
|
|
93325244c4 | ||
|
|
257ed8b89f | ||
|
|
3ad38b6939 | ||
|
|
f575d21074 | ||
|
|
049b759f10 | ||
|
|
c6f48b95c5 | ||
|
|
ee04d64563 | ||
|
|
0a645235a6 | ||
|
|
95e6d0d01b | ||
|
|
ae9b7b1621 | ||
|
|
3b7e3c7e70 | ||
|
|
e54b418ef2 | ||
|
|
9bafbd7195 | ||
|
|
87a90709f7 | ||
|
|
30eb45846a | ||
|
|
2b93102268 | ||
|
|
03029d5be5 | ||
|
|
19914d4577 | ||
|
|
78de8c6b7b | ||
|
|
e77df95389 | ||
|
|
b016dd899b | ||
|
|
79d8fcd41e | ||
|
|
a5f28439e6 | ||
|
|
3747113313 | ||
|
|
c01a9b010e | ||
|
|
56aa7199c3 | ||
|
|
0fc8b88b30 | ||
|
|
5c0c048e81 | ||
|
|
9f2a7b3201 | ||
|
|
42069d2df7 | ||
|
|
7454652df9 | ||
|
|
acc90e44f1 | ||
|
|
14a49bc295 | ||
|
|
a789c44b74 | ||
|
|
0f6f2a4a57 | ||
|
|
edbb31e8ed | ||
|
|
9766cd1993 | ||
|
|
87be9c54d1 | ||
|
|
4078ffd39a | ||
|
|
6e6fbd97a5 | ||
|
|
0e707d0bf3 | ||
|
|
22232f9cec | ||
|
|
e8677218bb | ||
|
|
943affd275 | ||
|
|
cb4f09282b | ||
|
|
d2e8ffc29a | ||
|
|
2b2978b724 | ||
|
|
43c8759f85 | ||
|
|
3567d78b32 | ||
|
|
2fc399d738 | ||
|
|
2f29f6bf3f | ||
|
|
f2a31091d1 | ||
|
|
39c12608bc | ||
|
|
dc7e4a57a4 | ||
|
|
0e75347ad4 | ||
|
|
a157c287af | ||
|
|
194ffd2f2b | ||
|
|
3bd012418b | ||
|
|
ecab40c00c | ||
|
|
98a7c3e06f | ||
|
|
c428c7fb5e | ||
|
|
c74602eec1 | ||
|
|
cd8a6bea93 | ||
|
|
2c5ed3a834 | ||
|
|
3b55ce6ade | ||
|
|
a5b88d5f48 | ||
|
|
37c29aa463 | ||
|
|
44b6330ce3 | ||
|
|
eadafced08 | ||
|
|
33057a6835 | ||
|
|
b21459a063 | ||
|
|
1a2746d31e | ||
|
|
516ff81122 | ||
|
|
d44f32920b | ||
|
|
3bba1e986c | ||
|
|
4727f39640 | ||
|
|
b1866bf84e | ||
|
|
cd89e8c61a | ||
|
|
dbf2efc4c9 | ||
|
|
37597496e2 | ||
|
|
e8c105cf9a | ||
|
|
2cb34a74e4 | ||
|
|
f713559157 | ||
|
|
4abad35787 | ||
|
|
5cedc72ba8 | ||
|
|
d8a121dcd9 | ||
|
|
642feee050 | ||
|
|
b0099ac69e | ||
|
|
a7a6f9df59 | ||
|
|
b3195478e1 | ||
|
|
2dcb8e8b82 | ||
|
|
f40caa8ec5 | ||
|
|
88ec569699 | ||
|
|
e4c5ca1aeb | ||
|
|
4c03aae195 | ||
|
|
3d0e276743 | ||
|
|
1a9f2b7016 | ||
|
|
1e37a3ef06 | ||
|
|
6de34d532c | ||
|
|
a6ab934444 | ||
|
|
67d35e72dc | ||
|
|
ad38824cbd | ||
|
|
847cfe2822 | ||
|
|
d3b2442fc0 | ||
|
|
edb57ebea0 | ||
|
|
db224c251f | ||
|
|
6feb535eff | ||
|
|
ae96d87c5e | ||
|
|
0223dd4890 | ||
|
|
096b18aca9 | ||
|
|
26a45e0a53 | ||
|
|
90436b882a | ||
|
|
31d7ee84bd | ||
|
|
f371e1e7ed | ||
|
|
e50629c231 | ||
|
|
08bf9d4e57 | ||
|
|
fc9157fbf5 | ||
|
|
3073e04dee | ||
|
|
e5daa542df | ||
|
|
95fdf3527f | ||
|
|
f70020785d | ||
|
|
a235986a30 | ||
|
|
7124b0454a | ||
|
|
24ecd03a93 | ||
|
|
6ddfbb587d | ||
|
|
affdba821b | ||
|
|
6ccebe9f36 | ||
|
|
443ad9ab31 | ||
|
|
6e69b1e00c | ||
|
|
808981640a | ||
|
|
a15df82d88 | ||
|
|
29ccdced61 | ||
|
|
e12923c068 | ||
|
|
a70649dfc7 | ||
|
|
4f0db42e09 | ||
|
|
53067f4e7a | ||
|
|
0f6e12600e | ||
|
|
651da1d84d | ||
|
|
3346e597cd | ||
|
|
e1c6ca4dee | ||
|
|
c6afe38549 | ||
|
|
6ac2703f33 | ||
|
|
fe2ec09d16 | ||
|
|
b87abf9bc4 | ||
|
|
d655229fe4 | ||
|
|
dfb81b475d | ||
|
|
22e630d5e1 | ||
|
|
9f88c84d31 | ||
|
|
6d24536e3c | ||
|
|
7ffc816cc8 | ||
|
|
105f47a17a | ||
|
|
cdd771dbb0 | ||
|
|
2f9e34edfb | ||
|
|
7ef2be2de9 | ||
|
|
904e02041e | ||
|
|
08c24a4ad1 | ||
|
|
2f26c0a93f | ||
|
|
f7884463ff | ||
|
|
1a6b8403ad | ||
|
|
a1adf66b72 | ||
|
|
49b8f6d82b | ||
|
|
5eaafaa9b1 | ||
|
|
5581622977 | ||
|
|
dc4c82a7f7 | ||
|
|
09bab0797d | ||
|
|
841082197d | ||
|
|
8d6d9ccc58 | ||
|
|
e091126310 | ||
|
|
e4f402d161 | ||
|
|
aa3a2535e9 | ||
|
|
42f4393b40 | ||
|
|
d17e99b093 | ||
|
|
e3e49a95b8 | ||
|
|
f535953155 | ||
|
|
d2de17243a | ||
|
|
9fb1641f24 | ||
|
|
f660a20b46 | ||
|
|
3affaad204 | ||
|
|
acd397cc7e |
2
AUTHORS
2
AUTHORS
@@ -1,4 +1,4 @@
|
||||
Copyright 2008 - 2018 by Phoronix Media.
|
||||
Copyright 2008 - 2019 by Phoronix Media.
|
||||
|
||||
Lead Architects:
|
||||
|
||||
|
||||
255
ChangeLog
255
ChangeLog
@@ -1,5 +1,260 @@
|
||||
PHORONIX TEST SUITE CHANGE-LOG
|
||||
|
||||
Phoronix Test Suite 9.0.0 Milestone 2
|
||||
22 August 2019
|
||||
|
||||
pts-core: New result viewer improvements
|
||||
pts-core: Various fixes and code cleanups
|
||||
phodevi: Add support for cpu.power sensor reading from Linux zenpower driver
|
||||
|
||||
Phoronix Test Suite 9.0.0 Milestone 1
|
||||
25 July 2019
|
||||
|
||||
pts-core: Add 'expat' as possible external dependency
|
||||
pts-core: Various PDF report improvements
|
||||
pts-core: User-config syntax change LoadModules -> AutoLoadModules
|
||||
pts-core: Also dynamically increase run count if any results outside 3-sigma limit
|
||||
pts-core: Add compare-results-two-way sub-command
|
||||
pts-core: Improve MultiMatch in test result parser
|
||||
pts-core: Add IGNORE_RUNS environment variable
|
||||
pts-core: Add result-file-confidence sub-command
|
||||
pts_Graph: Add side-by-side 2-way comparison graph
|
||||
pts_Graph: Fix for displaying line graphs with very small values
|
||||
phodevi: Support reading sys.power via IPMI PS1_Input_Power/PS2_Input_Power
|
||||
phodevi: More robust Arm CPU model detection improvements
|
||||
phodevi: Much faster CPU usage reading on large core count systems
|
||||
|
||||
Phoronix Test Suite 8.8.1-Hvaler
|
||||
30 May 2019
|
||||
|
||||
pts-core: Various minor tweaks/fixes
|
||||
phodevi: Fix Linux CPU thread detection in some scenarios where inner-cores may be offlined
|
||||
phodevi: More robust CPU vulnerability reporting
|
||||
phodevi: Add initial reporting for Windows vulnerabilities via mdstool-cli
|
||||
|
||||
Phoronix Test Suite 8.8.0-Hvaler
|
||||
13 May 2019
|
||||
|
||||
pts-core: Report on the POWER SMT setting in notes
|
||||
pts-core: Add new/updated suite reporting
|
||||
pts-core: In build-suite allow not binding test profile versions
|
||||
pts-core: For list-suites, only show suites that have been updated within the past four years
|
||||
pts_Graph: Report N on horizontal bar graphs
|
||||
phodevi: Intel Node Manager power_meter support for sys.power sensor
|
||||
|
||||
Phoronix Test Suite 8.8.0 Milestone 3
|
||||
9 May 2019
|
||||
|
||||
pts-core: Add experimental dynamic-result-viewer
|
||||
pts-core: Allow marking of test profile download files as optional
|
||||
pts-core: Add "everything" virtual suite
|
||||
pts-core: Set MESA_VK_WSI_PRESENT_MODE=immediate by default to work around possible 60 FPS RADV bug
|
||||
pts-core: Rename remove-from-result-file to remove-run-from-result-file
|
||||
pts-core: Add remove-results-from-result-file sub-command
|
||||
phodevi: Detect AVX-512 VNNI
|
||||
phodevi: Fix OpenJDK Java version detection
|
||||
phodevi: Expand memory temperature sensor to work for some ARM SBCs
|
||||
phodevi: Multi-monitor detection improvements
|
||||
phodevi: Add support for gpu.memory-usage sensor with new AMDGPU mem_busy_percent sysfs interface
|
||||
system_monitor: Add PERFORMANCE_PER_SENSOR= support for performance-per-(arbitrary sensor) rather than just supporting perf-per-Watt
|
||||
ob_auto_compare: Show other results in result file on box plot
|
||||
|
||||
Phoronix Test Suite 8.8.0 Milestone 2
|
||||
27 March 2019
|
||||
|
||||
pts-core: On new installs set 3.00% as deviation for increasing dynamic run count rather than 3.50%
|
||||
pts-core: Add FORCE_MIN_TIMES_TO_RUN_CUTOFF= environment variable to toggle cutoff for FORCE_MIN_TIMES_TO_RUN behavior
|
||||
pts-core: Add FORCE_TIMES_TO_RUN_MULTIPLE
|
||||
pts-core: Add strict-benchmark option for enabling various options to ensure stricter behavior about the number of times to run each benchmark
|
||||
pts-core: Add cpu-physical-threads / cpu-threads / auto-executable auto test run options
|
||||
phodevi: CPU-therm reporting via sysfs for CPU core temp
|
||||
phodevi: GPU-therm reporting via sysfs for GPU core temp
|
||||
|
||||
Phoronix Test Suite 8.8.0 Milestone 1
|
||||
16 March 2019
|
||||
|
||||
pts-core: Allow FORCE_TIMES_TO_RUN to override debug-run/debug-benchmark single run behavior
|
||||
pts-core: Various fallbacks/workarounds for those wanting to (unofficially) use PTS on Windows 8.1
|
||||
pts-core: Other small tweaks and optimizations
|
||||
pts-core: Fixes an odd scenario where on Windows after 2 runs, further runs of that test profile for current run could fail in select (random) instances
|
||||
pts-core: Write out system notes for each system when generating PDF result output
|
||||
pts-core: CSV output improvements
|
||||
pts-core: Add result-file-raw-to-csv for dumping the raw/individual benchmark result run data
|
||||
pts_Graph: Condensing improvements for large graphs
|
||||
pts_Graph: Various formatting improvements
|
||||
phodevi: Intel GPU reporting improvements
|
||||
phodevi: BIOS version reporting support extended to Windows
|
||||
phodevi: ipmitool DMCI power sensor reporting for at least some POWER servers
|
||||
|
||||
Phoronix Test Suite 8.6.1-Spydeberg
|
||||
21 February 2019
|
||||
|
||||
pts-core: Dynamically honoring the CLI terminal width (no longer cache the value on Linux/BSD/macOS)
|
||||
pts-core: BSD external dependency updates
|
||||
ob_auto_compare: Minor formatting updates
|
||||
|
||||
Phoronix Test Suite 8.6.0-Spydeberg
|
||||
5 February 2019
|
||||
|
||||
pts-core: Other small tweaks and fixes
|
||||
pts-core: Fix for "/installed" virtual suite not including the proprietary/commercial tests that are installed
|
||||
ob_auto_compare: Allow showing more results in the embedded percentile graphs
|
||||
|
||||
Phoronix Test Suite 8.6.0 Milestone 3
|
||||
27 January 2019
|
||||
|
||||
pts-core: Better handling on Windows when there are space(s) in the paths
|
||||
pts-core: Add __event_post_run_stats module hook
|
||||
pts-core: Inline display of result distributions from OpenBenchmarking.org on applicable results
|
||||
pts-core: Don't try to run tests from result file(s) or suite(s) that were not installed
|
||||
pts-core: More accurate time reporting when result files are passed to `phoronix-test-suite estimate-run-time`
|
||||
phodevi: Better reporting of NVMe drive strings on BSDs
|
||||
|
||||
Phoronix Test Suite 8.6.0 Milestone 2
|
||||
19 January 2019
|
||||
|
||||
pts-core: Update Mac OS X to macOS references
|
||||
pts-core: Add result-file-stats sub-command to show more test result statistics
|
||||
pts-core: Show geometric mean and harmonic mean data at end of benchmarking process when relevant as part of post-run stats
|
||||
pts-core: Improved formatting of file download text user interface for downloading of dependencies on Microsoft Windows
|
||||
pts-core: Fix Loop 'Test i of n' Reporting
|
||||
pts-core: A few warning fixes for PHP 7.3+
|
||||
pts-core: External dependency handling support for OpenMandriva Lx 4.0 (transitioned from urpmi to DNF)
|
||||
phodevi: Report Windows Subsystem for Linux (WSL) to the system layer string
|
||||
|
||||
Phoronix Test Suite 8.6.0 Milestone 1
|
||||
7 January 2019
|
||||
|
||||
pts-core: No longer clear test profile identifiers on secondary saved results
|
||||
pts-core: Add compare-results-to-baseline sub-command for comparing one result file (baseline) against a set of results for text look at relative perf
|
||||
pts-core: Minor fixes
|
||||
pts-core: Show wins and losses summary after testing on large result files
|
||||
pts-core: On two-way result files, after test completion show comparison of current result against previous result (baseline)
|
||||
pts-core: Add ShowPostRunStatistics user configuration XML option to toggle whether various test statistics are printed at the end of testing
|
||||
pts-core: Add recently-added-tests sub-command to show newly added test profiles / alternative to openbenchmarking-changes/recently-updated-tests
|
||||
pts-core: Allow outputting line graphs to terminal interface as basic box plot graphs
|
||||
phodevi: Improve Linux multiple network device reporting
|
||||
phodevi: LXQt desktop version reporting
|
||||
phodevi: Update for Microsoft Windows Server 2019
|
||||
system_monitor: Allow outputting system monitor graphs to terminal interface inline
|
||||
|
||||
Phoronix Test Suite 8.4.1-Skiptvet
|
||||
9 December 2018
|
||||
|
||||
pts-core: Workaround for RHEL 7.6 PHP having buggy CURL that is causing seg faults
|
||||
pts-core: Ensure "." doesn't get set in PATH when launching phoronix-test-suite
|
||||
pts-core: Allow PRESET_OPTIONS env var to be used when in batch mode
|
||||
pts-core: FreeBSD updates
|
||||
pts-core: Add PRESET_OPTIONS_VALUES environment variable that is similar to PRESET_OPTIONS but for explicit values
|
||||
phodevi: Improved Radeon AMDGPU frequency detection/reporting
|
||||
phodevi: Add support for reading GPU usage sensor with AMDGPU gpu_busy_percent sysfs interface
|
||||
phodevi: Updated gpu_voltage sensor for AMDGPU driver
|
||||
phodevi: Updated gpu_power sensor for AMDGPU driver
|
||||
phodevi: Updated gpu_fanspeed sensor for AMDGPU driver
|
||||
phodevi: Updated gpu_freq sensor for AMDGPU driver
|
||||
phodevi: Improved physical CPU core detection on DragonFlyBSD 5.4
|
||||
phodevi: Improved Spectre detection on DragonFlyBSD 5.4
|
||||
phodevi: Allow using NUM_CPU_CORES to override the number of exposed CPU threads/cores to tests (alternative to PTS_NPROC / NUMBER_OF_PROCESSORS)
|
||||
phodevi: Improved multi-disk reporting for non-Linux operating systems
|
||||
phodevi: Minor GPU string reporting improvement
|
||||
|
||||
Phoronix Test Suite 8.4.0-Skiptvet
|
||||
26 November 2018
|
||||
|
||||
phodevi: Various minor tweaks
|
||||
|
||||
Phoronix Test Suite 8.4.0 Milestone 3
|
||||
20 November 2018
|
||||
|
||||
pts-core: Various external dependency updates
|
||||
pts-core: Expose NUM_CPU_PHYSICAL_CORES to test profiles as alternative to NUM_CPU_CORES (logical count)
|
||||
pts-core: Fix possible situation of openbenchmarking-refresh not updating when IndexCacheTTL is set to 0
|
||||
pts-core: Allow branded colors to work in the terminal/CLI text graphs
|
||||
pts-core: Continued POWER9 support improvements
|
||||
pts-core: Add RemoveInstallDirectoryOnReinstall to toggle test re-installation behavior
|
||||
pts_Graph: Fix for sometimes tick marker text overlapping
|
||||
phodevi: Improved physical CPU core detection for architectures like POWER
|
||||
phodevi: Improved CPU cache size detection
|
||||
|
||||
Phoronix Test Suite 8.4.0 Milestone 2
|
||||
5 November 2018
|
||||
|
||||
pts-core: Allow passing PTS environment variables as arguments to PTS and then just have PTS set them in the environment
|
||||
pts-core: Add dry-run test option
|
||||
pts-core: Various result parser additions to help parsing of CSV frame-time data for more test profiles (games)
|
||||
phodevi: Vulkan driver reporting fix
|
||||
|
||||
Phoronix Test Suite 8.4.0 Milestone 1
|
||||
8 October 2018
|
||||
|
||||
phodevi: Report vRAM size on GPU model string in GB when over 1GB
|
||||
pts-core: At run-time also report if test is deprecated/broken
|
||||
pts-core: Add "node-npm" as an external dependency for Node.js + NPM
|
||||
phodevi: Drop information reporting support for the long ago Catalyst/fglrx driver stack that hasn't been supported/maintained in many years
|
||||
|
||||
Phoronix Test Suite 8.2.0-Rakkestad
|
||||
11 September 2018
|
||||
|
||||
pts-core: Add RequiresDisplay test profile property to indicate if the test profile explicitly requires a monitor / display server to work
|
||||
pts-core: Add RequiresNetwork test profile property to indicate if the test profile needs a working network connection
|
||||
pts-core: Add RequiresInternet test profile property to indicate if the test profile needs a working Internet connection
|
||||
pts-core: Don't install tests where the current run-time checks will fail
|
||||
phodevi: Improve CPU thread count detection when running under LXC
|
||||
phodevi: More robust DMI decode ignore value handling
|
||||
phodevi: Add extra fallback detection for LXC in system-layer
|
||||
|
||||
Phoronix Test Suite 8.2.0 Milestone 4
|
||||
7 September 2018
|
||||
|
||||
pts-core: Fix behavior of "Would you like to stop and install these tests now"
|
||||
pts-core: Add reinstall / re-install aliases to force-install
|
||||
ob_auto_compare: Default first to trying to do an automated local result comparison
|
||||
phodevi: Amlogic SoC detection based on meson_cpufreq driver
|
||||
phodevi: Rockchip SoC fallback detection
|
||||
phodevi: Embedded ARM Cortex / ARM part model detection
|
||||
phodevi: Expanded sensor coverage using Intel RAPL
|
||||
|
||||
Phoronix Test Suite 8.2.0 Milestone 3
|
||||
22 August 2018
|
||||
|
||||
pts-core: Minor updates to logic for determining how many times to dynamically increase run count on high variance results
|
||||
pts-core: Show deprecated tests too when running list-all-tests
|
||||
pts-core: Add DropNoisyResults option if wishing to not save results that have too high of deviation between runs
|
||||
pts-core: Add PTS_DOWNLOAD_CACHE_OVERRIDE environment variable option on make-download-cache
|
||||
pts-core: Add PTS_USER_PATH_OVERRIDE environment variable to override PTS_USER_PATH on initialization
|
||||
pts-core: Add PTS_DOWNLOAD_CACHING_PLATFORM_LIMIT environment variable for make-download-cache
|
||||
pts-core: Add list-cached-tests option
|
||||
|
||||
Phoronix Test Suite 8.2.0 Milestone 2
|
||||
15 August 2018
|
||||
|
||||
pts-core: Add DivideResultDivisor to result parser
|
||||
pts-core: Add libevent as possible external dependency
|
||||
pts-core: Alert the user when the test install directory is on a file-system mounted with 'noexec'
|
||||
pts-core: Optional support with PHP 7.3+ to also obtain network info using net_get_interfaces()
|
||||
pts-core: Fix possible alignment issue with value/spacer on outputting text-based result graphs
|
||||
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
|
||||
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
|
||||
pts-core: Show "popular tests" in the invalid command helper
|
||||
pts-core: Allow stress-run to be triggered from interactive mode
|
||||
pts-core: Allow comparing dynamic in-line result comparisons against local results when no Internet results matching or Internet not available
|
||||
phodevi: Reporting of L1TF / Level 1 Terminal Fault vulnerability
|
||||
pts_Graph: Tweaks to text sizing on vertical bar graphs
|
||||
|
||||
Phoronix Test Suite 8.2.0 Milestone 1
|
||||
21 July 2018
|
||||
|
||||
pts-core: Add readline-based autocompletion support for text-based menu selection lists
|
||||
pts-core: Add readline-based autocompletion support for the result file save name for trying to match existing result file identifiers
|
||||
pts-core: Add autocompletion support for result file identifier based on installed software/hardware
|
||||
pts-core: Various Alpine Linux external dependency updates
|
||||
pts-core: Various improvements to the Shell sub-command functionality, including auto-completion support
|
||||
phoromatic: From rootadmin allow the rootadmin to override/reset a user account password
|
||||
phodevi: Windows battery reporting discharge rate support
|
||||
phodevi: Improved multi CPU socket reporting on Windows
|
||||
phodevi: Various hardware/software detection improvements when running within Docker/containers
|
||||
pgo: New module to provide for automated compiler PGO (Profile Guided Optimizations) testing on GCC/Clang
|
||||
|
||||
Phoronix Test Suite 8.0.1-Aremark
|
||||
26 June 2018
|
||||
|
||||
|
||||
41
README.md
41
README.md
@@ -1,13 +1,13 @@
|
||||
# Phoronix Test Suite 8.0.1
|
||||
http://www.phoronix-test-suite.com/
|
||||
# Phoronix Test Suite 9.0.0m2
|
||||
https://www.phoronix-test-suite.com/
|
||||
|
||||
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.
|
||||
platform available for Linux, Solaris, macOS, Windows, 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 itself is an open-source framework for conducting
|
||||
automated tests along with reporting of test results, detection of installed
|
||||
@@ -30,10 +30,10 @@ 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
|
||||
[OpenBenchmarking.org](https://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
|
||||
[Phoromatic](https://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
|
||||
@@ -42,7 +42,7 @@ 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/>.
|
||||
<https://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
|
||||
@@ -50,11 +50,11 @@ the Phoronix Test Suite website.
|
||||
|
||||
## 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,
|
||||
The Phoronix Test Suite is supported on Linux, *BSD, Solaris, macOS, 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, RISC-V,
|
||||
PowerPC), but not all of the test profiles/suites are compatible with all
|
||||
architectures.
|
||||
|
||||
@@ -63,7 +63,8 @@ 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`.
|
||||
operating system package managers under the name `php`, `php7-cli`, `php5-cli`,
|
||||
or `php7`.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -81,11 +82,11 @@ Viewing installed system hardware and software is available via
|
||||
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.
|
||||
`https://openbenchmarking.org/result/1204293-BY-PHORONIX357` result file.
|
||||
|
||||
Additional information is available from the Phoronix Test Suite website
|
||||
<http://www.phoronix-test-suite.com/> and the material bundled within the
|
||||
<https://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
|
||||
<https://www.phoronix-test-suite.com/documentation/>. A man page is also bundled
|
||||
with the phoronix-test-suite software.
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2016, Phoronix Media
|
||||
Copyright (C) 2008 - 2016, 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
|
||||
|
||||
@@ -25,40 +25,6 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
|
||||
|
||||
- Shorten long change-logs on test profile pages - e.g. http://openbenchmarking.org/test/pts/hpcc
|
||||
|
||||
### POSSIBLE NEW TEST PROFILES ###
|
||||
|
||||
- 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]
|
||||
- WebGL / Chrome Test [http://phoronix.com/forums/showthread.php?73167-Some-Benchmarks-to-add-to-PTS-WebGL-and-Google-Chrome]
|
||||
- GtkPerf improvements [http://phoronix.com/forums/showthread.php?73047-gtkperf-I-m-maintaining-feature-requests-new-tests]
|
||||
- SIPP [http://sipp.sourceforge.net/]
|
||||
- oclGaussCrack [https://hashcat.net/oclGaussCrack/]
|
||||
- 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://parsec.cs.princeton.edu/parsec3-doc.htm
|
||||
- http://www.capsl.udel.edu/splash/Download.html
|
||||
- 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
|
||||
|
||||
### WEB SOCKET / HTML5 USER INTERFACE WORK ###
|
||||
|
||||
- Implement WebSocket security - add the password prompts from ~/.phoronix-test-suite/user-config.xml, etc
|
||||
@@ -72,4 +38,4 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
|
||||
- Implement the complementary WebSocket communication to HTTP pulls
|
||||
- Ensure sane validating of more user input / resource uploads
|
||||
- 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
|
||||
- Clean up the code and modularize more of the code
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "8.0.1"
|
||||
.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "9.0.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,12 +6,31 @@ 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, 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, macOS, Windows, 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 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 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.
|
||||
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 or wishing to re-install test(s) due to compiler or other environmental changes.
|
||||
.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.
|
||||
@@ -50,6 +69,12 @@ This option can be used if you wish to run all of the tests found in a supplied
|
||||
.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
|
||||
.B strict-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
This option is equivalent to the `benchmark` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.
|
||||
.TP
|
||||
.B strict-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
This option is equivalent to the `run` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.
|
||||
.TP
|
||||
.SH BATCH TESTING
|
||||
.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.
|
||||
@@ -69,6 +94,9 @@ This option will install the selected test(s) (if needed) and will proceed to ru
|
||||
.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 dry-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
This option and its arguments pre-set the Phoronix Test Suite batch run mode with enforcing of defaults to not save any results and other behavior intended for a dry/test run. This option is primarily intended for testing/evaluation purposes.
|
||||
.TP
|
||||
.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
|
||||
@@ -97,6 +125,9 @@ This option will list the OpenBenchmarking.org repositories currently linked to
|
||||
.B openbenchmarking-uploads
|
||||
This option will list any recent test result uploads from the system's IP address to OpenBenchmarking.org.
|
||||
.TP
|
||||
.B recently-added-tests
|
||||
This option will list the most recently added (newest) test profiles.
|
||||
.TP
|
||||
.B upload-result [Test Result]
|
||||
This option is used for uploading a test result to OpenBenchmarking.org.
|
||||
.TP
|
||||
@@ -106,38 +137,25 @@ 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 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 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 INFORMATION
|
||||
.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-all-tests
|
||||
This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories. Unlike the other test listing options, list-all-tests will show deprecated tests, potentially broken tests, or other tests not recommended for all environments. The only check in place is ensuring the test profiles are at least compatible with the operating system in use.
|
||||
.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 where supported on the system and are of a verified state.
|
||||
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 (the same behavior as using the list-cached-tests sub-command), 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.
|
||||
.TP
|
||||
.B list-cached-tests
|
||||
This option will list all test profiles where any needed test profiles are already cached or available from the local system under test. This is primarily useful if testing offline/behind-the-firewall and other use-cases where wanting to rely only upon local data.
|
||||
.TP
|
||||
.B 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.
|
||||
.TP
|
||||
@@ -212,6 +230,12 @@ This option will generate a candlestick graph showing the distribution of result
|
||||
.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 compare-results-to-baseline [Test Result] [Test Result]
|
||||
This option will allows you to specify a result as a baseline (first parameter) and a second result file (second parameter) that will offer some analysis for showing how the second result compares to the first in matching tests.
|
||||
.TP
|
||||
.B compare-results-two-way [Test Result]
|
||||
This option will allows you to specify a result file and from there to compare two individual runs within that result file for looking at wins/losses and other metrics in a head-to-head type comparison.
|
||||
.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
|
||||
@@ -224,12 +248,15 @@ This option will manually merge multiple sets of test results generated by the P
|
||||
.B 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.
|
||||
.TP
|
||||
.B 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.
|
||||
.TP
|
||||
.B remove-result [Test Result]
|
||||
This option will permanently remove the saved file set that is set as the first argument.
|
||||
.TP
|
||||
.B remove-results-from-result-file [Test Result]
|
||||
This option is used if there are test results (benchmarks) to be dropped from a given result file. The user must specify a saved results file and then they will be prompted to select the tests/benchmarks to remove.
|
||||
.TP
|
||||
.B remove-run-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.
|
||||
.TP
|
||||
.B 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.
|
||||
.TP
|
||||
@@ -239,6 +266,15 @@ This option is used if you wish to change the name of the saved name of a result
|
||||
.B 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.
|
||||
.TP
|
||||
.B result-file-confidence [Test Result]
|
||||
This option will read a saved test results file and display various statistics on the confidence of the results with the standard deviation, three-sigma values, and other metrics while color-coding "passing" results in green.
|
||||
.TP
|
||||
.B result-file-raw-to-csv [Test Result]
|
||||
This option will read a saved test results file and output the raw result file run data to a CSV file. This raw (individual) result file output is intended for data analytic purposes where the result-file-to-csv is more end-user-ready.
|
||||
.TP
|
||||
.B result-file-stats [Test Result]
|
||||
This option is used if you wish to analyze a result file by seeing various statistics on the result data for result files containing at least two sets of data.
|
||||
.TP
|
||||
.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
|
||||
@@ -254,7 +290,7 @@ 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
|
||||
.B winners-and-losers [Test Result]
|
||||
.B wins-and-losses [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
|
||||
@@ -278,7 +314,7 @@ This option will display the Phoronix Test Suite client version.
|
||||
.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.
|
||||
This option can be used for easily adding a module to the AutoLoadModules 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.
|
||||
@@ -293,7 +329,7 @@ This option will allow you to configure all available end-user options for a Pho
|
||||
This option can be used for debugging a Phoronix Test Suite module.
|
||||
.TP
|
||||
.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.
|
||||
This option can be used for easily removing a module from the AutoLoadModules 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
|
||||
@@ -311,26 +347,26 @@ This option can be used for resetting the Phoronix Test Suite user configuration
|
||||
.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 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.
|
||||
.TP
|
||||
.SH RESULT VIEWER
|
||||
.B n
|
||||
_
|
||||
.TP
|
||||
.SH SEE ALSO
|
||||
.B Websites:
|
||||
.br
|
||||
http://www.phoronix-test-suite.com/
|
||||
https://www.phoronix-test-suite.com/
|
||||
.br
|
||||
http://commercial.phoronix-test-suite.com/
|
||||
https://commercial.phoronix-test-suite.com/
|
||||
.br
|
||||
http://www.openbenchmarking.org/
|
||||
https://www.openbenchmarking.org/
|
||||
.br
|
||||
http://www.phoronix.com/
|
||||
https://www.phoronix.com/
|
||||
.br
|
||||
http://www.phoronix.com/forums/
|
||||
https://www.phoronix.com/forums/
|
||||
.SH AUTHORS
|
||||
Copyright 2008 - 2018 by Phoronix Media, Michael Larabel.
|
||||
Copyright 2008 - 2019 by Phoronix Media, Michael Larabel.
|
||||
.TP
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
<p>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 <em>~/.phoronix-test-suite/download-cache/</em> or <em>/usr/share/phoronix-test-suite/download-cache/</em> 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.</p>
|
||||
<p><strong>$ phoronix-test-suite make-openbenchmarking-cache</strong></p>
|
||||
<p>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.</p>
|
||||
<p><strong>$ phororonix-test-suite start-phoromatic-server</strong></p>
|
||||
<p><strong>$ phoronix-test-suite start-phoromatic-server</strong></p>
|
||||
<p>Proceed to start the Phoromatic Server and operate as normal.</p>
|
||||
<p>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.</p>
|
||||
<h3>Use Case C: Phoromatic Across The Internet</h3>
|
||||
|
||||
@@ -46,7 +46,7 @@ It's possible to run the Phoronix Test Suite and Phoromatic Server without a per
|
||||
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**
|
||||
**$ phoronix-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
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -2,7 +2,7 @@
|
||||
# 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 is the most comprehensive testing and benchmarking platform available for Linux, Solaris, macOS, Windows, 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.
|
||||
|
||||
@@ -20,9 +20,23 @@ The following options are currently supported by the Phoronix Test Suite client.
|
||||
|
||||
---
|
||||
|
||||
## 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.
|
||||
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 or wishing to re-install test(s) due to compiler or other environmental changes.
|
||||
#### 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] ...
|
||||
@@ -49,6 +63,10 @@ This option will query OpenBenchmarking.org to run random benchmarks and result
|
||||
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.
|
||||
#### strict-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
This option is equivalent to the `benchmark` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.
|
||||
#### strict-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
This option is equivalent to the `run` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.
|
||||
|
||||
## Batch Testing
|
||||
#### batch-benchmark [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
@@ -63,6 +81,8 @@ This option is used to configure the batch mode options for the Phoronix Test Su
|
||||
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.
|
||||
#### dry-run [Test | Suite | OpenBenchmarking ID | Test Result] ...
|
||||
This option and its arguments pre-set the Phoronix Test Suite batch run mode with enforcing of defaults to not save any results and other behavior intended for a dry/test run. This option is primarily intended for testing/evaluation purposes.
|
||||
#### 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.
|
||||
|
||||
@@ -83,6 +103,8 @@ This option is used for refreshing the stored OpenBenchmarking.org repostory inf
|
||||
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.
|
||||
#### recently-added-tests
|
||||
This option will list the most recently added (newest) test profiles.
|
||||
#### upload-result [Test Result]
|
||||
This option is used for uploading a test result to OpenBenchmarking.org.
|
||||
#### upload-test-profile
|
||||
@@ -90,29 +112,19 @@ This option can be used for uploading a test profile to your account on OpenBenc
|
||||
#### 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.
|
||||
|
||||
## 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.
|
||||
|
||||
## Information
|
||||
#### info [Test | Suite | OpenBenchmarking ID | Test Result]
|
||||
This option will show details about the supplied test, suite, virtual suite, or result file.
|
||||
#### list-all-tests
|
||||
This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories. Unlike the other test listing options, list-all-tests will show deprecated tests, potentially broken tests, or other tests not recommended for all environments. The only check in place is ensuring the test profiles are at least compatible with the operating system in use.
|
||||
#### 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.
|
||||
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 (the same behavior as using the list-cached-tests sub-command), 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-cached-tests
|
||||
This option will list all test profiles where any needed test profiles are already cached or available from the local system under test. This is primarily useful if testing offline/behind-the-firewall and other use-cases where wanting to rely only upon local data.
|
||||
#### 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
|
||||
@@ -165,6 +177,10 @@ This option can be used for validating a Phoronix Test Suite test suite as being
|
||||
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.
|
||||
#### compare-results-to-baseline [Test Result] [Test Result]
|
||||
This option will allows you to specify a result as a baseline (first parameter) and a second result file (second parameter) that will offer some analysis for showing how the second result compares to the first in matching tests.
|
||||
#### compare-results-two-way [Test Result]
|
||||
This option will allows you to specify a result file and from there to compare two individual runs within that result file for looking at wins/losses and other metrics in a head-to-head type comparison.
|
||||
#### 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]
|
||||
@@ -173,16 +189,24 @@ This option will extract a single set of test results from a saved results file
|
||||
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.
|
||||
#### remove-results-from-result-file [Test Result]
|
||||
This option is used if there are test results (benchmarks) to be dropped from a given result file. The user must specify a saved results file and then they will be prompted to select the tests/benchmarks to remove.
|
||||
#### remove-run-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.
|
||||
#### 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-confidence [Test Result]
|
||||
This option will read a saved test results file and display various statistics on the confidence of the results with the standard deviation, three-sigma values, and other metrics while color-coding "passing" results in green.
|
||||
#### result-file-raw-to-csv [Test Result]
|
||||
This option will read a saved test results file and output the raw result file run data to a CSV file. This raw (individual) result file output is intended for data analytic purposes where the result-file-to-csv is more end-user-ready.
|
||||
#### result-file-stats [Test Result]
|
||||
This option is used if you wish to analyze a result file by seeing various statistics on the result data for result files containing at least two sets of data.
|
||||
#### 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]
|
||||
@@ -193,7 +217,7 @@ This option will read a saved test results file and output the system hardware a
|
||||
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]
|
||||
#### wins-and-losses [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
|
||||
@@ -212,7 +236,7 @@ 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.
|
||||
This option can be used for easily adding a module to the AutoLoadModules 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]
|
||||
@@ -222,7 +246,7 @@ This option will allow you to configure all available end-user options for a Pho
|
||||
#### 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.
|
||||
This option can be used for easily removing a module from the AutoLoadModules 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
|
||||
@@ -236,16 +260,16 @@ This option can be used for resetting the Phoronix Test Suite user configuration
|
||||
#### 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.
|
||||
|
||||
## Result Viewer
|
||||
#### start-result-viewer
|
||||
Start the web-based result viewer.
|
||||
|
||||
# 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.*
|
||||
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 AutoLoadModules 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.*
|
||||
|
||||
---
|
||||
|
||||
@@ -274,6 +298,9 @@ This module utilizes the following environmental variables: EXPORT_RESULTS_HTML_
|
||||
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.
|
||||
|
||||
### Dynamic Result Viewer
|
||||
This module pre-loads the HTTP dynamic result viewer for Phoronix Test Suite data.
|
||||
|
||||
### 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.
|
||||
@@ -284,7 +311,7 @@ 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..
|
||||
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
|
||||
@@ -297,6 +324,10 @@ This module alerts the user if the system configuration may not be the right one
|
||||
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
|
||||
@@ -324,7 +355,7 @@ 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.
|
||||
This module utilizes the following environmental variables: MONITOR, PERFORMANCE_PER_WATT, PERFORMANCE_PER_SENSOR, 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.
|
||||
@@ -348,7 +379,7 @@ This module utilizes the following environmental variables: WATCHDOG_SENSOR, WAT
|
||||
# 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.
|
||||
The Phoronix Test Suite supports Linux, Apple macOS, 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 macOS, 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.
|
||||
|
||||
@@ -397,11 +428,9 @@ Running *install-sh* from the root directory of the Phoronix Test Suite will ins
|
||||
|
||||
### 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.
|
||||
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. However, at times this package may be out-of-date compared to upstream stable.
|
||||
|
||||
### 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) .
|
||||
@@ -416,8 +445,8 @@ The Phoronix Test Suite core (pts-core) is supported on Solaris and OpenSolaris
|
||||
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.
|
||||
### MacOS Installation
|
||||
The Phoronix Test Suite is fully supported on Apple's macOS operating system. PHP ships with macOS 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.
|
||||
@@ -435,7 +464,7 @@ Below are a list of the operating systems that currently have external dependenc
|
||||
---
|
||||
|
||||
|
||||
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
|
||||
Alpine LinuxAmazonAngstromArch LinuxCentOSClearOSClearOS Core ServerDebianDragonFlyBSDFedoraFluxbuntuGNU KFreeBSDGentooGoobuntuHPJoli CloudLinaroLinux Embedded Development EnvironmentLinux MintMEPISMac OS XMacPortsMageiaMandrivaMeeGoMicrosoft WindowsMidnightBSDMoblinMythbuntuNetBSDNexenta CoreOLPCOpenIndianaOpenMandrivaOpenMandrivaLinuxOpenSolarisOpenSuSEOptwareOracle ServerPCLinuxOSPTS Desktop LivePTS Linux LivePalmPardus LinuxRed Hat EnterpriseRed Hat Enterprise ServerSUSESUSE LinuxScientificScientificSLSolusSolus LinuxTermuxUbuntuVoid LinuxZenwalkgNewSensemacOS Brew
|
||||
# Configuration
|
||||
|
||||
## User Files & Folders
|
||||
@@ -491,8 +520,14 @@ If you want to ensure that the time for a given Phoronix Test Suite process does
|
||||
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_TIMES_TO_RUN_MULTIPLE**
|
||||
This option allows specifying a multiple for increasing the number of times a test will run based upon the original TimesToRun value specified in the test definition. This allows for increasing the expected times to run based on a multiple of that default rather than a static value.
|
||||
**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.
|
||||
**FORCE_MIN_TIMES_TO_RUN_CUTOFF**
|
||||
When used in conjunction with FORCE_MIN_TIMES_TO_RUN, the override value will only be applied to test profiles where its average run-time length (in minutes) is less than the value specified by FORCE_MIN_TIMES_TO_RUN_CUTOFF.
|
||||
**IGNORE_RUNS**
|
||||
IGNORE_RUNS can be passed a comma-separated list of runs to skip on each benchmark. For example, IGNORE_RUNS=1 would always drop the first run from being recorded.
|
||||
**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**
|
||||
@@ -577,6 +612,8 @@ Virtual test suites can be installed and run just like a normal XML test suite a
|
||||
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.
|
||||
#### Every PTS Test pts/everything
|
||||
This is a collection of every test profile found within the specified OpenBenchmarking.org repository, including unsupported tests.
|
||||
#### 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
|
||||
@@ -613,14 +650,14 @@ This is a collection of test profiles found within the specified OpenBenchmarkin
|
||||
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.
|
||||
#### 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.
|
||||
#### 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
|
||||
@@ -633,6 +670,8 @@ This is a collection of test profiles found within the specified OpenBenchmarkin
|
||||
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.
|
||||
#### Every SYSTEM Test system/everything
|
||||
This is a collection of every test profile found within the specified OpenBenchmarking.org repository, including unsupported tests.
|
||||
#### 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
|
||||
@@ -675,6 +714,96 @@ This is a collection of test profiles found within the specified OpenBenchmarkin
|
||||
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.
|
||||
#### All GIT Tests git/all
|
||||
This is a collection of all test profiles found within the specified OpenBenchmarking.org repository.
|
||||
#### Installed Tests git/installed
|
||||
This is a collection of test profiles found within the specified OpenBenchmarking.org repository that are already installed on the system under test.
|
||||
#### Every GIT Test git/everything
|
||||
This is a collection of every test profile found within the specified OpenBenchmarking.org repository, including unsupported tests.
|
||||
#### Linux Operating System Tests git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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 git/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.
|
||||
#### All WINDOWS Tests windows/all
|
||||
This is a collection of all test profiles found within the specified OpenBenchmarking.org repository.
|
||||
#### Installed Tests windows/installed
|
||||
This is a collection of test profiles found within the specified OpenBenchmarking.org repository that are already installed on the system under test.
|
||||
#### Every WINDOWS Test windows/everything
|
||||
This is a collection of every test profile found within the specified OpenBenchmarking.org repository, including unsupported tests.
|
||||
#### Linux Operating System Tests windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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 windows/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.
|
||||
|
||||
# Component Testing
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
</head>
|
||||
<body>
|
||||
<h1>Overview</h1>
|
||||
<p>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.</p>
|
||||
<p>The Phoronix Test Suite is the most comprehensive testing and benchmarking platform available for Linux, Solaris, macOS, Windows, 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.</p>
|
||||
<p>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 <a href="http://openbenchmarking.org/">OpenBenchmarking.org</a> 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.</p>
|
||||
<p>Running the Phoronix Test Suite for the first time can be as simple as issuing a command such as <em>phoronix-test-suite benchmark c-ray</em>, 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.</p>
|
||||
<h1>OpenBenchmarking.org</h1>
|
||||
|
||||
@@ -5,10 +5,29 @@
|
||||
</head>
|
||||
<body>
|
||||
<p>The following options are currently supported by the Phoronix Test Suite client. A list of available options can also be found by running <em>phoronix-test-suite help.</em><hr></p>
|
||||
<h1>System</h1>
|
||||
<h3>diagnostics<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>interactive<em> </em>
|
||||
</h3>
|
||||
<p>A simple text-driven interactive interface to the Phoronix Test Suite.</p>
|
||||
<h3>php-conf<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>shell<em> </em>
|
||||
</h3>
|
||||
<p>A simple text-driven shell interface / helper to the Phoronix Test Suite. Ideal for those that may be new to the Phoronix Test Suite</p>
|
||||
<h3>system-info<em> </em>
|
||||
</h3>
|
||||
<p>Display the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.</p>
|
||||
<h3>system-sensors<em> </em>
|
||||
</h3>
|
||||
<p>Display the installed system hardware and software sensors in real-time as detected by the Phoronix Test Suite Phodevi Library.</p>
|
||||
<h1>Test Installation</h1>
|
||||
<h3>force-install<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<p>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 or wishing to re-install test(s) due to compiler or other environmental changes.</p>
|
||||
<h3>install<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
@@ -46,6 +65,12 @@
|
||||
<h3>stress-run<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>strict-benchmark<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>This option is equivalent to the `benchmark` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.</p>
|
||||
<h3>strict-run<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>This option is equivalent to the `run` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.</p>
|
||||
<h1>Batch Testing</h1>
|
||||
<h3>batch-benchmark<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
@@ -65,6 +90,9 @@
|
||||
<h3>default-run<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>dry-run<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>This option and its arguments pre-set the Phoronix Test Suite batch run mode with enforcing of defaults to not save any results and other behavior intended for a dry/test run. This option is primarily intended for testing/evaluation purposes.</p>
|
||||
<h3>internal-run<em> [Test | Suite | OpenBenchmarking ID | Test Result] ...</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
@@ -93,6 +121,9 @@
|
||||
<h3>openbenchmarking-uploads<em> </em>
|
||||
</h3>
|
||||
<p>This option will list any recent test result uploads from the system's IP address to OpenBenchmarking.org.</p>
|
||||
<h3>recently-added-tests<em> </em>
|
||||
</h3>
|
||||
<p>This option will list the most recently added (newest) test profiles.</p>
|
||||
<h3>upload-result<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option is used for uploading a test result to OpenBenchmarking.org.</p>
|
||||
@@ -102,38 +133,25 @@
|
||||
<h3>upload-test-suite<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h1>System</h1>
|
||||
<h3>diagnostics<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>interactive<em> </em>
|
||||
</h3>
|
||||
<p>A simple text-driven interactive interface to the Phoronix Test Suite.</p>
|
||||
<h3>php-conf<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>shell<em> </em>
|
||||
</h3>
|
||||
<p>A simple text-driven shell interface / helper to the Phoronix Test Suite. Ideal for those that may be new to the Phoronix Test Suite</p>
|
||||
<h3>system-info<em> </em>
|
||||
</h3>
|
||||
<p>Display the installed system hardware and software information as detected by the Phoronix Test Suite Phodevi Library.</p>
|
||||
<h3>system-sensors<em> </em>
|
||||
</h3>
|
||||
<p>Display the installed system hardware and software sensors in real-time as detected by the Phoronix Test Suite Phodevi Library.</p>
|
||||
<h1>Information</h1>
|
||||
<h3>info<em> [Test | Suite | OpenBenchmarking ID | Test Result]</em>
|
||||
</h3>
|
||||
<p>This option will show details about the supplied test, suite, virtual suite, or result file.</p>
|
||||
<h3>list-all-tests<em> </em>
|
||||
</h3>
|
||||
<p>This option will list all test profiles that are available from the enabled OpenBenchmarking.org repositories. Unlike the other test listing options, list-all-tests will show deprecated tests, potentially broken tests, or other tests not recommended for all environments. The only check in place is ensuring the test profiles are at least compatible with the operating system in use.</p>
|
||||
<h3>list-available-suites<em> </em>
|
||||
</h3>
|
||||
<p>This option will list all test suites that are available from the enabled OpenBenchmarking.org repositories.</p>
|
||||
<h3>list-available-tests<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<p>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 (the same behavior as using the list-cached-tests sub-command), unless using the list-all-tests option to override this behavior.</p>
|
||||
<h3>list-available-virtual-suites<em> </em>
|
||||
</h3>
|
||||
<p>This option will list all available virtual test suites that can be dynamically created based upon the available tests from enabled OpenBenchmarking.org repositories.</p>
|
||||
<h3>list-cached-tests<em> </em>
|
||||
</h3>
|
||||
<p>This option will list all test profiles where any needed test profiles are already cached or available from the local system under test. This is primarily useful if testing offline/behind-the-firewall and other use-cases where wanting to rely only upon local data.</p>
|
||||
<h3>list-installed-dependencies<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
@@ -208,6 +226,12 @@
|
||||
<h3>auto-sort-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option is used if you wish to automatically attempt to sort the results by their result identifier string.</p>
|
||||
<h3>compare-results-to-baseline<em> [Test Result] [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option will allows you to specify a result as a baseline (first parameter) and a second result file (second parameter) that will offer some analysis for showing how the second result compares to the first in matching tests.</p>
|
||||
<h3>compare-results-two-way<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option will allows you to specify a result file and from there to compare two individual runs within that result file for looking at wins/losses and other metrics in a head-to-head type comparison.</p>
|
||||
<h3>edit-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option is used if you wish to edit the title and description of an existing result file.</p>
|
||||
@@ -220,12 +244,15 @@
|
||||
<h3>refresh-graphs<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>remove-from-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>remove-result<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option will permanently remove the saved file set that is set as the first argument.</p>
|
||||
<h3>remove-results-from-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option is used if there are test results (benchmarks) to be dropped from a given result file. The user must specify a saved results file and then they will be prompted to select the tests/benchmarks to remove.</p>
|
||||
<h3>remove-run-from-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>rename-identifier-in-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
@@ -235,6 +262,15 @@
|
||||
<h3>reorder-result-file<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h3>result-file-confidence<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option will read a saved test results file and display various statistics on the confidence of the results with the standard deviation, three-sigma values, and other metrics while color-coding "passing" results in green.</p>
|
||||
<h3>result-file-raw-to-csv<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option will read a saved test results file and output the raw result file run data to a CSV file. This raw (individual) result file output is intended for data analytic purposes where the result-file-to-csv is more end-user-ready.</p>
|
||||
<h3>result-file-stats<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>This option is used if you wish to analyze a result file by seeing various statistics on the result data for result files containing at least two sets of data.</p>
|
||||
<h3>result-file-to-csv<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
@@ -250,7 +286,7 @@
|
||||
<h3>show-result<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>Open up the test results in the Phoronix Test Suite Result Viewer or on OpenBenchmarking.org.</p>
|
||||
<h3>winners-and-losers<em> [Test Result]</em>
|
||||
<h3>wins-and-losses<em> [Test Result]</em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h1>Other</h1>
|
||||
@@ -275,7 +311,7 @@
|
||||
<h1>Modules</h1>
|
||||
<h3>auto-load-module<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<p>This option can be used for easily adding a module to the AutoLoadModules 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.</p>
|
||||
<h3>list-modules<em> </em>
|
||||
</h3>
|
||||
<p>This option will list all of the available Phoronix Test Suite modules on this system.</p>
|
||||
@@ -290,7 +326,7 @@
|
||||
<p>This option can be used for debugging a Phoronix Test Suite module.</p>
|
||||
<h3>unload-module<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<p>This option can be used for easily removing a module from the AutoLoadModules 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.</p>
|
||||
<h1>User Configuration</h1>
|
||||
<h3>enterprise-setup<em> </em>
|
||||
</h3>
|
||||
@@ -307,13 +343,13 @@
|
||||
<h3>user-config-set<em> </em>
|
||||
</h3>
|
||||
<p>This option can be used for setting an XML value in the Phoronix Test Suite user configuration file.</p>
|
||||
<h1>Web / GUI Support</h1>
|
||||
<h3>gui<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h1>Phoromatic</h1>
|
||||
<h3>start-phoromatic-server<em> </em>
|
||||
</h3>
|
||||
<p>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.</p>
|
||||
<h1>Result Viewer</h1>
|
||||
<h3>start-result-viewer<em> </em>
|
||||
</h3>
|
||||
<p>Start the web-based result viewer.</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -4,7 +4,7 @@
|
||||
</head>
|
||||
<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>The Phoronix Test Suite supports Linux, Apple macOS, 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 macOS, 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, 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>
|
||||
@@ -37,10 +37,8 @@
|
||||
<p>Running <em>install-sh</em> from the root directory of the Phoronix Test Suite will install the software for system-wide access. By default the <em>phoronix-test-suite</em> executable is in <em>/usr/bin/</em>, the Phoronix Test Suite files in <em>/usr/share/phoronix-test-suite/</em>, and the documentation in /<em>usr/share/doc/phoronix-test-suite/</em>. Root access is required. The default installation prefix is /usr/ but can be adjusted as the first argument (example: <em>install-sh /home/user/</em> to install the Phoronix Test Suite in your home directory).</p>
|
||||
<h2>Debian/Ubuntu Installation</h2>
|
||||
<p>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 <em>phoronix-test-suite</em> executable in <em>/usr/bin/</em>, the Phoronix Test Suite files in <em>/usr/share/phoronix-test-suite/</em>, and the documentation in <em>/usr/share/doc/phoronix-test-suite/</em>.</p>
|
||||
<p>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.</p>
|
||||
<p>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 <em>disable_functions</em> line within the <em>/etc/php5/cli/php.ini</em> file. This may also affect other Linux distribution support too if the vendor disables access to the PCNTL functions.</p>
|
||||
<h2>Fedora / Red Hat Installation</h2>
|
||||
<p>The Phoronix Test Suite can be installed on Fedora, Red Hat Enterprise Linux, and CentOS systems using the generic installation method. Alternatively, a <em>phoronix-test-suite</em> 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.</p>
|
||||
<p>The Phoronix Test Suite can be installed on Fedora, Red Hat Enterprise Linux, and CentOS systems using the generic installation method. Alternatively, a <em>phoronix-test-suite</em> 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. However, at times this package may be out-of-date compared to upstream stable.</p>
|
||||
<h2>Gentoo Installation</h2>
|
||||
<p>Gentoo ebuild's for the Phoronix Test Suite have been created by users and can be currently found in the <a href="http://bugs.gentoo.org/show_bug.cgi?id=216656">Gentoo BugZilla</a>.</p>
|
||||
<h2>Mandriva Installation</h2>
|
||||
@@ -50,8 +48,8 @@
|
||||
<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/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>MacOS Installation</h2>
|
||||
<p>The Phoronix Test Suite is fully supported on Apple's macOS operating system. PHP ships with macOS 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 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>
|
||||
|
||||
@@ -1 +1,10 @@
|
||||
<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>
|
||||
<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>OpenMandrivaLinux</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>
|
||||
|
||||
@@ -55,8 +55,14 @@
|
||||
<p>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.</p>
|
||||
<p><strong>FORCE_TIMES_TO_RUN</strong></p>
|
||||
<p>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.</p>
|
||||
<p><strong>FORCE_TIMES_TO_RUN_MULTIPLE</strong></p>
|
||||
<p>This option allows specifying a multiple for increasing the number of times a test will run based upon the original TimesToRun value specified in the test definition. This allows for increasing the expected times to run based on a multiple of that default rather than a static value.</p>
|
||||
<p><strong>FORCE_MIN_TIMES_TO_RUN</strong></p>
|
||||
<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>FORCE_MIN_TIMES_TO_RUN_CUTOFF</strong></p>
|
||||
<p>When used in conjunction with FORCE_MIN_TIMES_TO_RUN, the override value will only be applied to test profiles where its average run-time length (in minutes) is less than the value specified by FORCE_MIN_TIMES_TO_RUN_CUTOFF.</p>
|
||||
<p><strong>IGNORE_RUNS</strong></p>
|
||||
<p>IGNORE_RUNS can be passed a comma-separated list of runs to skip on each benchmark. For example, IGNORE_RUNS=1 would always drop the first run from being recorded.</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>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -2,17 +2,17 @@ The Phoronix Test Suite itself is an open-source framework for conducting automa
|
||||
|
||||
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](https://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](https://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/>.
|
||||
Professional support and custom engineering for the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org is available by contacting <https://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 website.
|
||||
|
||||
## 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 is supported on Linux, *BSD, Solaris, macOS, 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, RISC-V, 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.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`.
|
||||
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`, `php7-cli`, `php5-cli`, or `php7`.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -20,6 +20,6 @@ The process to download, install/setup, execute, and report the results of a ben
|
||||
|
||||
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 `https://openbenchmarking.org/result/1204293-BY-PHORONIX357` result file.
|
||||
|
||||
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.
|
||||
Additional information is available from the Phoronix Test Suite website <https://www.phoronix-test-suite.com/> and the material bundled within the `phoronix-test-suite/documentation/` directory or via <https://www.phoronix-test-suite.com/documentation/>. A man page is also bundled with the phoronix-test-suite software.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
# Phoronix Test Suite
|
||||
# URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
# Copyright (C) 2008 - 2018, Phoronix Media
|
||||
# Copyright (C) 2008 - 2019, 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
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
#
|
||||
# Phoronix Test Suite
|
||||
# URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
# Copyright (C) 2008 - 2018, Phoronix Media
|
||||
# Copyright (C) 2008 - 2018, Michael Larabel
|
||||
# Copyright (C) 2008 - 2019, Phoronix Media
|
||||
# Copyright (C) 2008 - 2019, 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
|
||||
@@ -21,6 +21,12 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
if which sed >/dev/null 2>&1 ;
|
||||
then
|
||||
# Remove the current dir from PATH if present, as it causes infinitely resursive shell scripts.
|
||||
PATH="`echo $PATH | sed -e s/:[\.]:/:/g -e s/:[\.]// -e s/[\.]://`"
|
||||
fi
|
||||
|
||||
# Full path to root directory of the actual Phoronix Test Suite code
|
||||
# export PTS_DIR=$(readlink -f `dirname $0`)
|
||||
export PTS_DIR=`pwd`
|
||||
@@ -53,18 +59,12 @@ then
|
||||
elif [ -x /usr/bin/php7 ] || [ -x /usr/local/bin/php7 ] || [ -x /usr/pkg/bin/php7 ]
|
||||
then
|
||||
export PHP_BIN="php7"
|
||||
elif [ -x /usr/bin/php5 ] || [ -x /usr/local/bin/php5 ] || [ -x /usr/pkg/bin/php5 ]
|
||||
then
|
||||
export PHP_BIN="php5"
|
||||
elif [ -x /usr/bin/php ] || [ -x /usr/pkg/bin/php ]
|
||||
then
|
||||
export PHP_BIN="php"
|
||||
elif [ -x /usr/php7/bin/php ]
|
||||
then
|
||||
export PHP_BIN="/usr/php7/bin/php"
|
||||
elif [ -x /usr/php5/bin/php ]
|
||||
then
|
||||
export PHP_BIN="/usr/php5/bin/php"
|
||||
elif [ -x /usr/php/bin/php ]
|
||||
then
|
||||
export PHP_BIN="/usr/php/bin/php"
|
||||
@@ -92,6 +92,12 @@ then
|
||||
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"
|
||||
@@ -113,9 +119,9 @@ if [ "X$PHP_BIN" = "X" ]
|
||||
then
|
||||
cat <<'EOT'
|
||||
|
||||
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/
|
||||
PHP must be installed for the Phoronix Test Suite
|
||||
The PHP command-line package is commonly called php-cli, php7-cli, or php.
|
||||
For more information visit: https://www.phoronix-test-suite.com/
|
||||
|
||||
EOT
|
||||
|
||||
@@ -123,7 +129,7 @@ if [ -x /usr/bin/zypper ]
|
||||
then
|
||||
# SUSE / OpenSUSE
|
||||
echo "The command to likely run for your operating system is: "
|
||||
echo "# zypper install php7 php7-zip"
|
||||
echo "# zypper install php7 php7-zip php7-openssl"
|
||||
echo " "
|
||||
elif [ -x /usr/bin/apt-get ]
|
||||
then
|
||||
@@ -135,7 +141,7 @@ 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 "# dnf install php-cli php-xml php-json"
|
||||
echo " "
|
||||
elif [ -x /usr/bin/yum ]
|
||||
then
|
||||
@@ -147,7 +153,7 @@ 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
|
||||
@@ -159,9 +165,9 @@ 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 "# pkg install php73 php73-dom php73-zip php73-json php73-simplexml php73-openssl"
|
||||
echo " "
|
||||
elif [ -x /usr/local/swupd ]
|
||||
elif [ -x /usr/bin/swupd ]
|
||||
then
|
||||
# Clear Linux
|
||||
echo "The command to likely run for your operating system is: "
|
||||
@@ -195,7 +201,7 @@ elif [ -x /sbin/apk ]
|
||||
then
|
||||
# Alpine Linux
|
||||
echo "The command to likely run for your operating system is: "
|
||||
echo "# apk add php5 php5-dom php5-zip php5-json"
|
||||
echo "# apk add php7 php7-dom php7-zip php7-json php7-simplexml"
|
||||
echo " "
|
||||
elif [ -x /usr/bin/urpmi ]
|
||||
then
|
||||
@@ -213,7 +219,7 @@ 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 "# mport install php71 php71-dom php71-zip php71-json php71-simplexml"
|
||||
echo " "
|
||||
elif [ -x /bin/opkg ]
|
||||
then
|
||||
@@ -249,7 +255,7 @@ then
|
||||
cat <<'EOT'
|
||||
|
||||
To run the Phoronix Test Suite locally you must first change directories to phoronix-test-suite/
|
||||
or install the program using the install-sh script. For support visit: http://www.phoronix-test-suite.com/
|
||||
or install the program using the install-sh script. For support visit: https://www.phoronix-test-suite.com/
|
||||
|
||||
EOT
|
||||
exit
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
:: Phoronix Test Suite
|
||||
:: URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
:: Copyright (C) 2008 - 2018, Phoronix Media
|
||||
:: Copyright (C) 2008 - 2018, Michael Larabel
|
||||
:: Copyright (C) 2008 - 2019, Phoronix Media
|
||||
:: Copyright (C) 2008 - 2019, 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
|
||||
@@ -24,6 +24,11 @@ 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
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2017, Phoronix Media
|
||||
Copyright (C) 2017, Michael Larabel
|
||||
Copyright (C) 2017 - 2019, Phoronix Media
|
||||
Copyright (C) 2017 - 2019, 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 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.';
|
||||
const doc_description = 'This option can be used for easily adding a module to the AutoLoadModules 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));
|
||||
$loaded_modules = pts_strings::comma_explode(pts_config::read_user_config('PhoronixTestSuite/Options/Modules/AutoLoadModules', 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);
|
||||
@@ -59,7 +59,7 @@ class auto_load_module implements pts_option_interface
|
||||
}
|
||||
}
|
||||
|
||||
$new_options = array('PhoronixTestSuite/Options/Modules/LoadModules' => implode(', ', $loaded_modules));
|
||||
$new_options = array('PhoronixTestSuite/Options/Modules/AutoLoadModules' => implode(', ', $loaded_modules));
|
||||
pts_config::user_config_generate($new_options);
|
||||
echo PHP_EOL . 'New user configuration file written.' . PHP_EOL . PHP_EOL;
|
||||
}
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2014 - 2018, Phoronix Media
|
||||
Copyright (C) 2014 - 2018, Michael Larabel
|
||||
Copyright (C) 2014 - 2019, Phoronix Media
|
||||
Copyright (C) 2014 - 2019, 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
|
||||
@@ -48,7 +48,7 @@ class auto_sort_result_file implements pts_option_interface
|
||||
sort($result_file_identifiers);
|
||||
$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');
|
||||
pts_client::display_result_view($result_file, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2017, Phoronix Media
|
||||
Copyright (C) 2008 - 2017, Michael Larabel
|
||||
Copyright (C) 2008 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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,10 @@ class build_suite implements pts_option_interface
|
||||
$suite_test_type = pts_user_io::prompt_text_menu('Select test type', pts_types::subsystem_targets());
|
||||
$suite_maintainer = pts_user_io::prompt_user_input('Enter suite maintainer name');
|
||||
$suite_description = pts_user_io::prompt_user_input('Enter suite description');
|
||||
$bind_versions = pts_user_io::prompt_bool_input('Bind current test profile versions to test suite');
|
||||
|
||||
$possible_suites = pts_openbenchmarking::available_suites();
|
||||
$possible_tests = pts_openbenchmarking::available_tests();
|
||||
$possible_suites = pts_openbenchmarking::available_suites(false);
|
||||
$possible_tests = pts_openbenchmarking::available_tests(false);
|
||||
|
||||
$new_suite = new pts_test_suite();
|
||||
$new_suite->set_title($suite_name);
|
||||
@@ -92,7 +93,7 @@ class build_suite implements pts_option_interface
|
||||
}
|
||||
while($input_option != 'Save & Exit');
|
||||
|
||||
if($new_suite->save_xml($suite_name) != false)
|
||||
if($new_suite->save_xml($suite_name, null, $bind_versions) != false)
|
||||
{
|
||||
echo PHP_EOL . PHP_EOL . 'Saved -- to run this suite, type: phoronix-test-suite benchmark ' . $new_suite->get_identifier() . PHP_EOL . PHP_EOL;
|
||||
}
|
||||
|
||||
65
pts-core/commands/compare_results_to_baseline.php
Normal file
65
pts-core/commands/compare_results_to_baseline.php
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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 compare_results_to_baseline implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = 'This option will allows you to specify a result as a baseline (first parameter) and a second result file (second parameter) that will offer some analysis for showing how the second result compares to the first in matching tests.';
|
||||
|
||||
public static function argument_checks()
|
||||
{
|
||||
return array(
|
||||
new pts_argument_check(0, array('pts_types', 'is_result_file'), null),
|
||||
new pts_argument_check(1, array('pts_types', 'is_result_file'), null)
|
||||
);
|
||||
}
|
||||
public static function run($r)
|
||||
{
|
||||
if(count($r) != 2)
|
||||
{
|
||||
echo PHP_EOL . 'Two results must be specified: phoronix-test-suite compare-results-to-baseline <baseline result file> <compare result file>' . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
$baseline = new pts_result_file($r[0]);
|
||||
echo 'Baseline: ' . $baseline->get_identifier() . PHP_EOL;
|
||||
if(count($baseline->get_system_identifiers()) != 1)
|
||||
{
|
||||
echo PHP_EOL . 'This feature requires only one system/result to be present in the result file.' . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
$baseline->rename_run(null, 'Baseline');
|
||||
|
||||
$result = new pts_result_file($r[1]);
|
||||
echo 'Result: ' . $result->get_identifier() . PHP_EOL;
|
||||
if(count($result->get_system_identifiers()) != 1)
|
||||
{
|
||||
echo PHP_EOL . 'This feature requires only one system/result to be present in the result file.' . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
$result->rename_run(null, 'Result');
|
||||
|
||||
$baseline->add_to_result_file($result, true);
|
||||
echo pts_result_file_analyzer::display_results_baseline_two_way_compare($baseline, false, true);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
131
pts-core/commands/compare_results_two_way.php
Normal file
131
pts-core/commands/compare_results_two_way.php
Normal file
@@ -0,0 +1,131 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 compare_results_two_way implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = 'This option will allows you to specify a result file and from there to compare two individual runs within that result file for looking at wins/losses and other metrics in a head-to-head type comparison.';
|
||||
static $longest_identifier = 0;
|
||||
|
||||
public static function argument_checks()
|
||||
{
|
||||
return array(
|
||||
new pts_argument_check(0, array('pts_types', 'is_result_file'), null),
|
||||
);
|
||||
}
|
||||
protected static function sort_two_way_data_desc($a, $b)
|
||||
{
|
||||
self::$longest_identifier = max(self::$longest_identifier, strlen($a[0]->test_profile->get_title()), strlen($b[0]->test_profile->get_title()), strlen($a[0]->get_arguments_description()), strlen($b[0]->get_arguments_description()));
|
||||
$a = $a[1];
|
||||
$b = $b[1];
|
||||
|
||||
if($a == $b) return 0;
|
||||
return $a > $b ? -1 : 1;
|
||||
}
|
||||
protected static function sort_two_way_data_asc($a, $b)
|
||||
{
|
||||
$a = $a[1];
|
||||
$b = $b[1];
|
||||
|
||||
if($a == $b) return 0;
|
||||
return $a < $b ? -1 : 1;
|
||||
}
|
||||
public static function run($r)
|
||||
{
|
||||
$result_file = new pts_result_file($r[0]);
|
||||
$result_file_identifiers = $result_file->get_system_identifiers();
|
||||
|
||||
if(count($result_file_identifiers) < 2)
|
||||
{
|
||||
echo PHP_EOL . 'There must be at least two systems in the result file.' . PHP_EOL . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
|
||||
$first_run = pts_user_io::prompt_text_menu('Select the first test run for head-to-head/two-way comparison', $result_file_identifiers, false);
|
||||
unset($result_file_identifiers[array_search($first_run, $result_file_identifiers)]);
|
||||
$second_run = pts_user_io::prompt_text_menu('Select the second test run for head-to-head/two-way comparison', $result_file_identifiers, false);
|
||||
|
||||
$wins = array();
|
||||
$losses = array();
|
||||
$too_close = array();
|
||||
|
||||
foreach($result_file->get_result_objects() as $ro)
|
||||
{
|
||||
$ro->set_result_precision(3);
|
||||
if($ro->normalize_buffer_values($first_run) == false)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$first_run_result = $ro->get_result_value_from_name($first_run);
|
||||
if(empty($first_run_result) || !is_numeric($first_run_result))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
$second_run_result = $ro->get_result_value_from_name($second_run);
|
||||
if(empty($second_run_result) || !is_numeric($second_run_result))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if($second_run_result > 1.01)
|
||||
{
|
||||
$wins[] = array($ro, $second_run_result);
|
||||
}
|
||||
else if($second_run_result < 0.99)
|
||||
{
|
||||
$losses[] = array($ro, $second_run_result);
|
||||
}
|
||||
else
|
||||
{
|
||||
$too_close[] = array($ro, $second_run_result);
|
||||
}
|
||||
}
|
||||
|
||||
usort($wins, array('compare_results_two_way', 'sort_two_way_data_desc'));
|
||||
usort($losses, array('compare_results_two_way', 'sort_two_way_data_desc'));
|
||||
|
||||
// , $second_run . pts_client::cli_colored_text(' Draws', 'gray', true) => $too_close
|
||||
echo pts_client::cli_just_bold($second_run . ' vs. ' . $first_run . ' Baseline') . PHP_EOL . PHP_EOL;
|
||||
foreach(array(pts_client::cli_colored_text($second_run . ' Wins', 'green', true) => $wins, pts_client::cli_colored_text($second_run . ' Losses', 'red', 'true') => $losses) as $group => $data)
|
||||
{
|
||||
echo $group . PHP_EOL;
|
||||
foreach($data as $result_data)
|
||||
{
|
||||
echo pts_client::cli_just_bold($result_data[0]->test_profile->get_title()) . str_repeat(' ', self::$longest_identifier - strlen($result_data[0]->test_profile->get_title())) . ' ' . $result_data[1] . 'x' . PHP_EOL;
|
||||
|
||||
if($result_data[0]->get_arguments_description() != null)
|
||||
{
|
||||
echo pts_client::cli_just_italic($result_data[0]->get_arguments_description()) . PHP_EOL;
|
||||
}
|
||||
}
|
||||
echo pts_client::cli_just_underline(count($data) . ' Results') . PHP_EOL . PHP_EOL;
|
||||
}
|
||||
|
||||
return;
|
||||
|
||||
|
||||
echo pts_result_file_analyzer::display_results_baseline_two_way_compare($baseline, false, true);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2015, Phoronix Media
|
||||
Copyright (C) 2009 - 2015, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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
|
||||
@@ -40,7 +40,10 @@ class debug_benchmark implements pts_option_interface
|
||||
// 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);
|
||||
if(getenv('FORCE_TIMES_TO_RUN') == null)
|
||||
{
|
||||
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();
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2013 - 2018, Phoronix Media
|
||||
Copyright (C) 2013 - 2018, Michael Larabel
|
||||
Copyright (C) 2013 - 2019, Phoronix Media
|
||||
Copyright (C) 2013 - 2019, 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
|
||||
@@ -68,7 +68,7 @@ class debug_self_test implements pts_option_interface
|
||||
$longest_c = max(array_map('strlen', array_keys($individual_times)));
|
||||
foreach($individual_times as $component => $times)
|
||||
{
|
||||
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 strtoupper($component) . ': ' . (str_repeat(' ', $longest_c - strlen($component))) . pts_math::set_precision(round(pts_math::arithmetic_mean($times), 3), 3) . ' seconds' . PHP_EOL;
|
||||
}
|
||||
|
||||
echo PHP_EOL . 'TOTAL ELAPSED TIME: ' . (str_repeat(' ', $longest_c - strlen('ELAPSED TIME'))) . round($finish - $start, 3) . ' seconds';
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2010 - 2018, Phoronix Media
|
||||
Copyright (C) 2010 - 2018, Michael Larabel
|
||||
Copyright (C) 2010 - 2019, Phoronix Media
|
||||
Copyright (C) 2010 - 2019, 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,6 +39,8 @@ class debug_test_download_links implements pts_option_interface
|
||||
|
||||
foreach($test_profile->get_downloads() as $test_file_download)
|
||||
{
|
||||
$successes = 0;
|
||||
$fails = 0;
|
||||
foreach($test_file_download->get_download_url_array() as $url)
|
||||
{
|
||||
$stream_context = pts_network::stream_context_create();
|
||||
@@ -49,12 +51,17 @@ class debug_test_download_links implements pts_option_interface
|
||||
if($file_pointer == false)
|
||||
{
|
||||
echo PHP_EOL . 'BAD URL: ' . $test_file_download->get_filename() . ' / ' . $url . PHP_EOL;
|
||||
$fails++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$successes++;
|
||||
@fclose($file_pointer);
|
||||
}
|
||||
|
||||
}
|
||||
if($fails && $successes == 0)
|
||||
{
|
||||
echo PHP_EOL . pts_client::cli_just_bold('No mirrors for: ' . $test_file_download->get_filename()) . PHP_EOL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
51
pts-core/commands/dry_run.php
Normal file
51
pts-core/commands/dry_run.php
Normal file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
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
|
||||
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 dry_run implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Batch Testing';
|
||||
const doc_description = 'This option and its arguments pre-set the Phoronix Test Suite batch run mode with enforcing of defaults to not save any results and other behavior intended for a dry/test run. This option is primarily intended for testing/evaluation purposes.';
|
||||
|
||||
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)
|
||||
{
|
||||
pts_test_installer::standard_install($r);
|
||||
$test_run_manager = new pts_test_run_manager(array(
|
||||
'UploadResults' => false,
|
||||
'SaveResults' => false,
|
||||
'PromptForTestDescription' => false,
|
||||
'RunAllTestCombinations' => false,
|
||||
'PromptSaveName' => false,
|
||||
'PromptForTestIdentifier' => false,
|
||||
'OpenBrowser' => false
|
||||
));
|
||||
|
||||
$test_run_manager->standard_run($r);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2010 - 2018, Phoronix Media
|
||||
Copyright (C) 2010 - 2018, Michael Larabel
|
||||
Copyright (C) 2010 - 2019, Phoronix Media
|
||||
Copyright (C) 2010 - 2019, 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,9 +28,9 @@ class dump_documentation implements pts_option_interface
|
||||
$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->Image(PTS_CORE_STATIC_PATH . 'images/pts-308x160.png', 69, 85, 73, 38, 'PNG', 'https://www.phoronix-test-suite.com/');
|
||||
$pdf->Ln(120);
|
||||
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'http://www.phoronix-test-suite.com/');
|
||||
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'https://www.phoronix-test-suite.com/');
|
||||
$pdf->Ln(15);
|
||||
$pdf->WriteBigHeaderCenter(pts_core::program_title(true));
|
||||
$pdf->WriteHeaderCenter('User Manual');
|
||||
@@ -85,6 +85,7 @@ class dump_documentation implements pts_option_interface
|
||||
|
||||
// Write the module options HTML
|
||||
$dom = new DOMDocument();
|
||||
$dom->formatOutput = true;
|
||||
$html = $dom->createElement('html');
|
||||
$dom->appendChild($html);
|
||||
$head = $dom->createElement('head');
|
||||
@@ -94,7 +95,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 environment 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 AutoLoadModules 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');
|
||||
@@ -138,6 +139,7 @@ class dump_documentation implements pts_option_interface
|
||||
|
||||
// Write the external dependencies HTML
|
||||
$dom = new DOMDocument();
|
||||
$dom->formatOutput = true;
|
||||
$html = $dom->createElement('html');
|
||||
$dom->appendChild($html);
|
||||
$head = $dom->createElement('head');
|
||||
@@ -173,6 +175,7 @@ class dump_documentation implements pts_option_interface
|
||||
|
||||
// Write the virtual suites HTML
|
||||
$dom = new DOMDocument();
|
||||
$dom->formatOutput = true;
|
||||
$html = $dom->createElement('html');
|
||||
$dom->appendChild($html);
|
||||
$head = $dom->createElement('head');
|
||||
@@ -250,7 +253,7 @@ class dump_documentation implements pts_option_interface
|
||||
$man_page .= '.B ' . trim($option[0] . ' ' . (!empty($option[1]) && is_array($option[1]) ? implode(' ', $option[1]) : null)) . PHP_EOL . $option[2] . PHP_EOL . '.TP' . PHP_EOL;
|
||||
}
|
||||
}
|
||||
$man_page .= '.SH SEE ALSO' . PHP_EOL . '.B Websites:' . PHP_EOL . '.br' . PHP_EOL . 'http://www.phoronix-test-suite.com/' . PHP_EOL . '.br' . PHP_EOL . 'http://commercial.phoronix-test-suite.com/' . PHP_EOL . '.br' . PHP_EOL . 'http://www.openbenchmarking.org/' . PHP_EOL . '.br' . PHP_EOL . 'http://www.phoronix.com/' . PHP_EOL . '.br' . PHP_EOL . 'http://www.phoronix.com/forums/' . PHP_EOL;
|
||||
$man_page .= '.SH SEE ALSO' . PHP_EOL . '.B Websites:' . PHP_EOL . '.br' . PHP_EOL . 'https://www.phoronix-test-suite.com/' . PHP_EOL . '.br' . PHP_EOL . 'https://commercial.phoronix-test-suite.com/' . PHP_EOL . '.br' . PHP_EOL . 'https://www.openbenchmarking.org/' . PHP_EOL . '.br' . PHP_EOL . 'https://www.phoronix.com/' . PHP_EOL . '.br' . PHP_EOL . 'https://www.phoronix.com/forums/' . PHP_EOL;
|
||||
$man_page .= '.SH AUTHORS' . PHP_EOL . 'Copyright 2008 - ' . date('Y') . ' by Phoronix Media, Michael Larabel.' . PHP_EOL . '.TP' . PHP_EOL;
|
||||
|
||||
file_put_contents(PTS_PATH . 'documentation/man-pages/phoronix-test-suite.1', $man_page);
|
||||
@@ -258,7 +261,7 @@ 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;
|
||||
$readme = '# Phoronix Test Suite ' . PTS_VERSION . PHP_EOL . 'https://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);
|
||||
@@ -269,12 +272,12 @@ class dump_documentation implements pts_option_interface
|
||||
$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/');
|
||||
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/pts-308x160.png', 69, 85, 73, 38, 'PNG', 'https://www.phoronix-test-suite.com/');
|
||||
$pdf->Ln(120);
|
||||
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'http://www.phoronix-test-suite.com/');
|
||||
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'https://www.phoronix-test-suite.com/');
|
||||
$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->Image(PTS_CORE_STATIC_PATH . 'images/phoromatic-390x56.png', 55, 250, 0, 0, 'PNG', 'https://www.phoronix-test-suite.com/');
|
||||
//$pdf->Image(PTS_CORE_STATIC_PATH . 'images/phoromatic-390x56.png', 69, 85, 73, 38, 'PNG', 'https://www.phoromatic.com/');
|
||||
$pdf->WriteBigHeaderCenter(pts_core::program_title(true));
|
||||
$pdf->WriteHeaderCenter('Phoromatic User Manual');
|
||||
$pdf->html_to_pdf(PTS_PATH . 'documentation/phoromatic.html');
|
||||
|
||||
162
pts-core/commands/dump_ob_to_ae_db.php
Normal file
162
pts-core/commands/dump_ob_to_ae_db.php
Normal file
@@ -0,0 +1,162 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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/>.
|
||||
*/
|
||||
ini_set('memory_limit', '8G');
|
||||
|
||||
class dump_ob_to_ae_db implements pts_option_interface
|
||||
{
|
||||
public static function run($r)
|
||||
{
|
||||
$dir_to_recursively_scan = $r[0];
|
||||
if(!is_dir($dir_to_recursively_scan))
|
||||
{
|
||||
echo $dir_to_recursively_scan . ' is not a dir.';
|
||||
return false;
|
||||
}
|
||||
$storage_dir = $r[1];
|
||||
if(!is_dir($storage_dir))
|
||||
{
|
||||
echo $storage_dir . ' is not a dir.';
|
||||
return false;
|
||||
}
|
||||
|
||||
$ae = new pts_ae_data($storage_dir);
|
||||
$xml_files = array();
|
||||
pts_file_io::recursively_find_files_in_directory($dir_to_recursively_scan, $xml_files, '.xml');
|
||||
|
||||
foreach($xml_files as $file)
|
||||
{
|
||||
$result_reference = null; // TODO fill in OpenBenchmarking.org ID for that
|
||||
$rf = new pts_result_file($file, false, true);
|
||||
$systems = $rf->get_systems();
|
||||
$system_data = array();
|
||||
$timestamps = array();
|
||||
$system_types = array();
|
||||
foreach($systems as $system)
|
||||
{
|
||||
$system_data[$system->get_identifier()] = array_map(array('pts_strings', 'trim_search_query'), array_merge(pts_result_file_analyzer::system_component_string_to_array($system->get_hardware()), pts_result_file_analyzer::system_component_string_to_array($system->get_software())));
|
||||
$timestamps[$system->get_identifier()] = strtotime($system->get_timestamp());
|
||||
$system_types[$system->get_identifier()] = phodevi_base::determine_system_type($system->get_hardware(), $system->get_software());
|
||||
}
|
||||
|
||||
foreach($rf->get_result_objects() as $ro)
|
||||
{
|
||||
if($ro->test_profile->get_identifier() == null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
$comparison_hash = $ro->get_comparison_hash(true, false);
|
||||
$inserts = 0;
|
||||
foreach($ro->test_result_buffer as &$buffers)
|
||||
{
|
||||
if(empty($buffers))
|
||||
continue;
|
||||
|
||||
foreach($buffers as &$buffer_item)
|
||||
{
|
||||
$result = $buffer_item->get_result_value();
|
||||
if(stripos($result, ',') !== false || !is_numeric($result))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
$system_identifier = $buffer_item->get_result_identifier();
|
||||
$system_layer = isset($system_data[$system_identifier]['System Layer']) ? $system_data[$system_identifier]['System Layer'] : null;
|
||||
|
||||
|
||||
$hw_type = $ro->test_profile->get_test_hardware_type();
|
||||
$args_desc = $ro->get_arguments_description();
|
||||
|
||||
// Since some tests could stress multiple subsystems, see what the argument descriptions string says
|
||||
if(strpos($args_desc, ' GPU') || strpos($args_desc, ' CUDA') || strpos($args_desc, ' OpenCL'))
|
||||
{
|
||||
$hw_type = 'Graphics';
|
||||
}
|
||||
else if(strpos($args_desc, ' RAM') || strpos($args_desc, ' Memory'))
|
||||
{
|
||||
$hw_type = 'Memory';
|
||||
}
|
||||
else if(strpos($args_desc, ' Disk'))
|
||||
{
|
||||
$hw_type = 'Disk';
|
||||
}
|
||||
else if($hw_type == 'Network' && (strpos($args_desc, 'localhost') || strpos($args_desc, '127.0.0.1')))
|
||||
{
|
||||
// loopback / local test so network adapter really not important, moreso the system/CPU
|
||||
$hw_type = 'System';
|
||||
}
|
||||
|
||||
switch($hw_type)
|
||||
{
|
||||
case 'Processor':
|
||||
$component = 'Processor';
|
||||
$related_component = 'OS';
|
||||
break;
|
||||
case 'System':
|
||||
$component = 'Processor';
|
||||
$related_component = 'Motherboard';
|
||||
break;
|
||||
case 'Graphics':
|
||||
$component = 'Graphics';
|
||||
$related_component = 'OpenGL';
|
||||
break;
|
||||
case 'Disk':
|
||||
$component = 'Disk';
|
||||
$related_component = 'File-System';
|
||||
break;
|
||||
case 'Network':
|
||||
$component = 'Network';
|
||||
$related_component = 'OS';
|
||||
break;
|
||||
case 'Memory':
|
||||
$component = 'Memory';
|
||||
$related_component = 'Processor';
|
||||
break;
|
||||
default:
|
||||
$component = 'Processor';
|
||||
$related_component = 'OS';
|
||||
break;
|
||||
}
|
||||
|
||||
if(!isset($system_data[$system_identifier][$component]) || empty($system_data[$system_identifier][$component]))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
$component_value = $system_data[$system_identifier][$component];
|
||||
$related_component_value = isset($system_data[$system_identifier][$related_component]) ? $system_data[$system_identifier][$related_component] : null;
|
||||
$ae->insert_result_into_analytic_results($comparison_hash, $result_reference, $component_value, $component, $related_component_value, $related_component, $result, $timestamps[$system_identifier], $system_types[$system_identifier], $system_layer);
|
||||
$inserts++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if($inserts > 0)
|
||||
{
|
||||
$ae->insert_composite_hash_entry_by_result_object($comparison_hash, $ro);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
$ae->rebuild_composite_listing();
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2016, Phoronix Media
|
||||
Copyright (C) 2009 - 2016, 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')))
|
||||
{
|
||||
$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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2014 - 2018, Phoronix Media
|
||||
Copyright (C) 2014 - 2018, Michael Larabel
|
||||
Copyright (C) 2014 - 2019, Phoronix Media
|
||||
Copyright (C) 2014 - 2019, 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
|
||||
@@ -49,7 +49,7 @@ class edit_result_file implements pts_option_interface
|
||||
$result_file->set_description($new_description);
|
||||
}
|
||||
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');
|
||||
pts_client::display_result_view($result_file, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2017, Phoronix Media
|
||||
Copyright (C) 2017, Michael Larabel
|
||||
Copyright (C) 2017 - 2019, Phoronix Media
|
||||
Copyright (C) 2017 - 2019, 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
|
||||
@@ -45,7 +45,7 @@ class estimate_run_time implements pts_option_interface
|
||||
$test_count = 0;
|
||||
foreach($args as $arg)
|
||||
{
|
||||
foreach(pts_types::identifiers_to_test_profile_objects($arg) as $t)
|
||||
foreach(pts_types::identifiers_to_test_profile_objects($arg, false, false) as $t)
|
||||
{
|
||||
$tests[] = array($t->get_identifier(), pts_strings::format_time($t->get_estimated_run_time()));
|
||||
$total_time += $t->get_estimated_run_time();
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2015, Phoronix Media
|
||||
Copyright (C) 2009 - 2015, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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
|
||||
@@ -55,7 +55,7 @@ class extract_from_result_file implements pts_option_interface
|
||||
while(empty($extract_to));
|
||||
|
||||
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');
|
||||
pts_client::display_result_view($extract_to, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -23,8 +23,12 @@
|
||||
class force_install implements pts_option_interface
|
||||
{
|
||||
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.';
|
||||
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 or wishing to re-install test(s) due to compiler or other environmental changes.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('reinstall', 're-install');
|
||||
}
|
||||
public static function argument_checks()
|
||||
{
|
||||
return array(
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2012 - 2018, Phoronix Media
|
||||
Copyright (C) 2012 - 2018, Michael Larabel
|
||||
Copyright (C) 2012 - 2019, Phoronix Media
|
||||
Copyright (C) 2012 - 2019, 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,8 @@
|
||||
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. THIS FEATURE IS CURRENTLY EXPERIMENTAL AND NO LONGER ACTIVE DEVELOPMENT. See Phoronix Test Suite Phoromatic as an alternative web UI approach.';
|
||||
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 IN ACTIVE DEVELOPMENT. See Phoronix Test Suite Phoromatic as an alternative web UI approach.';
|
||||
const doc_skip = true;
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2010 - 2017, Phoronix Media
|
||||
Copyright (C) 2010 - 2017, Michael Larabel
|
||||
Copyright (C) 2010 - 2019, Phoronix Media
|
||||
Copyright (C) 2010 - 2019, 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 help implements pts_option_interface
|
||||
public static function run($r)
|
||||
{
|
||||
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;
|
||||
echo pts_documentation::basic_description() . PHP_EOL . PHP_EOL . 'View the included documentation or visit https://www.phoronix-test-suite.com/ for full details.' . PHP_EOL;
|
||||
$options = pts_documentation::client_commands_array();
|
||||
|
||||
foreach($options as $section => &$contents)
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2018, Phoronix Media
|
||||
Copyright (C) 2008 - 2018, Michael Larabel
|
||||
Copyright (C) 2008 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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
|
||||
@@ -76,7 +76,7 @@ class info implements pts_option_interface
|
||||
{
|
||||
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')
|
||||
if($o->get_status() != 'Verified' && $o->get_status() != null)
|
||||
{
|
||||
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;
|
||||
}
|
||||
@@ -175,7 +175,7 @@ class info implements pts_option_interface
|
||||
|
||||
|
||||
// OpenBenchmarking.org Change-Log
|
||||
if(stripos($o->get_identifier(), 'local/') === false)
|
||||
if(stripos($o->get_identifier(), 'local/') === false && !defined('PHOROMATIC_PROCESS'))
|
||||
{
|
||||
|
||||
$change_log = pts_openbenchmarking_client::fetch_repository_test_profile_changelog($o->get_identifier(false));
|
||||
@@ -193,24 +193,27 @@ class info implements pts_option_interface
|
||||
}
|
||||
|
||||
// Recent Test Results With This Test
|
||||
$o_identifier = $o->get_identifier(false);
|
||||
$table = array();
|
||||
foreach(pts_client::saved_test_results() as $saved_results_identifier)
|
||||
if(!defined('PHOROMATIC_PROCESS'))
|
||||
{
|
||||
$result_file = new pts_result_file($saved_results_identifier);
|
||||
foreach($result_file->get_result_objects() as $result_object)
|
||||
$o_identifier = $o->get_identifier(false);
|
||||
$table = array();
|
||||
foreach(pts_client::saved_test_results() as $saved_results_identifier)
|
||||
{
|
||||
if($result_object->test_profile->get_identifier(false) == $o_identifier)
|
||||
$result_file = new pts_result_file($saved_results_identifier);
|
||||
foreach($result_file->get_result_objects() as $result_object)
|
||||
{
|
||||
$table[] = array(pts_client::cli_just_bold($result_file->get_identifier()), $result_file->get_title());
|
||||
break;
|
||||
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);
|
||||
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 if($o instanceof pts_result_file)
|
||||
@@ -218,6 +221,11 @@ class info implements pts_option_interface
|
||||
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());
|
||||
$system_count = count($o->get_system_identifiers());
|
||||
if($system_count > 8)
|
||||
{
|
||||
echo pts_client::cli_just_italic($system_count . ' Systems') . PHP_EOL;
|
||||
}
|
||||
|
||||
$test_titles = array();
|
||||
foreach($o->get_result_objects() as $result_object)
|
||||
@@ -232,6 +240,7 @@ class info implements pts_option_interface
|
||||
{
|
||||
echo PHP_EOL . pts_client::cli_just_bold('Contained Tests:') . PHP_EOL;
|
||||
echo pts_user_io::display_text_list(array_unique($test_titles));
|
||||
echo ' ' . pts_client::cli_just_italic(pts_strings::plural_handler($o->get_test_count(), 'Test')) . PHP_EOL;
|
||||
}
|
||||
echo PHP_EOL;
|
||||
}
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2011 - 2018, Phoronix Media
|
||||
Copyright (C) 2011 - 2018, Michael Larabel
|
||||
Copyright (C) 2011 - 2019, Phoronix Media
|
||||
Copyright (C) 2011 - 2019, 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
|
||||
@@ -35,15 +35,16 @@ class interactive implements pts_option_interface
|
||||
|
||||
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 Available System Sensors',
|
||||
'LIST_TESTS' => 'List Available Tests',
|
||||
'LIST_RECOMMENDED_TESTS' => 'List Recommended Tests',
|
||||
'SET_RUN_COUNT' => 'Set Test Run Repetition',
|
||||
// 'SET_RUN_COUNT' => 'Set Test Run Repetition',
|
||||
'SEARCH' => 'Search Tests / Suites / Results'
|
||||
);
|
||||
|
||||
@@ -58,13 +59,18 @@ 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)
|
||||
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;
|
||||
@@ -84,16 +90,59 @@ 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 = 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);
|
||||
pts_client::display_result_view($run_manager->result_file, false);
|
||||
}
|
||||
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();
|
||||
|
||||
@@ -116,17 +165,6 @@ class interactive implements pts_option_interface
|
||||
case 'SEARCH':
|
||||
pts_client::execute_command('search');
|
||||
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 = new pts_test_run_manager(false, 2);
|
||||
$run_manager->standard_run($system_tests);
|
||||
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 'SHOW_INFO':
|
||||
pts_client::execute_command('system_info');
|
||||
break;
|
||||
|
||||
80
pts-core/commands/list_all_tests.php
Normal file
80
pts-core/commands/list_all_tests.php
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
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
|
||||
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_all_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. Unlike the other test listing options, list-all-tests will show deprecated tests, potentially broken tests, or other tests not recommended for all environments. The only check in place is ensuring the test profiles are at least compatible with the operating system in use.';
|
||||
|
||||
public static function run($r)
|
||||
{
|
||||
pts_client::$display->generic_heading('Available Tests');
|
||||
$list_all_tests = pts_client::get_sent_command() == 'list_all_tests';
|
||||
$only_show_available_cached_tests = !$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;
|
||||
pts_client::execute_command('list_cached_tests');
|
||||
return true;
|
||||
}
|
||||
|
||||
$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;
|
||||
}
|
||||
if($list_all_tests == false && !empty($repo_index['tests'][$id]['status']) && $repo_index['tests'][$id]['status'] != 'Verified')
|
||||
{
|
||||
// Don't show unsupported tests
|
||||
continue;
|
||||
}
|
||||
|
||||
echo sprintf('%-30ls - %-39ls %-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->get_title() != null && $test_profile->is_supported(false))
|
||||
{
|
||||
echo sprintf('%-30ls - %-39ls %-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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -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 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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 = array_merge(pts_openbenchmarking::available_suites(false), pts_tests::local_suites());
|
||||
$available_suites = pts_tests::all_suites(true);
|
||||
pts_client::$display->generic_heading('Available Suites');
|
||||
|
||||
if(count($available_suites) > 0)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
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 where supported on the system and are of a verified state.';
|
||||
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 (the same behavior as using the list-cached-tests sub-command), unless using the list-all-tests option to override this behavior.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
@@ -32,13 +32,21 @@ class list_available_tests implements pts_option_interface
|
||||
public static function run($r)
|
||||
{
|
||||
pts_client::$display->generic_heading('Available Tests');
|
||||
$only_show_available_cached_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;
|
||||
pts_client::execute_command('list_cached_tests');
|
||||
return true;
|
||||
}
|
||||
|
||||
$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
|
||||
@@ -49,8 +57,13 @@ class list_available_tests implements pts_option_interface
|
||||
// Don't show unsupported tests
|
||||
continue;
|
||||
}
|
||||
if($repo_index['tests'][$id]['test_type'] == 'Graphics' && !phodevi::is_display_server_active())
|
||||
{
|
||||
// Don't display graphics tests that can't run
|
||||
continue;
|
||||
}
|
||||
|
||||
echo sprintf('%-30ls - %-35ls %-9ls', $identifier, $repo_index['tests'][$id]['title'], $repo_index['tests'][$id]['test_type']) . PHP_EOL;
|
||||
echo sprintf('%-30ls - %-39ls %-9ls', $identifier, $repo_index['tests'][$id]['title'], $repo_index['tests'][$id]['test_type']) . PHP_EOL;
|
||||
$test_count++;
|
||||
}
|
||||
|
||||
@@ -60,7 +73,7 @@ class list_available_tests implements pts_option_interface
|
||||
|
||||
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++;
|
||||
}
|
||||
}
|
||||
|
||||
99
pts-core/commands/list_cached_tests.php
Normal file
99
pts-core/commands/list_cached_tests.php
Normal file
@@ -0,0 +1,99 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
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
|
||||
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_cached_tests implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Information';
|
||||
const doc_description = 'This option will list all test profiles where any needed test profiles are already cached or available from the local system under test. This is primarily useful if testing offline/behind-the-firewall and other use-cases where wanting to rely only upon local data.';
|
||||
|
||||
public static function run($r)
|
||||
{
|
||||
pts_client::$display->generic_heading('Cached Tests');
|
||||
|
||||
$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;
|
||||
}
|
||||
if($repo_index['tests'][$id]['test_type'] == 'Graphics' && !phodevi::is_display_server_active())
|
||||
{
|
||||
// Don't display graphics tests that can't run
|
||||
continue;
|
||||
}
|
||||
|
||||
$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)
|
||||
{
|
||||
// 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_tests::local_tests() as $identifier)
|
||||
{
|
||||
$test_profile = new pts_test_profile($identifier);
|
||||
if(pts_test_install_request::test_files_available_via_cache($test_profile) == false)
|
||||
{
|
||||
// only show tests where files are local or in an available cache
|
||||
continue;
|
||||
}
|
||||
|
||||
if($test_profile->get_title() != null && $test_profile->is_supported(false))
|
||||
{
|
||||
echo sprintf('%-30ls - %-39ls %-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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ class list_unsupported_tests implements pts_option_interface
|
||||
|
||||
if($unsupported)
|
||||
{
|
||||
echo sprintf('%-28ls - %-30ls %-9ls', $identifier, $unsupported, $repo_index['tests'][$id]['test_type']) . PHP_EOL;
|
||||
echo sprintf('%-28ls - %-30ls', $identifier, $unsupported) . PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -32,6 +32,10 @@ class make_download_cache implements pts_option_interface
|
||||
|
||||
// Determine cache location
|
||||
$dc_write_directory = pts_client::download_cache_path();
|
||||
if(($dc_override = getenv('PTS_DOWNLOAD_CACHE_OVERRIDE')) != false && is_dir($dc_override))
|
||||
{
|
||||
$dc_write_directory = $dc_override;
|
||||
}
|
||||
pts_file_io::mkdir($dc_write_directory);
|
||||
echo PHP_EOL . 'Download Cache Directory: ' . $dc_write_directory . PHP_EOL;
|
||||
|
||||
@@ -48,7 +52,7 @@ class make_download_cache implements pts_option_interface
|
||||
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);
|
||||
pts_test_installer::only_download_test_files($test_profiles, $dc_write_directory, getenv('PTS_DOWNLOAD_CACHING_PLATFORM_LIMIT') !== false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,7 +66,19 @@ class make_download_cache implements pts_option_interface
|
||||
$test_profile = new pts_test_profile($test);
|
||||
echo PHP_EOL . pts_client::cli_just_bold('Checking Downloads For: ') . $test . PHP_EOL;
|
||||
|
||||
foreach($test_profile->get_downloads() as $file)
|
||||
if(getenv('PTS_DOWNLOAD_CACHING_PLATFORM_LIMIT') !== false)
|
||||
{
|
||||
// Don't get all download files but just those for the given platform
|
||||
$tr = new pts_test_install_request($test_profile);
|
||||
$tr->generate_download_object_list(true);
|
||||
$downloads = $tr->get_download_objects();
|
||||
}
|
||||
else
|
||||
{
|
||||
$downloads = $test_profile->get_downloads();
|
||||
}
|
||||
|
||||
foreach($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()))
|
||||
|
||||
@@ -54,7 +54,14 @@ class make_openbenchmarking_cache implements pts_option_interface
|
||||
$repo_index = pts_openbenchmarking::read_repository_index($repo);
|
||||
|
||||
echo $i . '/' . $total_count . ': ' . ($repo_index['tests'][$test]['title'] != null ? $repo_index['tests'][$test]['title'] . ' [' . $repo_index['tests'][$test]['test_type'] . ']' : null) . PHP_EOL;
|
||||
foreach($repo_index['tests'][$test]['versions'] as $version)
|
||||
$versions = $repo_index['tests'][$test]['versions'];
|
||||
|
||||
if(isset($r[0]) && $r[0] == 'lean')
|
||||
{
|
||||
$versions = array(array_shift($versions));
|
||||
}
|
||||
|
||||
foreach($versions as $version)
|
||||
{
|
||||
$qualified_identifier = $repo . '/' . $test . '-' . $version;
|
||||
echo $qualified_identifier;
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2018, Phoronix Media
|
||||
Copyright (C) 2008 - 2018, Michael Larabel
|
||||
Copyright (C) 2008 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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
|
||||
@@ -62,7 +62,7 @@ class merge_results implements pts_option_interface
|
||||
$result_file->merge($result_files_to_merge);
|
||||
pts_client::save_test_result($merge_to_file, $result_file->get_xml());
|
||||
echo 'Merged Results Saved To: ' . PTS_SAVE_RESULTS_PATH . $merge_to_file . PHP_EOL . PHP_EOL;
|
||||
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . dirname($merge_to_file) . '/index.html');
|
||||
pts_client::display_result_view($merge_to_file, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2011 - 2018, Phoronix Media
|
||||
Copyright (C) 2011 - 2018, Michael Larabel
|
||||
Copyright (C) 2011 - 2019, Phoronix Media
|
||||
Copyright (C) 2011 - 2019, 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,6 +25,10 @@ class openbenchmarking_changes implements pts_option_interface
|
||||
const doc_section = 'OpenBenchmarking.org';
|
||||
const doc_description = 'This option will list recent changes to test profiles of enabled OpenBenchmarking.org repositories.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('recently_updated_tests');
|
||||
}
|
||||
public static function run($r)
|
||||
{
|
||||
pts_client::$display->generic_heading('Recently Updated OpenBenchmarking.org Tests');
|
||||
|
||||
45
pts-core/commands/recently_added_tests.php
Normal file
45
pts-core/commands/recently_added_tests.php
Normal file
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2011 - 2019, Phoronix Media
|
||||
Copyright (C) 2011 - 2019, 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 recently_added_tests implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'OpenBenchmarking.org';
|
||||
const doc_description = 'This option will list the most recently added (newest) test profiles.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('newest_tests');
|
||||
}
|
||||
public static function run($r)
|
||||
{
|
||||
pts_client::$display->generic_heading('Recently Added OpenBenchmarking.org Tests');
|
||||
foreach(pts_openbenchmarking_client::recently_added_tests(20) as $added => $test_identifier)
|
||||
{
|
||||
$test_profile = new pts_test_profile($test_identifier);
|
||||
echo sprintf('%-36ls - %-35ls', pts_client::cli_just_bold($test_profile->get_identifier(false)), $test_profile->get_title()) . PHP_EOL;
|
||||
echo sprintf('%-36ls %-35ls', pts_client::cli_just_italic(date('d F Y', $added)), $test_profile->get_test_hardware_type() . ' Test') . PHP_EOL . PHP_EOL;
|
||||
}
|
||||
echo PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2018, Phoronix Media
|
||||
Copyright (C) 2008 - 2018, Michael Larabel
|
||||
Copyright (C) 2008 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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
|
||||
@@ -52,7 +52,7 @@ class refresh_graphs implements pts_option_interface
|
||||
$t[] = array(pts_client::cli_just_bold('Graph Size: '), $graph_bytes . ' Bytes');
|
||||
echo pts_user_io::display_text_table($t) . PHP_EOL;
|
||||
echo PHP_EOL . 'The ' . $identifier . ' result file graphs have been refreshed.' . PHP_EOL;
|
||||
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $identifier . '/index.html');
|
||||
pts_client::display_result_view($identifier, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
69
pts-core/commands/remove_results_from_result_file.php
Normal file
69
pts-core/commands/remove_results_from_result_file.php
Normal file
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 remove_results_from_result_file implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = 'This option is used if there are test results (benchmarks) to be dropped from a given result file. The user must specify a saved results file and then they will be prompted to select the tests/benchmarks to remove.';
|
||||
|
||||
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_file = new pts_result_file($r[0]);
|
||||
|
||||
$remove_query = pts_user_io::prompt_user_input('Enter the title / arguments to search for to remove from this result file');
|
||||
$remove_count = 0;
|
||||
$table = array();
|
||||
foreach($result_file->get_result_objects() as $id => $result)
|
||||
{
|
||||
if(stripos($result->test_profile->get_title(), $remove_query) !== false || stripos($result->test_profile->get_result_scale(), $remove_query) !== false || stripos($result->get_arguments_description(), $remove_query) !== false)
|
||||
{
|
||||
$table[] = array($result->test_profile->get_title(), $result->get_arguments_description(), $result->test_profile->get_result_scale());
|
||||
$result_file->remove_result_object_by_id($id);
|
||||
$remove_count++;
|
||||
}
|
||||
}
|
||||
|
||||
if($remove_count == 0)
|
||||
{
|
||||
echo 'No matching result objects found.';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo PHP_EOL . pts_client::cli_just_bold('Results to remove: ') . PHP_EOL;
|
||||
echo pts_user_io::display_text_table($table) . PHP_EOL . PHP_EOL;
|
||||
$do_save = pts_user_io::prompt_bool_input('Save the result file changes?');
|
||||
if($do_save)
|
||||
{
|
||||
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
|
||||
pts_client::display_result_view($result_file, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2018, Phoronix Media
|
||||
Copyright (C) 2009 - 2018, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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,11 +20,15 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
class remove_from_result_file implements pts_option_interface
|
||||
class remove_run_from_result_file implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = '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.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('remove_from_result_file');
|
||||
}
|
||||
public static function argument_checks()
|
||||
{
|
||||
return array(
|
||||
@@ -58,7 +62,7 @@ class remove_from_result_file implements pts_option_interface
|
||||
}
|
||||
|
||||
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
|
||||
pts_client::display_web_page($result_dir . '/index.html');
|
||||
pts_client::display_result_view($result_file, false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2018, Phoronix Media
|
||||
Copyright (C) 2009 - 2018, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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
|
||||
@@ -51,7 +51,7 @@ class rename_identifier_in_result_file implements pts_option_interface
|
||||
|
||||
$result_file->rename_run($rename_identifier, $rename_identifier_new);
|
||||
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');
|
||||
pts_client::display_result_view($result_file, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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 - 2019, Phoronix Media
|
||||
Copyright (C) 2014 - 2019, 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
|
||||
@@ -50,7 +50,7 @@ class rename_result_file implements pts_option_interface
|
||||
echo PHP_EOL . 'Renamed ' . $result . ' to ' . $clean_result_name . '.' . PHP_EOL . PHP_EOL;
|
||||
}
|
||||
|
||||
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $clean_result_name . '/index.html');
|
||||
pts_client::display_result_view($clean_result_name, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2018, Phoronix Media
|
||||
Copyright (C) 2009 - 2018, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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
|
||||
@@ -69,7 +69,7 @@ class reorder_result_file implements pts_option_interface
|
||||
|
||||
$result_file->reorder_runs($sorted_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');
|
||||
pts_client::display_result_view($result_file, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
42
pts-core/commands/result_file_confidence.php
Normal file
42
pts-core/commands/result_file_confidence.php
Normal file
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 result_file_confidence implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = 'This option will read a saved test results file and display various statistics on the confidence of the results with the standard deviation, three-sigma values, and other metrics while color-coding "passing" results in green.';
|
||||
|
||||
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_file = new pts_result_file($r[0]);
|
||||
$result_output = pts_result_file_output::result_file_confidence_text($result_file, pts_client::terminal_width(), true);
|
||||
echo $result_output;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
47
pts-core/commands/result_file_raw_to_csv.php
Normal file
47
pts-core/commands/result_file_raw_to_csv.php
Normal file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 result_file_raw_to_csv implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = 'This option will read a saved test results file and output the raw result file run data to a CSV file. This raw (individual) result file output is intended for data analytic purposes where the result-file-to-csv is more end-user-ready.';
|
||||
|
||||
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_file = new pts_result_file($r[0]);
|
||||
$result_output = pts_result_file_output::result_file_raw_to_csv($result_file);
|
||||
|
||||
// To save the result:
|
||||
$file = pts_core::user_home_directory() . $r[0] . '-raw.csv';
|
||||
file_put_contents($file, $result_output);
|
||||
|
||||
echo PHP_EOL . pts_client::cli_just_bold('Saved To: ') . $file . PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
54
pts-core/commands/result_file_stats.php
Normal file
54
pts-core/commands/result_file_stats.php
Normal file
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 result_file_stats implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = 'This option is used if you wish to analyze a result file by seeing various statistics on the result data for result files containing at least two sets of data.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('winners_and_losers', 'result_stats');
|
||||
}
|
||||
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_file = new pts_result_file($args[0]);
|
||||
echo ' ' . pts_client::cli_colored_text($result_file->get_title(), 'gray', true) . PHP_EOL . PHP_EOL;
|
||||
|
||||
if($result_file->get_system_count() < 2)
|
||||
{
|
||||
echo PHP_EOL . 'There are not multiple test runs in this result file.' . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
|
||||
echo pts_result_file_analyzer::display_results_wins_losses($result_file);
|
||||
echo pts_result_file_analyzer::display_result_file_stats_pythagorean_means($result_file);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2018, Phoronix Media
|
||||
Copyright (C) 2009 - 2018, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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
|
||||
@@ -40,7 +40,7 @@ class result_file_to_csv implements pts_option_interface
|
||||
$file = pts_core::user_home_directory() . $r[0] . '.csv';
|
||||
file_put_contents($file, $result_output);
|
||||
|
||||
echo $result_output;
|
||||
echo PHP_EOL . pts_client::cli_just_bold('Saved To: ') . $file . PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2018, Phoronix Media
|
||||
Copyright (C) 2009 - 2018, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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,10 +33,10 @@ class result_file_to_pdf implements pts_option_interface
|
||||
}
|
||||
public static function run($r)
|
||||
{
|
||||
if(!function_exists('getimagesizefromstring'))
|
||||
if(!function_exists('getimagesizefromstring') || !function_exists('imagettftext') || !extension_loaded('gd'))
|
||||
{
|
||||
echo 'PHP GD support is required for this command.' . PHP_EOL . PHP_EOL;
|
||||
return false;
|
||||
echo pts_client::cli_just_bold('PHP GD support and TTF support are required for the PDF output if wanting to display the benchmark result graphs.') . PHP_EOL . PHP_EOL;
|
||||
//return false;
|
||||
}
|
||||
|
||||
$_REQUEST['force_format'] = 'PNG'; // Force to PNG renderer
|
||||
@@ -47,7 +47,7 @@ class result_file_to_pdf implements pts_option_interface
|
||||
$result_file = new pts_result_file($r[0]);
|
||||
$pdf_file = pts_core::user_home_directory() . $r[0] . '.pdf';
|
||||
$pdf_output = pts_result_file_output::result_file_to_pdf($result_file, $pdf_file, 'F');
|
||||
echo PHP_EOL . 'Saved To: ' . $pdf_file . PHP_EOL;
|
||||
echo PHP_EOL . pts_client::cli_just_bold('Saved To: ') . $pdf_file . PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ class result_file_to_text implements pts_option_interface
|
||||
public static function run($r)
|
||||
{
|
||||
$result_file = new pts_result_file($r[0]);
|
||||
$result_output = pts_result_file_output::result_file_to_text($result_file, pts_client::terminal_width());
|
||||
$result_output = pts_result_file_output::result_file_to_text($result_file, pts_client::terminal_width(), true);
|
||||
echo $result_output;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -145,8 +145,8 @@ class run_random_tests implements pts_option_interface
|
||||
$test_run_manager->auto_save_results($title, null, 'Various open-source benchmarks by the ' . pts_core::program_title(true) . '.', true);
|
||||
$test_run_manager->auto_generate_results_identifier();
|
||||
echo PHP_EOL;
|
||||
pts_client::$display->generic_sub_heading('Result File: ' . $test_run_manager->get_file_name());
|
||||
pts_client::$display->generic_sub_heading('Result Identifier: ' . $test_run_manager->get_results_identifier());
|
||||
pts_client::$display->generic_sub_heading(pts_client::cli_just_bold('Result File: ') . $test_run_manager->get_file_name());
|
||||
pts_client::$display->generic_sub_heading(pts_client::cli_just_bold('Result Identifier: ') . $test_run_manager->get_results_identifier());
|
||||
|
||||
// BENCHMARK
|
||||
$test_run_manager->pre_execution_process();
|
||||
|
||||
@@ -32,6 +32,7 @@ class search implements pts_option_interface
|
||||
|
||||
$table = array();
|
||||
$tests = array();
|
||||
$results_found = false;
|
||||
foreach(pts_search::search_test_profiles($search_query) as $test_profile)
|
||||
{
|
||||
$table[] = array(pts_client::cli_just_bold($test_profile->get_identifier()), $test_profile->get_title(), $test_profile->get_test_hardware_type());
|
||||
@@ -45,6 +46,7 @@ class search implements pts_option_interface
|
||||
}
|
||||
if(count($table) > 0)
|
||||
{
|
||||
$results_found = true;
|
||||
echo pts_client::cli_colored_text('TEST PROFILES', 'green', true) . PHP_EOL . pts_user_io::display_text_table($table, null, 1) . PHP_EOL . pts_client::cli_colored_text(pts_strings::plural_handler(count($table), 'Test') . ' Matching', 'gray');
|
||||
|
||||
$table = array();
|
||||
@@ -66,6 +68,7 @@ class search implements pts_option_interface
|
||||
}
|
||||
if(count($table) > 0)
|
||||
{
|
||||
$results_found = true;
|
||||
echo PHP_EOL . PHP_EOL . pts_client::cli_colored_text('TEST SUITES', 'green', true) . PHP_EOL . pts_user_io::display_text_table($table, null, 1) . PHP_EOL . pts_client::cli_colored_text(pts_strings::plural_handler(count($table), 'Suite') . ' Matching', 'gray');
|
||||
}
|
||||
|
||||
@@ -77,9 +80,15 @@ class search implements pts_option_interface
|
||||
}
|
||||
if(count($table) > 0)
|
||||
{
|
||||
$results_found = true;
|
||||
echo PHP_EOL . PHP_EOL . pts_client::cli_colored_text('TEST RESULTS', 'green', true) . PHP_EOL . pts_user_io::display_text_table($table, null, 1) . PHP_EOL . pts_client::cli_colored_text(pts_strings::plural_handler(count($table), 'Test Result') . ' Matching', 'gray');
|
||||
}
|
||||
|
||||
if(!$results_found)
|
||||
{
|
||||
echo PHP_EOL . pts_client::cli_just_bold('No Search Matches Found');
|
||||
}
|
||||
|
||||
echo PHP_EOL . PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,18 +25,87 @@ class shell implements pts_option_interface
|
||||
const doc_section = 'System';
|
||||
const doc_description = 'A simple text-driven shell interface / helper to the Phoronix Test Suite. Ideal for those that may be new to the Phoronix Test Suite';
|
||||
|
||||
protected static $auto_completion_cache = null;
|
||||
|
||||
public static function run($r)
|
||||
{
|
||||
pts_openbenchmarking::refresh_repository_lists();
|
||||
pts_client::$display->generic_heading('Interactive Shell');
|
||||
echo 'Generating Shell Cache...' . PHP_EOL;
|
||||
self::$auto_completion_cache = pts_documentation::client_commands_possible_values();
|
||||
echo 'Refreshing OpenBenchmarking.org Repository Cache...' . PHP_EOL;
|
||||
pts_openbenchmarking::refresh_repository_lists();
|
||||
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') . PHP_EOL : null);
|
||||
echo PHP_EOL;
|
||||
|
||||
$autocompletion = false;
|
||||
if(function_exists('readline') && function_exists('readline_completion_function'))
|
||||
{
|
||||
$autocompletion = ' Tab auto-completion support available.';
|
||||
}
|
||||
|
||||
$blacklisted_commands = array('shell', 'quit', 'exit');
|
||||
do
|
||||
{
|
||||
self::sensor_overview();
|
||||
echo PHP_EOL . 'Phoronix Test Suite command to run or ' . pts_client::cli_colored_text('help', 'green') . ' for all possible options, ' . pts_client::cli_colored_text('commands', 'green') . ' for a quick overview of options, ' . pts_client::cli_colored_text('interactive', 'green') . ' for a guided experience, ' . pts_client::cli_colored_text('system-info', 'green') . ' to view system hardware/software information, ' . pts_client::cli_colored_text('exit', 'green') . ' to exit. For new users, ' . pts_client::cli_colored_text('benchmark', 'green') . ' is the simplest and most important sub-command.' . ($autocompletion ? $autocompletion : '') . PHP_EOL;
|
||||
echo PHP_EOL . pts_client::cli_colored_text((phodevi::is_root() ? '#' : '$'), 'white') . ' ' . pts_client::cli_colored_text('phoronix-test-suite', 'gray') . ' ';
|
||||
if($autocompletion)
|
||||
{
|
||||
readline_completion_function(array('shell', 'shell_auto_completion_handler'));
|
||||
$input = readline();
|
||||
}
|
||||
else
|
||||
{
|
||||
$input = pts_user_io::read_user_input();
|
||||
}
|
||||
$argv = explode(' ', $input);
|
||||
if($argv[0] == 'phoronix-test-suite')
|
||||
{
|
||||
array_shift($argv);
|
||||
}
|
||||
$argc = count($argv);
|
||||
$sent_command = strtolower(str_replace('-', '_', (isset($argv[0]) ? $argv[0] : null)));
|
||||
if(!in_array($sent_command, $blacklisted_commands))
|
||||
{
|
||||
$passed = pts_client::handle_sent_command($sent_command, $argv, $argc);
|
||||
|
||||
if(!$passed)
|
||||
{
|
||||
if(empty($argv[0]))
|
||||
{
|
||||
echo PHP_EOL . pts_client::cli_colored_text('Enter command to run.', 'red', true) . PHP_EOL;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo PHP_EOL . pts_client::cli_colored_text('Unsupported command: ' . $argv[0], 'red', true) . PHP_EOL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if($autocompletion)
|
||||
{
|
||||
readline_add_history($input);
|
||||
}
|
||||
|
||||
$pass_args = array();
|
||||
for($i = 1; $i < $argc; $i++)
|
||||
{
|
||||
$pass_args[] = $argv[$i];
|
||||
}
|
||||
|
||||
pts_client::execute_command($sent_command, $pass_args); // Run command
|
||||
}
|
||||
}
|
||||
}
|
||||
while($sent_command != 'exit' && $sent_command != 'quit');
|
||||
}
|
||||
protected static function sensor_overview()
|
||||
{
|
||||
// SENSORS
|
||||
$terminal_width = pts_client::terminal_width();
|
||||
$sensors = array();
|
||||
foreach(phodevi::supported_sensors(array('cpu_usage', 'cpu_temp', 'sys_temp', 'gpu_usage', 'gpu_temp', 'memory_usage')) as $sensor)
|
||||
foreach(phodevi::supported_sensors(array('cpu_usage', 'cpu_temp', 'sys_temp', 'sys_power', 'gpu_usage', 'gpu_temp', 'memory_usage')) as $sensor)
|
||||
{
|
||||
$supported_devices = call_user_func(array($sensor[2], 'get_supported_devices'));
|
||||
|
||||
@@ -54,16 +123,20 @@ class shell implements pts_option_interface
|
||||
{
|
||||
$sensor_object = new $sensor[2](0, $device);
|
||||
$sensor_value = phodevi::read_sensor($sensor_object);
|
||||
if($sensor_value < 0)
|
||||
if($sensor_value < 0 || empty($sensor_value))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$sensor_name = phodevi::sensor_object_name($sensor_object) . ':';
|
||||
$sensor_unit = phodevi::read_sensor_object_unit($sensor_object);
|
||||
$sensor_unit = phodevi::read_sensor_object_unit_short($sensor_object);
|
||||
$sensors[] = array($sensor_name, $sensor_value, $sensor_unit);
|
||||
}
|
||||
}
|
||||
if(($uptime = phodevi::system_uptime()) > 0)
|
||||
{
|
||||
$sensors[] = array('System Uptime', round($uptime / 60), 'M');
|
||||
}
|
||||
$longest = array();
|
||||
foreach($sensors as $ar)
|
||||
{
|
||||
@@ -78,6 +151,7 @@ class shell implements pts_option_interface
|
||||
$sensor_length = array_sum($longest);
|
||||
$sensors_per_line = floor($terminal_width / $sensor_length);
|
||||
|
||||
echo PHP_EOL;
|
||||
$i = 0;
|
||||
foreach($sensors as $sensor_data)
|
||||
{
|
||||
@@ -93,32 +167,39 @@ class shell implements pts_option_interface
|
||||
|
||||
echo PHP_EOL;
|
||||
// END OF SENSORS
|
||||
$blacklisted_commands = array('shell', 'quit', 'exit');
|
||||
do
|
||||
{
|
||||
echo PHP_EOL . 'Phoronix Test Suite command to run or ' . pts_client::cli_colored_text('help', 'green') . ' for help, ' . pts_client::cli_colored_text('commands', 'green') . ' for possible options, ' . pts_client::cli_colored_text('interactive', 'green') . ' for a guided experience, ' . pts_client::cli_colored_text('exit', 'green') . ' to exit: ' . PHP_EOL;
|
||||
echo PHP_EOL . pts_client::cli_colored_text((phodevi::is_root() ? '#' : '$'), 'white') . ' ' . pts_client::cli_colored_text('phoronix-test-suite', 'gray') . ' ';
|
||||
$input = pts_user_io::read_user_input();
|
||||
$argv = explode(' ', $input);
|
||||
if($argv[0] == 'phoronix-test-suite')
|
||||
{
|
||||
array_shift($argv);
|
||||
}
|
||||
$argc = count($argv);
|
||||
$sent_command = strtolower(str_replace('-', '_', (isset($argv[0]) ? $argv[0] : null)));
|
||||
if(!in_array($sent_command, $blacklisted_commands))
|
||||
{
|
||||
pts_client::handle_sent_command($sent_command, $argv, $argc);
|
||||
$pass_args = array();
|
||||
for($i = 1; $i < $argc; $i++)
|
||||
{
|
||||
$pass_args[] = $argv[$i];
|
||||
}
|
||||
}
|
||||
protected static function shell_auto_completion_handler($input)
|
||||
{
|
||||
$possibilities = array();
|
||||
$readline_info = readline_info();
|
||||
$input = isset($readline_info['end']) ? substr($readline_info['line_buffer'], 0, $readline_info['end']) : $readline_info['line_buffer'];
|
||||
$input_length = strlen($input);
|
||||
$possible_sub_commands = pts_client::possible_sub_commands();
|
||||
|
||||
pts_client::execute_command($sent_command, $pass_args); // Run command
|
||||
$argv = explode(' ', trim($input));
|
||||
|
||||
if(count($argv) == 1 && !isset(self::$auto_completion_cache[$argv[0]]))
|
||||
{
|
||||
foreach($possible_sub_commands as $possibility)
|
||||
{
|
||||
if(substr($possibility, 0, $input_length) === $input)
|
||||
{
|
||||
$possibilities[] = $possibility;
|
||||
}
|
||||
}
|
||||
}
|
||||
while($sent_command != 'exit');
|
||||
else
|
||||
{
|
||||
$targeted_sub_command = $argv[0];
|
||||
if(isset(self::$auto_completion_cache[$argv[0]]))
|
||||
{
|
||||
$possibilities = self::$auto_completion_cache[$argv[0]];
|
||||
}
|
||||
}
|
||||
|
||||
//$possibilities[] = '';
|
||||
sort($possibilities);
|
||||
return $possibilities;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2008 - 2018, Phoronix Media
|
||||
Copyright (C) 2008 - 2018, Michael Larabel
|
||||
Copyright (C) 2008 - 2019, Phoronix Media
|
||||
Copyright (C) 2008 - 2019, 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
|
||||
@@ -40,15 +40,7 @@ class show_result implements pts_option_interface
|
||||
pts_client::generate_result_file_graphs($r[0], PTS_SAVE_RESULTS_PATH . $r[0] . '/');
|
||||
}
|
||||
|
||||
if(pts_client::read_env('DISPLAY') == false)
|
||||
{
|
||||
$rf = new pts_result_file($r[0]);
|
||||
echo pts_result_file_output::result_file_to_text($rf, pts_client::terminal_width());
|
||||
}
|
||||
else
|
||||
{
|
||||
pts_client::display_web_page($URL . '/index.html', null, false, true);
|
||||
}
|
||||
pts_client::display_result_view($r[0], false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
131
pts-core/commands/start_result_viewer.php
Normal file
131
pts-core/commands/start_result_viewer.php
Normal file
@@ -0,0 +1,131 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 start_result_viewer implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Viewer';
|
||||
const doc_description = 'Start the web-based result viewer.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('start_results_viewer');
|
||||
}
|
||||
public static function run($r)
|
||||
{
|
||||
if(pts_client::create_lock(PTS_USER_PATH . 'result_viewer_lock') == false)
|
||||
{
|
||||
trigger_error('The result viewer is already running.', E_USER_ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
pts_file_io::unlink(getenv('PTS_EXT_LAUNCH_SCRIPT_DIR') . '/web-server-launcher');
|
||||
if(PHP_VERSION_ID < 50400)
|
||||
{
|
||||
echo 'Running an unsupported PHP version. PHP 5.4+ is required to use this feature.' . PHP_EOL . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
|
||||
$server_launcher = '#!/bin/sh' . PHP_EOL;
|
||||
$web_port = 0;
|
||||
$remote_access = pts_config::read_user_config('PhoronixTestSuite/Options/ResultViewer/WebPort', 'RANDOM');
|
||||
|
||||
$fp = false;
|
||||
$errno = null;
|
||||
$errstr = null;
|
||||
|
||||
if($remote_access == 'RANDOM' || !is_numeric($remote_access))
|
||||
{
|
||||
do
|
||||
{
|
||||
if($fp)
|
||||
fclose($fp);
|
||||
|
||||
$remote_access = rand(8000, 8999);
|
||||
}
|
||||
while(($fp = fsockopen('127.0.0.1', $remote_access, $errno, $errstr, 5)) != false);
|
||||
echo 'Port ' . $remote_access . ' chosen as random port for this instance. Change the default port via the Phoronix Test Suite user configuration file.' . PHP_EOL;
|
||||
}
|
||||
|
||||
$remote_access = is_numeric($remote_access) && $remote_access > 1 ? $remote_access : false;
|
||||
$blocked_ports = array(2049, 3659, 4045, 6000, 9000);
|
||||
|
||||
if(pts_config::read_bool_config('PhoronixTestSuite/Options/ResultViewer/LimitAccessToLocalHost', 'TRUE'))
|
||||
{
|
||||
$server_ip = 'localhost';
|
||||
}
|
||||
else
|
||||
{
|
||||
// Allows server to be web accessible
|
||||
$server_ip = '0.0.0.0';
|
||||
}
|
||||
if(($fp = fsockopen('127.0.0.1', $remote_access, $errno, $errstr, 5)) != false)
|
||||
{
|
||||
fclose($fp);
|
||||
trigger_error('Port ' . $remote_access . ' is already in use by another server process. Close that process or change the Phoronix Test Suite server port via' . pts_config::get_config_file_location() . ' to proceed.', E_USER_ERROR);
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$web_port = $remote_access;
|
||||
}
|
||||
|
||||
// Setup server logger
|
||||
define('PHOROMATIC_SERVER', true);
|
||||
// Just create the logger so now it will flush it out
|
||||
echo pts_core::program_title(true) . ' starting web-based result viewer on ' . $web_port . PHP_EOL;
|
||||
echo 'Phoronix Test Suite Configuration File: ' . pts_config::get_config_file_location() . PHP_EOL;
|
||||
|
||||
// HTTP Server Setup
|
||||
// PHP Web Server
|
||||
echo PHP_EOL . 'Launching with PHP built-in web server.' . PHP_EOL;
|
||||
$ak = pts_config::read_user_config('PhoronixTestSuite/Options/ResultViewer/AccessKey', '');
|
||||
$server_launcher .= 'export PTS_VIEWER_ACCESS_KEY="' . (empty($ak) ? null : trim(hash('sha256', trim($ak)))) . '"' . PHP_EOL;
|
||||
$server_launcher .= 'export PTS_VIEWER_RESULT_PATH="' . PTS_SAVE_RESULTS_PATH . '"' . PHP_EOL;
|
||||
$server_launcher .= 'export PTS_VIEWER_PTS_PATH="' . getenv('PTS_DIR') . '"' . PHP_EOL;
|
||||
$server_launcher .= getenv('PHP_BIN') . ' -S ' . $server_ip . ':' . $web_port . ' -t ' . PTS_CORE_PATH . 'static/dynamic-result-viewer/ &' . PHP_EOL; //2> /dev/null
|
||||
$server_launcher .= 'http_server_pid=$!'. PHP_EOL;
|
||||
$server_launcher .= 'sleep 1' . PHP_EOL;
|
||||
$server_launcher .= 'echo "The result viewer is now accessible at: http://localhost:' . $web_port . '"' . PHP_EOL;
|
||||
|
||||
// Wait for input to shutdown process..
|
||||
if(!PTS_IS_DAEMONIZED_SERVER_PROCESS)
|
||||
{
|
||||
$server_launcher .= PHP_EOL . 'echo -n "Press [ENTER] to kill server..."' . PHP_EOL;
|
||||
$server_launcher .= PHP_EOL . 'read var_name';
|
||||
}
|
||||
else
|
||||
{
|
||||
$server_launcher .= PHP_EOL . 'while [ ! -f "/var/lib/phoronix-test-suite/end-phoromatic-server" ];';
|
||||
$server_launcher .= PHP_EOL . 'do';
|
||||
$server_launcher .= PHP_EOL . 'sleep 3';
|
||||
$server_launcher .= PHP_EOL . 'done';
|
||||
$server_launcher .= PHP_EOL . 'rm -f /var/lib/phoronix-test-suite/end-phoromatic-server' . PHP_EOL;
|
||||
}
|
||||
|
||||
// Shutdown / Kill Servers
|
||||
$server_launcher .= PHP_EOL . 'kill $http_server_pid';
|
||||
$server_launcher .= PHP_EOL . 'rm -f ~/.phoronix-test-suite/run-lock*';
|
||||
file_put_contents(getenv('PTS_EXT_LAUNCH_SCRIPT_DIR') . '/web-server-launcher', $server_launcher);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
50
pts-core/commands/strict_benchmark.php
Normal file
50
pts-core/commands/strict_benchmark.php
Normal file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 strict_benchmark implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Testing';
|
||||
const doc_description = 'This option is equivalent to the `benchmark` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('test');
|
||||
}
|
||||
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)
|
||||
{
|
||||
putenv('FORCE_TIMES_TO_RUN_MULTIPLE=2');
|
||||
putenv('FORCE_MIN_TIMES_TO_RUN=20');
|
||||
putenv('FORCE_MIN_TIMES_TO_RUN_CUTOFF=5');
|
||||
putenv('FORCE_ABSOLUTE_MIN_TIMES_TO_RUN=3');
|
||||
pts_test_installer::standard_install($r);
|
||||
$run_manager = new pts_test_run_manager();
|
||||
$run_manager->standard_run($r);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
50
pts-core/commands/strict_run.php
Normal file
50
pts-core/commands/strict_run.php
Normal file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2019, Phoronix Media
|
||||
Copyright (C) 2019, 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 strict_run implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Testing';
|
||||
const doc_description = 'This option is equivalent to the `run` option except it enables various options to run benchmarks an extended number of times for ensuring better statistical accuracy if enforcing strict controls over the data quality, in some cases running the benchmarks for 20+ times.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('test');
|
||||
}
|
||||
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)
|
||||
{
|
||||
putenv('FORCE_TIMES_TO_RUN_MULTIPLE=2');
|
||||
putenv('FORCE_MIN_TIMES_TO_RUN=20');
|
||||
putenv('FORCE_MIN_TIMES_TO_RUN_CUTOFF=5');
|
||||
putenv('FORCE_ABSOLUTE_MIN_TIMES_TO_RUN=3');
|
||||
//pts_test_installer::standard_install($r);
|
||||
$run_manager = new pts_test_run_manager();
|
||||
$run_manager->standard_run($r);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2009 - 2017, Phoronix Media
|
||||
Copyright (C) 2009 - 2017, Michael Larabel
|
||||
Copyright (C) 2009 - 2019, Phoronix Media
|
||||
Copyright (C) 2009 - 2019, 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
|
||||
@@ -47,7 +47,7 @@ class system_sensors implements pts_option_interface
|
||||
else
|
||||
{
|
||||
$sensor_object = new $sensor[2](0, $device);
|
||||
$tabled[] = array(pts_client::cli_just_bold(phodevi::sensor_object_name($sensor_object) . ': '), phodevi::read_sensor($sensor_object), pts_client::cli_colored_text(phodevi::read_sensor_object_unit($sensor_object), 'gray'));
|
||||
$tabled[] = array(pts_client::cli_just_italic(phodevi::sensor_object_identifier($sensor_object)) . ' ', pts_client::cli_just_bold(phodevi::sensor_object_name($sensor_object) . ': '), phodevi::read_sensor($sensor_object), pts_client::cli_colored_text(phodevi::read_sensor_object_unit($sensor_object), 'gray'));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2017, Phoronix Media
|
||||
Copyright (C) 2017, Michael Larabel
|
||||
Copyright (C) 2017 - 2019, Phoronix Media
|
||||
Copyright (C) 2017 - 2019, 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 unload_module implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Modules';
|
||||
const doc_description = '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.';
|
||||
const doc_description = 'This option can be used for easily removing a module from the AutoLoadModules 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.';
|
||||
|
||||
public static function run($r)
|
||||
{
|
||||
$loaded_modules = pts_strings::comma_explode(pts_config::read_user_config('PhoronixTestSuite/Options/Modules/LoadModules', null));
|
||||
$loaded_modules = pts_strings::comma_explode(pts_config::read_user_config('PhoronixTestSuite/Options/Modules/AutoLoadModules', null));
|
||||
echo PHP_EOL . 'Currently Loaded Modules: ' . PHP_EOL;
|
||||
echo pts_user_io::display_text_list($loaded_modules);
|
||||
|
||||
@@ -52,7 +52,7 @@ class unload_module implements pts_option_interface
|
||||
}
|
||||
}
|
||||
|
||||
$new_options = array('PhoronixTestSuite/Options/Modules/LoadModules' => implode(', ', $loaded_modules));
|
||||
$new_options = array('PhoronixTestSuite/Options/Modules/AutoLoadModules' => implode(', ', $loaded_modules));
|
||||
pts_config::user_config_generate($new_options);
|
||||
echo PHP_EOL . 'New user configuration file written.' . PHP_EOL . PHP_EOL;
|
||||
}
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2017 - 2018, Phoronix Media
|
||||
Copyright (C) 2017 - 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 winners_and_losers implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = '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.';
|
||||
|
||||
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_file = new pts_result_file($args[0]);
|
||||
$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;
|
||||
}
|
||||
|
||||
echo pts_client::cli_colored_text($result_file->get_title(), 'gray', true) . PHP_EOL;
|
||||
echo pts_client::cli_colored_text('RESULT COUNT: ', 'cyan', true) . $result_file->get_test_count() . PHP_EOL . PHP_EOL;
|
||||
$winners = array();
|
||||
$losers = array();
|
||||
$tests_counted = 0;
|
||||
|
||||
foreach($result_file->get_result_objects() as $result)
|
||||
{
|
||||
if($result->test_result_buffer->get_count() < 2)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$tests_counted++;
|
||||
$winner = $result->get_result_first();
|
||||
$loser = $result->get_result_last();
|
||||
|
||||
if(!isset($winners[$winner]))
|
||||
{
|
||||
$winners[$winner] = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
$winners[$winner]++;
|
||||
}
|
||||
|
||||
if(!isset($losers[$loser]))
|
||||
{
|
||||
$losers[$loser] = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
$losers[$loser]++;
|
||||
}
|
||||
}
|
||||
|
||||
arsort($winners);
|
||||
arsort($losers);
|
||||
|
||||
echo pts_client::cli_colored_text('WINS:', 'green', true) . PHP_EOL;
|
||||
$table = array();
|
||||
foreach($winners as $identifier => $count)
|
||||
{
|
||||
$table[] = array($identifier . ': ', $count, ' [' . pts_math::set_precision($count / $tests_counted * 100, 1) . '%]');
|
||||
}
|
||||
echo pts_user_io::display_text_table($table) . PHP_EOL;
|
||||
echo PHP_EOL . pts_client::cli_colored_text('LOSSES: ', 'red', true) . PHP_EOL;
|
||||
$table = array();
|
||||
foreach($losers as $identifier => $count)
|
||||
{
|
||||
$table[] = array($identifier . ': ', $count, ' [' . pts_math::set_precision($count / $tests_counted * 100, 1) . '%]');
|
||||
}
|
||||
echo pts_user_io::display_text_table($table) . PHP_EOL;
|
||||
echo PHP_EOL;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
53
pts-core/commands/wins_and_losses.php
Normal file
53
pts-core/commands/wins_and_losses.php
Normal file
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
Phoronix Test Suite
|
||||
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
|
||||
Copyright (C) 2017 - 2019, Phoronix Media
|
||||
Copyright (C) 2017 - 2019, 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 wins_and_losses implements pts_option_interface
|
||||
{
|
||||
const doc_section = 'Result Management';
|
||||
const doc_description = '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.';
|
||||
|
||||
public static function command_aliases()
|
||||
{
|
||||
return array('winners_and_losers');
|
||||
}
|
||||
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_file = new pts_result_file($args[0]);
|
||||
echo ' ' . pts_client::cli_colored_text($result_file->get_title(), 'gray', true) . PHP_EOL . PHP_EOL;
|
||||
|
||||
if($result_file->get_system_count() < 2)
|
||||
{
|
||||
echo PHP_EOL . 'There are not multiple test runs in this result file.' . PHP_EOL;
|
||||
return false;
|
||||
}
|
||||
|
||||
echo pts_result_file_analyzer::display_results_wins_losses($result_file);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -36,11 +36,16 @@ class microsoft_dependency_handler implements pts_dependency_handler
|
||||
$cwd = getcwd();
|
||||
$cygwin_location = self::get_cygwin();
|
||||
chdir(dirname($cygwin_location));
|
||||
echo PHP_EOL . 'Configuring Cygwin...' . PHP_EOL;
|
||||
echo PHP_EOL . 'Configuring Cygwin for handling of some portable test scripts, extracting .tar.gz/xz files, and other script helpers... More details on the Phoronix Test Suite for Windows @ https://github.com/phoronix-test-suite/phoronix-test-suite/blob/master/documentation/phoronix-test-suite-window.md ' . PHP_EOL;
|
||||
shell_exec(basename($cygwin_location) . ' -q -P unzip -P wget -P bc -P which -W');
|
||||
chdir($cwd);
|
||||
}
|
||||
|
||||
if(!is_file(self::file_download_location() . 'mdstool-cli-20190519.exe'))
|
||||
{
|
||||
pts_network::download_file('http://www.phoronix-test-suite.com/benchmark-files/mdstool-cli-20190519.exe', self::file_download_location() . 'mdstool-cli.exe');
|
||||
}
|
||||
|
||||
if(is_file('C:\cygwin64\etc\fstab') && stripos(file_get_contents('C:\cygwin64\etc\fstab'), 'noacl') === false)
|
||||
{
|
||||
// noacl is needed to not mess with file permissions
|
||||
@@ -123,17 +128,19 @@ class microsoft_dependency_handler implements pts_dependency_handler
|
||||
foreach($files_to_download as $url)
|
||||
{
|
||||
$download_destination = $download_location . basename($url);
|
||||
echo $url . PHP_EOL . ' - ' . $download_destination . PHP_EOL;
|
||||
// echo ' ' . $url . ' - ' . $download_destination . PHP_EOL;
|
||||
if(is_file($download_destination))
|
||||
{
|
||||
echo 'File Already Present' . PHP_EOL;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Downloading...' . PHP_EOL;
|
||||
//echo 'Downloading...' . PHP_EOL;
|
||||
$download_package = new pts_test_file_download($url);
|
||||
pts_client::$display->test_install_download_file('DOWNLOAD', $download_package);
|
||||
pts_network::download_file($url, $download_destination);
|
||||
}
|
||||
echo 'Executing...' . PHP_EOL;
|
||||
//echo 'Executing...' . PHP_EOL;
|
||||
shell_exec(basename($url));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
# Arch package installation
|
||||
|
||||
echo "Please enter your root password below:" 1>&2
|
||||
su root -c "pacman -Sy --noconfirm --needed $*"
|
||||
su root -c "pacman -Sy --noconfirm --needed --asdeps $*"
|
||||
exit
|
||||
|
||||
@@ -4,6 +4,9 @@ if [ -x /usr/bin/aptitude ]; then
|
||||
# aptitude is nice since it doesn't fail if a non-existant package is hit
|
||||
# See: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=503215
|
||||
su -c "aptitude -y install $*"
|
||||
elif [ `whoami` = "admin" ] && [ -x /usr/bin/sudo ]; then
|
||||
# Amazon EC2 is admin user, sudo works
|
||||
sudo apt-get -y --ignore-missing install $*
|
||||
else
|
||||
su -c "apt-get -y --ignore-missing install $*"
|
||||
fi
|
||||
|
||||
@@ -3,5 +3,11 @@
|
||||
# Mandriva package installation
|
||||
|
||||
echo "Please enter your root password below:" 1>&2
|
||||
su - root -c "urpmi --auto $*"
|
||||
|
||||
if which dnf >/dev/null 2>&1 ;
|
||||
then
|
||||
su - root -c "dnf -y install $*"
|
||||
else
|
||||
su - root -c "urpmi --auto $*"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -9,6 +9,7 @@ elif [ `whoami` != "root" ] && [ ! -z "$DISPLAY" ]; then
|
||||
elif [ -x /usr/bin/sudo ]; then
|
||||
ROOT="/usr/bin/sudo"
|
||||
fi
|
||||
$ROOT -- su -c "apt-get -y --ignore-missing install $*"
|
||||
elif [ -z "$DISPLAY" ]; then
|
||||
sudo -- apt-get -y --ignore-missing install $*
|
||||
else
|
||||
@@ -20,6 +21,4 @@ fi
|
||||
# aptitude is nice since it doesn't fail if a non-existant package is hit
|
||||
# See: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=503215
|
||||
# $ROOT -- "aptitude -y install $*"
|
||||
#else
|
||||
$ROOT -- su -c "apt-get -y --ignore-missing install $*"
|
||||
#fi
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
</Information>
|
||||
<Package>
|
||||
<GenericName>common-dependencies</GenericName>
|
||||
<PackageName>unzip</PackageName>
|
||||
<FileCheck>unzip</FileCheck>
|
||||
<PackageName>unzip bash</PackageName>
|
||||
<FileCheck>unzip bash</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>gtk-development</GenericName>
|
||||
@@ -38,16 +38,12 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>build-utilities</GenericName>
|
||||
<PackageName>gcc make build-base automake autoconf</PackageName>
|
||||
<PackageName>gcc make build-base automake autoconf linux-headers</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>cairo-development</GenericName>
|
||||
<PackageName>cairo</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>xorg-development</GenericName>
|
||||
<PackageName>xorg-server</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>tiff</GenericName>
|
||||
<PackageName>tiff</PackageName>
|
||||
@@ -72,6 +68,10 @@
|
||||
<GenericName>maven</GenericName>
|
||||
<PackageName>maven</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>portaudio-development</GenericName>
|
||||
<PackageName>portaudio</PackageName>
|
||||
@@ -174,7 +174,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python</GenericName>
|
||||
<PackageName>python</PackageName>
|
||||
<PackageName>python python3</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>yasm</GenericName>
|
||||
|
||||
@@ -6,11 +6,6 @@
|
||||
<Name>Arch Linux</Name>
|
||||
<PackageManager>pacman</PackageManager>
|
||||
</Information>
|
||||
<Package>
|
||||
<GenericName>common-dependencies</GenericName>
|
||||
<PackageName>mesa-demos</PackageName>
|
||||
<FileCheck>glxinfo</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>gtk-development</GenericName>
|
||||
<PackageName>gtk2</PackageName>
|
||||
@@ -35,6 +30,10 @@
|
||||
<GenericName>pcre</GenericName>
|
||||
<PackageName>pcre</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>nasm</GenericName>
|
||||
<PackageName>nasm</PackageName>
|
||||
@@ -82,7 +81,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>java</GenericName>
|
||||
<PackageName>jdk8-openjdk</PackageName>
|
||||
<PackageName>jdk11-openjdk</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>maven</GenericName>
|
||||
@@ -106,7 +105,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>zlib-development</GenericName>
|
||||
<PackageName>zlib1</PackageName>
|
||||
<PackageName>zlib</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>jpeg-development</GenericName>
|
||||
@@ -116,6 +115,10 @@
|
||||
<GenericName>bc</GenericName>
|
||||
<PackageName>bc</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>freeimage</GenericName>
|
||||
<PackageName>freeimage</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>perl</GenericName>
|
||||
<PackageName>perl</PackageName>
|
||||
@@ -145,6 +148,10 @@
|
||||
<GenericName>qt4-development</GenericName>
|
||||
<PackageName>qt4</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>qt5-development</GenericName>
|
||||
<PackageName>qt5-base qt5-examples</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>autoconf</GenericName>
|
||||
<PackageName>autoconf</PackageName>
|
||||
@@ -205,11 +212,12 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python</GenericName>
|
||||
<PackageName>python</PackageName>
|
||||
<PackageName>python python-pip</PackageName>
|
||||
<FileCheck>pip3</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>yasm</GenericName>
|
||||
<PackageName>yasm</PackageName>
|
||||
<PackageName>yasm nasm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>lib3ds</GenericName>
|
||||
@@ -239,6 +247,10 @@
|
||||
<GenericName>openmpi-development</GenericName>
|
||||
<PackageName>openmpi</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<PackageName>libevent</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>dune</GenericName>
|
||||
<PackageName>dune-common dune-grid dune-istl</PackageName>
|
||||
@@ -277,7 +289,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python-sklearn</GenericName>
|
||||
<PackageName>python2-scikit-learn</PackageName>
|
||||
<PackageName>python-scikit-learn</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>V8</GenericName>
|
||||
@@ -291,5 +303,13 @@
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>mongodb</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -38,6 +38,10 @@
|
||||
<GenericName>build-utilities</GenericName>
|
||||
<PackageName>autoconf automake gcc</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>cairo-development</GenericName>
|
||||
<PackageName>cairo</PackageName>
|
||||
@@ -230,6 +234,10 @@
|
||||
<GenericName>redis-server</GenericName>
|
||||
<PackageName>redis</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<PackageName>libevent</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>opencv</GenericName>
|
||||
<PackageName>opencv</PackageName>
|
||||
@@ -250,5 +258,13 @@
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>mongodb</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -28,6 +28,10 @@
|
||||
<GenericName>java</GenericName>
|
||||
<PackageName>java/openjdk8</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>maven</GenericName>
|
||||
<PackageName>maven</PackageName>
|
||||
@@ -50,8 +54,8 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>build-utilities</GenericName>
|
||||
<PackageName>autoconf automake gmake bash</PackageName>
|
||||
<FileCheck>autoconf, gmake, bash</FileCheck>
|
||||
<PackageName>autoconf automake gmake bash pkgconf</PackageName>
|
||||
<FileCheck>autoconf, gmake, bash, pkgconf</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>nasm</GenericName>
|
||||
@@ -139,11 +143,11 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>yasm</GenericName>
|
||||
<PackageName>yasm</PackageName>
|
||||
<PackageName>nasm yasm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>gmp-library</GenericName>
|
||||
<PackageName>fgmp</PackageName>
|
||||
<PackageName>gmp</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>subversion</GenericName>
|
||||
@@ -216,5 +220,17 @@
|
||||
<GenericName>Rscript</GenericName>
|
||||
<PackageName>R</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>mongodb</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>rust</GenericName>
|
||||
<PackageName>rust</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
</Information>
|
||||
<Package>
|
||||
<GenericName>common-dependencies</GenericName>
|
||||
<PackageName>unzip</PackageName>
|
||||
<FileCheck>unzip</FileCheck>
|
||||
<PackageName>unzip bzip2</PackageName>
|
||||
<FileCheck>unzip, bzip2</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>32bit-compatibility</GenericName>
|
||||
@@ -42,6 +42,10 @@
|
||||
<GenericName>nasm</GenericName>
|
||||
<PackageName>nasm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>vulkan-development</GenericName>
|
||||
<PackageName>vulkan-devel</PackageName>
|
||||
@@ -64,7 +68,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>build-utilities</GenericName>
|
||||
<PackageName>gcc gcc-c++ make autoconf automake glibc-static patch</PackageName>
|
||||
<PackageName>gcc gcc-c++ make autoconf automake glibc-static patch expat-devel</PackageName>
|
||||
<FileCheck>gcc, c++</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
@@ -163,6 +167,10 @@
|
||||
<GenericName>qt4-development</GenericName>
|
||||
<PackageName>qt4-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>qt5-development</GenericName>
|
||||
<PackageName>qt5-qtbase-devel qt5-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>autoconf</GenericName>
|
||||
<PackageName>autoconf</PackageName>
|
||||
@@ -171,6 +179,10 @@
|
||||
<GenericName>libtool</GenericName>
|
||||
<PackageName>libtool</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<PackageName>libevent-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>ncurses-development</GenericName>
|
||||
<PackageName>ncurses-devel</PackageName>
|
||||
@@ -246,7 +258,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>yasm</GenericName>
|
||||
<PackageName>yasm</PackageName>
|
||||
<PackageName>yasm nasm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>lib3ds</GenericName>
|
||||
@@ -324,5 +336,13 @@
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>mongodb</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -247,6 +247,12 @@
|
||||
<PossibleNames>libqt4-dev, libqt4-devel, qt4-devel</PossibleNames>
|
||||
<FileCheck>qmake OR qmake-qt4</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>qt5-development</GenericName>
|
||||
<Title>Qt5 Development Files</Title>
|
||||
<PossibleNames>libqt5-dev, qt5-devel</PossibleNames>
|
||||
<FileCheck>qmake</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>autoconf</GenericName>
|
||||
<Title>Autoconf</Title>
|
||||
@@ -257,7 +263,13 @@
|
||||
<GenericName>libtool</GenericName>
|
||||
<Title>Libtool</Title>
|
||||
<PossibleNames>libtool</PossibleNames>
|
||||
<FileCheck>libtool</FileCheck>
|
||||
<FileCheck>libtool OR libtoolize</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<Title>Libevent</Title>
|
||||
<PossibleNames>libevent, libevent-dev</PossibleNames>
|
||||
<FileCheck>event.h</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>popt</GenericName>
|
||||
@@ -342,7 +354,7 @@
|
||||
<GenericName>python</GenericName>
|
||||
<Title>Python</Title>
|
||||
<PossibleNames>python</PossibleNames>
|
||||
<FileCheck>python</FileCheck>
|
||||
<FileCheck>python OR python3 OR python2</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python-boost-development</GenericName>
|
||||
@@ -506,5 +518,23 @@
|
||||
<PossibleNames>wine</PossibleNames>
|
||||
<FileCheck>wine</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<Title>MongoDB</Title>
|
||||
<PossibleNames>mongodb</PossibleNames>
|
||||
<FileCheck>mongo</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<Title>Node.js + NPM</Title>
|
||||
<PossibleNames>npm, nodejs</PossibleNames>
|
||||
<FileCheck>npm</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<Title>Expat XML Parser Library</Title>
|
||||
<PossibleNames>libexpat1-dev, expat</PossibleNames>
|
||||
<FileCheck>expat.h</FileCheck>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -30,6 +30,10 @@
|
||||
<GenericName>openssl-development</GenericName>
|
||||
<PackageName>dev-libs/openssl</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>dev-libs/expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>cairo-development</GenericName>
|
||||
<PackageName>x11-libs/cairo</PackageName>
|
||||
@@ -304,6 +308,10 @@
|
||||
<GenericName>V8</GenericName>
|
||||
<PackageName>dev-lang/v8</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<PackageName>dev-libs/libevent</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>ruby</GenericName>
|
||||
<PackageName>dev-lang/ruby</PackageName>
|
||||
@@ -312,5 +320,9 @@
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>virtual/wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>dev-db/mongodb</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -36,6 +36,10 @@
|
||||
<GenericName>libpng-development</GenericName>
|
||||
<PackageName>libpng</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>nasm</GenericName>
|
||||
<PackageName>nasm</PackageName>
|
||||
@@ -188,5 +192,9 @@
|
||||
<GenericName>git</GenericName>
|
||||
<PackageName>git-core</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<ExternalDependencies>
|
||||
<Information>
|
||||
<Name>Mandriva</Name>
|
||||
<Aliases>Mageia, OpenMandriva</Aliases>
|
||||
<Aliases>Mageia, OpenMandriva, OpenMandrivaLinux</Aliases>
|
||||
<PackageManager>urpmi</PackageManager>
|
||||
</Information>
|
||||
<Package>
|
||||
@@ -35,6 +35,10 @@
|
||||
<GenericName>p7zip</GenericName>
|
||||
<PackageName>p7zip</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>nasm</GenericName>
|
||||
<PackageName>nasm</PackageName>
|
||||
@@ -53,8 +57,8 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>build-utilities</GenericName>
|
||||
<PackageName>task-c-devel task-c++-devel</PackageName>
|
||||
<FileCheck>/usr/bin/gcc, /usr/bin/bison, /usr/bin/flex</FileCheck>
|
||||
<PackageName>clang automake autoconf bison flex</PackageName>
|
||||
<FileCheck>/usr/bin/clang, /usr/bin/bison, /usr/bin/flex</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>xorg-development</GenericName>
|
||||
@@ -267,5 +271,9 @@
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -18,17 +18,17 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>java</GenericName>
|
||||
<PackageName>https://github.com/ojdkbuild/ojdkbuild/releases/download/9.0.4-1/java-9-openjdk-9.0.4-1.b11.ojdkbuild.windows.x86_64.msi</PackageName>
|
||||
<PackageName>https://github.com/ojdkbuild/ojdkbuild/releases/download/11.0.1-1/java-11-openjdk-11.0.1.13-1.ojdkbuild.windows.x86_64.msi</PackageName>
|
||||
<FileCheck>C:\Program Files\ojdkbuild OR C:\Program Files\Java</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>golang</GenericName>
|
||||
<PackageName>https://dl.google.com/go/go1.10.windows-amd64.msi</PackageName>
|
||||
<PackageName>https://dl.google.com/go/go1.11.4.windows-amd64.msi</PackageName>
|
||||
<FileCheck>C:\Go</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>perl</GenericName>
|
||||
<PackageName>http://strawberryperl.com/download/5.26.1.1/strawberry-perl-5.26.1.1-64bit.msi</PackageName>
|
||||
<PackageName>http://strawberryperl.com/download/5.28.1.1/strawberry-perl-5.28.1.1-64bit.msi</PackageName>
|
||||
<FileCheck>C:\Strawberry\perl\bin</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
@@ -38,12 +38,12 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python</GenericName>
|
||||
<PackageName>https://www.python.org/ftp/python/3.6.4/python-3.6.4-amd64.exe https://www.python.org/ftp/python/2.7.14/python-2.7.14.amd64.msi python2</PackageName>
|
||||
<PackageName>https://www.python.org/ftp/python/3.7.1/python-3.7.1-amd64.exe https://www.python.org/ftp/python/2.7.15/python-2.7.15.amd64.msi python2 python37 python37-pip</PackageName>
|
||||
<FileCheck>C:\Python27</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>git</GenericName>
|
||||
<PackageName>https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/Git-2.16.2-64-bit.exe</PackageName>
|
||||
<PackageName>https://github.com/git-for-windows/git/releases/download/v2.20.1.windows.1/Git-2.20.1-64-bit.exe</PackageName>
|
||||
<FileCheck>C:\Program Files\Git</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
@@ -61,5 +61,34 @@
|
||||
<PackageName>cmake</PackageName>
|
||||
<FileCheck>C:\cygwin64\bin\cmake.exe</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>https://nodejs.org/dist/latest-v11.x/node-v11.5.0-x64.msi</PackageName>
|
||||
<FileCheck>C:\Program Files\nodejs</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>tesseract</GenericName>
|
||||
<PackageName>https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-v4.0.0.20181030.exe</PackageName>
|
||||
<FileCheck>C:\Program Files (x86)\Tesseract-OCR</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>firefox</GenericName>
|
||||
<PackageName>https://ftp.mozilla.org/pub/firefox/releases/65.0.2/win64/en-US/Firefox%20Setup%2065.0.2.exe</PackageName>
|
||||
<FileCheck>C:\Program Files\Mozilla Firefox</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>google-chrome</GenericName>
|
||||
<PackageName></PackageName>
|
||||
<FileCheck>C:\Program Files (x86)\Google\Chrome</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>rust</GenericName>
|
||||
<PackageName>https://static.rust-lang.org/dist/rust-beta-x86_64-pc-windows-msvc.msi</PackageName>
|
||||
<FileCheck>rustc.exe</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>opencv</GenericName>
|
||||
<PackageName>https://github.com/opencv/opencv/releases/download/3.4.3/opencv-3.4.3-vc14_vc15.exe</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -23,6 +23,10 @@
|
||||
<GenericName>java</GenericName>
|
||||
<PackageName>openjdk7-bin</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>maven</GenericName>
|
||||
<PackageName>maven</PackageName>
|
||||
|
||||
@@ -21,6 +21,10 @@
|
||||
<PackageName>SDL SDL_net SDL_image</PackageName>
|
||||
<FileCheck>/usr/pkg/include/SDL/SDL.h, /usr/pkg/include/SDL/SDL_net.h, /usr/pkg/include/SDL/SDL_image.h</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>glut</GenericName>
|
||||
<PackageName>glut</PackageName>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</Information>
|
||||
<Package>
|
||||
<GenericName>common-dependencies</GenericName>
|
||||
<PackageName>dmidecode Mesa-demo-x</PackageName>
|
||||
<PackageName>Mesa-demo-x</PackageName>
|
||||
<FileCheck>glxinfo</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
@@ -28,6 +28,10 @@
|
||||
<GenericName>glut</GenericName>
|
||||
<PackageName>freeglut-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>openssl-development</GenericName>
|
||||
<PackageName>libopenssl-devel</PackageName>
|
||||
@@ -306,9 +310,21 @@
|
||||
<GenericName>ruby</GenericName>
|
||||
<PackageName>ruby</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<PackageName>libevent-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>mongodb</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -24,6 +24,10 @@
|
||||
<PackageName>glut</PackageName>
|
||||
<FileCheck>/usr/lib/libglut.so.3, /usr/include/GL/glut.h</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>csh</GenericName>
|
||||
<PackageName>tcsh</PackageName>
|
||||
|
||||
@@ -28,6 +28,10 @@
|
||||
<PackageName>libcairo-devel</PackageName>
|
||||
<FileCheck>/usr/include/cairo/cairo.h</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>glut</GenericName>
|
||||
<PackageName>libmesaglut3-devel</PackageName>
|
||||
|
||||
@@ -165,6 +165,10 @@
|
||||
<GenericName>curl</GenericName>
|
||||
<PackageName>curl-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat-devel</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>fftw3-development</GenericName>
|
||||
<PackageName>fftw-devel</PackageName>
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
<Package>
|
||||
<GenericName>build-utilities</GenericName>
|
||||
<PackageName>build-essential autoconf</PackageName>
|
||||
<FileCheck>/usr/share/build-essential</FileCheck>
|
||||
<FileCheck>/usr/share/build-essential, autoconf</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>cairo-development</GenericName>
|
||||
@@ -89,7 +89,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>java</GenericName>
|
||||
<PackageName>openjdk-8-jdk</PackageName>
|
||||
<PackageName>openjdk-11-jdk</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>maven</GenericName>
|
||||
@@ -183,6 +183,11 @@
|
||||
<PackageName>libqt4-dev libqt4-opengl-dev</PackageName>
|
||||
<FileCheck>qmake-qt4, qt4/Qt/qgl.h</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>qt5-development</GenericName>
|
||||
<PackageName>qml-module-qtquick2 qtdeclarative5-dev qt5-default qtbase5-dev</PackageName>
|
||||
<FileCheck>qmake</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>autoconf</GenericName>
|
||||
<PackageName>autoconf</PackageName>
|
||||
@@ -191,6 +196,10 @@
|
||||
<GenericName>libtool</GenericName>
|
||||
<PackageName>libtool</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>libevent</GenericName>
|
||||
<PackageName>libevent-dev</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>ncurses-development</GenericName>
|
||||
<PackageName>libncurses5-dev</PackageName>
|
||||
@@ -205,7 +214,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>curl</GenericName>
|
||||
<PackageName>libcurl3 curl libcurl4-openssl-dev</PackageName>
|
||||
<PackageName>curl libcurl4-openssl-dev</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>fftw3-development</GenericName>
|
||||
@@ -213,7 +222,7 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>blas-development</GenericName>
|
||||
<PackageName>libblas-dev</PackageName>
|
||||
<PackageName>libblas-dev libopenblas-base libopenblas-dev</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>lapack-development</GenericName>
|
||||
@@ -260,7 +269,8 @@
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python</GenericName>
|
||||
<PackageName>python python3-pip</PackageName>
|
||||
<PackageName>python python-pip python3-pip</PackageName>
|
||||
<FileCheck>pip3, python, python3</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>python-boost-development</GenericName>
|
||||
@@ -273,11 +283,11 @@
|
||||
<Package>
|
||||
<GenericName>python-numpy</GenericName>
|
||||
<PackageName>python-numpy</PackageName>
|
||||
<FileCheck>/usr/share/pyshared/numpy/version.py</FileCheck>
|
||||
<FileCheck>/usr/share/pyshared/numpy/version.py OR /usr/lib/python2.7/dist-packages/numpy/version.py</FileCheck>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>yasm</GenericName>
|
||||
<PackageName>yasm</PackageName>
|
||||
<PackageName>yasm nasm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>gmp-library</GenericName>
|
||||
@@ -373,5 +383,17 @@
|
||||
<GenericName>wine</GenericName>
|
||||
<PackageName>wine</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>mongodb</GenericName>
|
||||
<PackageName>mongodb</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>node-npm</GenericName>
|
||||
<PackageName>npm</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>libexpat1-dev</PackageName>
|
||||
</Package>
|
||||
</ExternalDependencies>
|
||||
</PhoronixTestSuite>
|
||||
|
||||
@@ -112,6 +112,10 @@
|
||||
<GenericName>smartmontools</GenericName>
|
||||
<PackageName>smartmontools</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>expat</GenericName>
|
||||
<PackageName>expat</PackageName>
|
||||
</Package>
|
||||
<Package>
|
||||
<GenericName>zlib-development</GenericName>
|
||||
<PackageName>zlib-devel</PackageName>
|
||||
|
||||
@@ -50,18 +50,9 @@ class graphics_override extends pts_module_interface
|
||||
shell_exec("nvidia-settings --assign " . $attribute . "=" . $value . " 2>&1");
|
||||
}
|
||||
}
|
||||
public static function set_amd_pcsdb($attribute, $value)
|
||||
{
|
||||
// Sets a value for AMD's PCSDB, Persistent Configuration Store Database
|
||||
if(phodevi::is_ati_graphics() && phodevi::is_linux() && !empty($value))
|
||||
{
|
||||
$DISPLAY = substr(pts_client::read_env("DISPLAY"), 1, 1);
|
||||
$info = shell_exec("DISPLAY=:" . $DISPLAY . " aticonfig --set-pcs-val=" . $attribute . "," . $value . " 2>&1");
|
||||
}
|
||||
}
|
||||
public static function __pre_run_process()
|
||||
{
|
||||
if(!(phodevi::is_nvidia_graphics() || (phodevi::is_ati_graphics() && phodevi::is_linux())))
|
||||
if(!phodevi::is_nvidia_graphics())
|
||||
{
|
||||
echo "\nNo supported driver found for graphics_override module!\n";
|
||||
return pts_module::MODULE_UNLOAD; // Not using a supported driver, quit the module
|
||||
@@ -100,34 +91,6 @@ class graphics_override extends pts_module_interface
|
||||
self::set_nvidia_extension("FSAAAppControlled", 0);
|
||||
}
|
||||
}
|
||||
else if(phodevi::is_ati_graphics())
|
||||
{
|
||||
self::$preset_aa = phodevi_linux_parser::read_amd_pcsdb("OpenGL,AntiAliasSamples");
|
||||
self::$preset_aa_control = phodevi_linux_parser::read_amd_pcsdb("OpenGL,AAF");
|
||||
|
||||
switch($force_aa)
|
||||
{
|
||||
case 2:
|
||||
$ati_aa = "0x00000002";
|
||||
break;
|
||||
case 4:
|
||||
$ati_aa = "0x00000004";
|
||||
break;
|
||||
case 8:
|
||||
$ati_aa = "0x00000008";
|
||||
break;
|
||||
case 16:
|
||||
echo "\nThe ATI fglrx driver currently does not support 16x AA! Defaulting to 8x AA!\n";
|
||||
$ati_aa = "0x00000008";
|
||||
break;
|
||||
}
|
||||
|
||||
if(isset($ati_aa))
|
||||
{
|
||||
self::set_amd_pcsdb("OpenGL,AntiAliasSamples", $ati_aa);
|
||||
self::set_amd_pcsdb("OpenGL,AAF", "0x00000000");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($force_af !== FALSE && in_array($force_af, self::$supported_af_levels))
|
||||
@@ -160,31 +123,6 @@ class graphics_override extends pts_module_interface
|
||||
self::set_nvidia_extension("LogAnisoAppControlled", 0);
|
||||
}
|
||||
}
|
||||
else if(phodevi::is_ati_graphics())
|
||||
{
|
||||
self::$preset_af = phodevi_linux_parser::read_amd_pcsdb("OpenGL,AnisoDegree");
|
||||
|
||||
switch($force_af)
|
||||
{
|
||||
case 2:
|
||||
$ati_af = "0x00000002";
|
||||
break;
|
||||
case 4:
|
||||
$ati_af = "0x00000004";
|
||||
break;
|
||||
case 8:
|
||||
$ati_af = "0x00000008";
|
||||
break;
|
||||
case 16:
|
||||
$ati_af = "0x00000010";
|
||||
break;
|
||||
}
|
||||
|
||||
if(isset($ati_af))
|
||||
{
|
||||
self::set_amd_pcsdb("OpenGL,AnisoDegree", $ati_af);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public static function __post_option_process()
|
||||
@@ -202,18 +140,6 @@ class graphics_override extends pts_module_interface
|
||||
self::set_nvidia_extension("LogAnisoAppControlled", self::$preset_af_control);
|
||||
}
|
||||
}
|
||||
else if(phodevi::is_ati_graphics())
|
||||
{
|
||||
if(self::$preset_aa !== FALSE)
|
||||
{
|
||||
self::set_amd_pcsdb("OpenGL,AntiAliasSamples", self::$preset_aa);
|
||||
self::set_amd_pcsdb("OpenGL,AAF", self::$preset_aa_control);
|
||||
}
|
||||
if(self::$preset_af !== FALSE)
|
||||
{
|
||||
self::set_amd_pcsdb("OpenGL,AnisoDegree", self::$preset_af);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user