Skip to content

Add Dotnet Benchmark Runner#103

Draft
GarrettBeatty wants to merge 44 commits into
awslabs:mainfrom
GarrettBeatty:gcbeatty/dotnet
Draft

Add Dotnet Benchmark Runner#103
GarrettBeatty wants to merge 44 commits into
awslabs:mainfrom
GarrettBeatty:gcbeatty/dotnet

Conversation

@GarrettBeatty
Copy link
Copy Markdown

@GarrettBeatty GarrettBeatty commented May 8, 2025

Issue #, if available:

Description of changes:
Add Dotnet benchmark runner. I ran locally for both download and upload and it successfully prints out the results.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@GarrettBeatty GarrettBeatty marked this pull request as ready for review May 8, 2025 15:38
Comment thread runners/s3-benchrunner-dotnet/README.md Outdated
@GarrettBeatty GarrettBeatty marked this pull request as draft May 8, 2025 16:31
Comment thread runners/s3-benchrunner-dotnet/README.md Outdated
Comment thread runners/s3-benchrunner-dotnet/README.md Outdated
Comment on lines +74 to +77
foreach (var task in workloadConfig.Tasks)
{
var startTime = DateTimeOffset.UtcNow;
for (int run = 1; run <= workloadConfig.MaxRepeatCount; run++)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The runner isn't supposed to time how long each individual task takes. It's supposed to time how long it takes to do ALL tasks in the workload.

This is because many Transfer Managers have "upload folder" functionality, where they do a lot of work in parallel, and it often takes a lot of parallel work to really max out the machine.

If you don't want to support parallel work in this first draft, then if you get a workload with multiple tasks, have the runner quit with the special "skipping workload" exit code: 123.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated to use upload folder functionality and updated the time to be all of the tasks

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.

2 participants