Commit Graph

11 Commits

Author SHA1 Message Date
Dirkjan Ochtman 80b8ffdb4b Use newer rustls-pki-types PEM parser API 2025-09-02 17:46:40 +00:00
Dreamacro f5632ce2ee perf: move client and server on one binary 2025-08-26 05:36:31 +00:00
Dirkjan Ochtman 85dde101bd perf: adopt more convential crate layout 2021-03-04 12:36:49 -08:00
Matthias Einwag da1014c913 Allow to set send and receive buffer sizes in perf application
Also default to 2MB, which provides reasonable baseline performance.
2021-03-04 11:01:42 +01:00
Matthias Einwag f38a877b76 Print perf server errors with context
This avoids losing error context
2021-03-04 11:01:42 +01:00
Matthias Einwag 516dcd8885 Use debug instead of trace messages in the perf server
This provides basic output without seeing all the quic packet info in between.
2021-03-04 11:01:42 +01:00
Matthias Einwag 312c0f041c Perf: Use owned buffers
Use zero-copy APIs when sending data in perf application.

Performance difference:
1. First line is before
2. Second line is after (but with only the download write change)

```
      │ Duration  │ FBL       | Upload Throughput | Download Throughput
──────┼───────────┼───────────┼───────────────────┼────────────────────
 AVG  │    5.00ms │    1.00ms │      332.82 MiB/s │        334.20 MiB/s
 AVG  │    5.00ms │    0.00ns │      332.64 MiB/s │        335.96 MiB/s
```

=> Makes less than 1%. Still neat to have
2021-03-02 09:13:00 +01:00
Matthias Einwag 3de2727b94 Perf: Prefer more efficient cipher suites
Prefer AES128 in order to maximize throughput
2021-03-02 07:01:16 +01:00
Matthias Einwag 82a065ac3e Make perf up and download more efficient
Pass a bigger buffer to write calls to minimize the amount of write calls.
2021-03-02 07:01:16 +01:00
Matthias Einwag 12039602ae perf: use tokio::try_join instead of select
We want all subtasks to complete, and not only a single one.
2021-03-02 07:01:16 +01:00
Benjamin Saunders a9aaf40943 Implement perf protocol for standardized benchmarking 2021-02-28 22:31:43 +01:00