Conversation
|
The existing code is documented to use same |
|
GNU coreutils uses |
|
Optimal value might different at each PC. 64*1024 was best for me. |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This measures throughput in the most ideal scenario for a large buffer, we should ensure performance does not regress in other cases where output is small. |
|
Time for small input is bounded. But I could use smaller buf only for 1st cycle. |
|
Please test something like: |
This comment was marked as outdated.
This comment was marked as outdated.
6897cbc to
0a8e582
Compare
|
I added a code path for smaller input. There is variance at Both of win and lose happen at |
7c43c1f to
dac8b97
Compare
|
GNU testsuite comparison: |
|
GNU testsuite comparison: |
|
needs to be rebased |
|
GNU testsuite comparison: |
|
GNU testsuite comparison: |
@oech3 Could you quantify the performance improvement from the additional code path to justify the added complexity? |
|
This PR was opened for larger files. Mostly 0 perf change for small files. |
|
Please add a benchmark in a different PR |
|
GNU testsuite comparison: |
|
Is it equivalint with ? |
|
How to use stdin at benchmark? |
taskset -c 1 yes|taskset -c 2 target/release/tee|taskset -c 3 pv>/dev/nullThis PR: [3.83GiB/s]
gnu58d88d243/tee: [2.83GiB/s]
closes #11432