Skip to content

Conversation

stormshield-damiend
Copy link
Contributor

@stormshield-damiend stormshield-damiend commented Jul 9, 2025

This is still a work in progress and is placed here for discussion.

This allow uploading or downloading an infinite amount of bytes for a given duration and still have throughput statistics at the end of the duration.

Under the hood, this is a big rework of async tasks to spawn them. It uses two tokio CancellationTokens to first stop the drive_uni and drive_bi tasks, then stop the statistics tasks after having collected the statistics.

It work fine with upload only and download only but if you do upload and download at the same time (the default cas without any arguments), the download statistics are broken.

I did not tested the drive_uni part for now.

Example of call :

./perf_client localhost:4433 --duration 120 --upload-size 99999999999 --download-size 0

@stormshield-damiend stormshield-damiend force-pushed the quinn_perf_duration_stats branch from e185553 to 1e27cc3 Compare July 28, 2025 07:34
@stormshield-damiend stormshield-damiend force-pushed the quinn_perf_duration_stats branch from 1e27cc3 to 81ee331 Compare August 11, 2025 14:12
@stormshield-damiend stormshield-damiend force-pushed the quinn_perf_duration_stats branch 2 times, most recently from 78273a6 to 6125b56 Compare August 26, 2025 12:36
@stormshield-damiend stormshield-damiend force-pushed the quinn_perf_duration_stats branch from 6125b56 to ab4eca2 Compare August 27, 2025 08:47
@stormshield-damiend
Copy link
Contributor Author

For reference, download only mode is broken

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant