Skip to content

Integration benchmark tests #1298

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

WojciechNagorski
Copy link
Collaborator

@WojciechNagorski WojciechNagorski commented Jan 27, 2024

2023.0.0

SshClient

Method Mean Error StdDev Allocated
Connect 93.18 ms 1.816 ms 2.162 ms 165.78 KB

Master

SshClient

Method Mean Error StdDev Allocated
Connect 92.74 ms 1.645 ms 1.285 ms 158.17 KB

After change

SftpClient on this branch:

Method Mean Error StdDev Allocated
Connect 95.89 ms 1.907 ms 2.735 ms 190.51 KB
ConnectAsync 95.91 ms 1.877 ms 2.867 ms 192.3 KB
UploadAndDownload 16.48 ms 0.236 ms 0.221 ms 54.45 KB

SshClient on this branch:

Method Mean Error StdDev Allocated
Connect 35.644 ms 0.4266 ms 0.3782 ms 140.41 KB
ConnectAsync 35.572 ms 0.2993 ms 0.2653 ms 142.17 KB
ConnectAndRunCommand 92.598 ms 1.7199 ms 1.9807 ms 156.12 KB
ConnectAsyncAndRunCommand 93.462 ms 1.8312 ms 2.7408 ms 157.86 KB
RunCommand 6.242 ms 0.0646 ms 0.0604 ms 77.46 KB

ScpClient on this branch:

Method Mean Error StdDev Allocated
Connect 35.89 ms 0.389 ms 0.345 ms 140.51 KB
ConnectAsync 35.77 ms 0.441 ms 0.391 ms 142.14 KB
ConnectUploadAndDownload 109.93 ms 2.189 ms 2.342 ms 184.81 KB
UploadAndDownload 22.89 ms 0.432 ms 0.404 ms 42.46 KB

@WojciechNagorski
Copy link
Collaborator Author

Of course the times are not deterministic, but they are good enough. However, allocations are 100 percent deterministic.

Copy link
Collaborator

@Rob-Hague Rob-Hague left a comment

Choose a reason for hiding this comment

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

Cool!

I think it could be useful for getting profiles for different scenarios. I got it to work with [EtwProfiler] with a reference to BenchmarkDotNet.Diagnostics.Windows. Which is better EventPipeProfiler or EtwProfiler?

@WojciechNagorski
Copy link
Collaborator Author

@Rob-Hague Can you check if is ok?

Copy link
Collaborator

@Rob-Hague Rob-Hague left a comment

Choose a reason for hiding this comment

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

Nice

@WojciechNagorski WojciechNagorski merged commit 0371af9 into sshnet:develop Jan 28, 2024
@WojciechNagorski WojciechNagorski deleted the integration-benchmark-tests branch January 28, 2024 10:05
@WojciechNagorski
Copy link
Collaborator Author

This issue has been fixed in the 2024.0.0 version.

@WojciechNagorski WojciechNagorski added this to the 2024.0.0 milestone Feb 22, 2024
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