Move benchmarks to Rust (#7134)

All benchmarks are done in Rust and can be invoked with
`cargo bench`.

Currently this has it's own "harness" that behaves like
`./tools/benchmark.py` did.
Because of this tests inside `cli/bench` are currently not run.
This should be switched to the language provided harness
once the `#[bench]` attribute has been stabilized.
This commit is contained in:
Valentin Anger 2020-08-28 15:03:50 +02:00 committed by GitHub
parent 3d23208019
commit 31f32ed8c4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
31 changed files with 1196 additions and 701 deletions

View file

@ -361,20 +361,6 @@ def extract_max_latency_in_milliseconds(pattern, string):
return num * 1000
def parse_wrk_output(output):
stats = {}
stats['req_per_sec'] = None
stats['max_latency'] = None
for line in output.split("\n"):
if stats['req_per_sec'] is None:
stats['req_per_sec'] = extract_number(r'Requests/sec:\s+(\d+)',
line)
if stats['max_latency'] is None:
stats['max_latency'] = extract_max_latency_in_milliseconds(
r'\s+99%(?:\s+(\d+.\d+)([a-z]+))', line)
return stats
def platform():
return {"linux2": "linux", "darwin": "mac", "win32": "win"}[sys.platform]