Timofey Solomko
c9e10ebc35
[swcomp] Rework exiting with error codes
...
Different errors now have different error codes, the code for exiting is now standardized.
2022-05-20 17:00:22 +03:00
Timofey Solomko
c407bcfb9c
[swcomp] Add comparison with saved results via --compare option
2022-05-15 19:52:17 +03:00
Timofey Solomko
5db42cfb1c
[swcomp] Add --save option which allows to save benchmarking results in json format
2022-05-15 15:27:33 +03:00
Timofey Solomko
5daac3cd0a
[swcomp] Add -W shorthand for the --no-warmup option
2022-05-15 15:27:00 +03:00
Timofey Solomko
985ceb6cf8
[swcomp] Replace useSpeedFormatter with format function
2022-02-20 21:57:15 +03:00
Timofey Solomko
140c197c2e
[swcomp] Change defaultIterationCount to instance variable
2022-02-20 21:49:07 +03:00
Timofey Solomko
ee90c99ec6
[swcomp] Add benchmarks for compression ratio
2022-02-20 19:05:46 +03:00
Timofey Solomko
ebfcdfa9d2
[swcomp] Benchmarks can now disable speed formatter
2022-02-20 18:52:07 +03:00
Timofey Solomko
5423fd9fb5
[swcomp] Replace speed uncertainty with standard deviation
2022-02-20 18:44:26 +03:00
Timofey Solomko
62c2ce8494
[swcomp] Benchmarks can now customize default iteration count
2022-02-20 16:32:13 +03:00
Timofey Solomko
65d50a8ff7
[swcomp] Rewrite the benchmarking system
...
The intent was to decouple command-line stuff from the taking measurements stuff, while simplifyin the overall structure. It remains to be seen if these goals were achieved. Currently, compression ratio printing is disabled. Also the results from warmup iteration are also omitted (but it is likely that they won't be restored).
2022-01-30 20:32:03 +03:00
Timofey Solomko
8302790ae2
[swcomp] Add --no-warmup option to benchmark commands
2022-01-24 21:31:54 +03:00
Timofey Solomko
3ac1a6b378
[swcomp] Add --iteration-count option to benchmark commands
2022-01-24 20:25:38 +03:00
Timofey Solomko
a675323c60
[swcomp] Use custom SpeedFormatter instead of ByteCountFormatter
...
Basically, this is the old formatting functions that were used pre-4.8.0 (as such they should provide the same output formatting) but implemented in a more sane way, inspired by the ByteCountFormatter's API.
2022-01-24 00:26:22 +03:00
Timofey Solomko
3ab61e88bb
[swcomp] Adjust requirements for compression ratio computation
...
The type of the input is no longer checked (since it is no longer need due to the addition of benchmarkInputSize); it is now correctly checked that the size of the output, not input, is non-zero.
2022-01-13 22:45:03 +03:00
Timofey Solomko
8aa671a4e0
[swcomp] The result of BenchmarkCommand.benchmark is now discardable
2022-01-13 22:43:14 +03:00
Timofey Solomko
e3ada549fd
[swcomp] Replace custom SpeedFormat with Foundation's ByteCountFormatter
2022-01-11 22:35:22 +03:00
Timofey Solomko
2a60991067
[swcomp] Make BenchmarkCommand significantly more customizable + add ReaderTar benchmark
2022-01-11 22:16:07 +03:00
Timofey Solomko
1000194a7e
[swcomp] Make all classes final
2022-01-09 14:44:40 +03:00
Timofey Solomko
9241987e53
[swcomp] Add writer-tar benchmark
...
In addition move create-tar benchmark into BenchmarkGroup.swift file
2022-01-09 14:36:24 +03:00
Timofey Solomko
79295db930
Update copyright year to 2022
2022-01-08 15:02:59 +03:00
Timofey Solomko
dc93436269
[swcomp] Update to use SwiftCLI's property wrappers
...
This should fix all deprecation warnings.
2021-10-24 12:47:22 +03:00
Timofey Solomko
1324744785
[swcomp] Print compression ratio in appropriate benchmarks
2021-10-18 21:38:31 +03:00
Timofey Solomko
212e1808e7
[swcomp] Add benchmark command for LZ4 compression with dependent blocks
2021-10-16 20:31:32 +03:00
Timofey Solomko
1a49f0543d
[swcomp] Add benchmark command for LZ4 compression with independent blocks
...
LZ4 compression with block dependency will be added in the future (after SWCompression is fixed with regards to dependent blocks).
2021-10-15 22:44:55 +03:00
Timofey Solomko
d8f7b8a8f5
[swcomp] Add benchmark command for LZ4 decompression
2021-09-26 16:06:09 +03:00
Timofey Solomko
19c788eb30
[swcomp] Output uncertainty of the bench speed using avg speed units
2021-09-13 17:33:09 +03:00
Timofey Solomko
d7824df50c
[swcomp] Move most bench commands into BenchmarkGroup file
2021-09-13 17:32:16 +03:00
Timofey Solomko
3eed2595be
[swcomp] Output results as a speed
2021-09-12 23:50:46 +03:00
Timofey Solomko
03af95fb96
[swcomp] Add CreateTar benchmarking command
2021-09-12 19:12:27 +03:00
Timofey Solomko
2fa22370dc
[swcomp] Generalize BenchmarkCommand protocol
2021-09-12 19:11:39 +03:00
Timofey Solomko
e83f23effa
Update copyright year to 2021
2021-01-11 11:20:57 +02:00
Timofey Solomko
8ef90146e7
[swcomp] Improve the usage of articles in help messages
2020-05-18 13:18:32 +03:00
Timofey Solomko
31ec1f1553
Update copyright year to 2020
2020-01-01 19:06:33 +03:00
Timofey Solomko
ce47019097
Update copyright year to 2019
2019-01-02 23:15:43 +03:00
Timofey Solomko
7b404eea51
[swcomp] Improve benchmarks output (less overall lines, more flushing)
2018-12-09 12:49:11 +03:00
Timofey Solomko
5adf35365e
[swcomp] Make descriptions of benchmark commands and group shorter
2018-12-09 12:49:10 +03:00
Timofey Solomko
06183c25b6
[swcomp] Fix compilation failure on linux due to __stdoutp being absent there
2018-08-06 17:16:48 +03:00
Timofey Solomko
04ef9a0839
[swcomp] Print results for excluded iteration in benchmarks
2018-05-04 00:12:23 +03:00
Timofey Solomko
f2afe8ca16
[swcomp] Flush stdout after printing iteration number
2018-05-02 13:59:35 +03:00
Timofey Solomko
c2e2a8c801
[swcomp] Print leading zero in benchmark iteration number
2018-05-02 13:59:16 +03:00
Timofey Solomko
2d9daa17ec
[swcomp] Rewrite benchmark commands using new BenchmarkCommand protocol
2018-05-01 13:22:45 +03:00
Timofey Solomko
878c3af629
[swcomp] Add BenchmarkCommand protocol and its extension with execute function
...
It will allow us to reduce amount of repeating code in benchmark commands.
2018-05-01 13:22:39 +03:00
Timofey Solomko
cb91fd5899
[swcomp] Move source files into subfolders
2018-05-01 12:36:47 +03:00
Timofey Solomko
bd8fa0561a
[Benchmark] Don't take into account "first" iteration
2018-04-10 00:25:50 +03:00
Timofey Solomko
44582535ad
[Benchmark] Increase iterations amount from 6 to 10
2018-04-10 00:25:46 +03:00
Timofey Solomko
8fc390a680
[swcomp] Rename PerfTest to Benchmark
2018-03-03 13:43:57 +03:00