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
Try benchmarking cat with io_uring's splice support #1472
Comments
Until this project is super stable, I have been thinking about an optional build flag that inserts a lightweight shim for Linux that if you pass a --classic flag it passes arguments to the old GNU core-util binary. It would also allow for super easy expectation tests both for performance and output equivalence. A riff on the test harness that Kernighan built for AWK: https://www.cs.princeton.edu/courses/archive/spring01/cs333/awktest.html The same setup could be used to compare any two shell utility binaries for regression tests too. Thoughts? |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Ah no worries, I'll open this back up. If only to document that this is still a possible improvement. Thanks for letting me know! |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
I already have PR #1289 which needs some more work before being considered for inclusion in the project. In said PR, cat uses
splice()
instead ofread()
on Linux, drastically increasing throughput. In the most recent kernel (5.7),io_uring
will finally gainsplice
support. I want to try comparing aio_uring
+splice()
implementation ofcat
with a normalsplice()
-only implementation.The text was updated successfully, but these errors were encountered: