Skip to content
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

Use the default block size of asyncssh instead of overwriting it to 48 KiB #49

Open
mxmlnkn opened this issue Sep 30, 2024 · 0 comments · May be fixed by #52
Open

Use the default block size of asyncssh instead of overwriting it to 48 KiB #49

mxmlnkn opened this issue Sep 30, 2024 · 0 comments · May be fixed by #52
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@mxmlnkn
Copy link
Contributor

mxmlnkn commented Sep 30, 2024

Asyncssh is going to be improved to add a better default block size for file transfers by querying the server for the maximal supported one. In my case, this results in a block size of 256 KiB and a speedup of ~3x compared to a block size of 48 KiB.

However, it is very hard to make use of that improvement via sshfs because sshfs.SSHFile always overwrites the block size. If nothing is specified from the user, it overwrites the block size to 48 KiB. In order to create the benchmarks in #2 (comment), I currently disable the line with block_size=self.blocksize // self.max_requests,. But, this is only a quick hack, not a viable production-ready solution.

I think that if nothing is specified, then nothing should be overwritten for asyncssh. I see that it might pose a problem to initialize self.blocksize in this case, but I believe that this is only a performance-critical, so it could simply be set to some sensible guessed value in that case.

@shcheklein shcheklein added help wanted Extra attention is needed enhancement New feature or request labels Oct 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants