-
Notifications
You must be signed in to change notification settings - Fork 86
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
Performance analysis and performance improvments of the networking code #1420
Comments
Previous profile was from an Arm system, this is from an x86 vm. |
From the profiling one can see that it is the actual sending of the data that is consuming CPU. We have an excessive amount of syscalls for every SDU we write,
However even with a segment size limit of 13000 bytes 99% of all messages will end up being far smaller, say around 700 bytes for a single empty block. By coalescing messages from the same miniprotocol while they are waiting for service we can reduce the number of write calls even further. Doing this improves the speed by 20%. At this point the client appears to be the bottle neck. |
Profile with static max segment size and coalescing messages as described above |
1434: Perfermance improvements for sending. r=karknu a=karknu Implements performance improvements discussed in #1420 . Co-authored-by: Karl Knutsson <[email protected]>
1434: Perfermance improvements for sending. r=karknu a=karknu Implements performance improvements discussed in #1420 . Co-authored-by: Karl Knutsson <[email protected]>
@karknu performance analysis revealed:
The text was updated successfully, but these errors were encountered: