Performance Questions and Poller Implementation in Project Loom
Alan Bateman
Alan.Bateman at oracle.com
Fri Nov 10 11:25:36 UTC 2023
On 10/11/2023 00:12, robert engels wrote:
> Btw, I had a chance to check out Helidon 4.0 and the results are
> mixed. I really like the programming model.
>
> In a very simple (and probably not very meaningful nor scientific)
> test github.com/robaho/httpserver
> <https://urldefense.com/v3/__http://github.com/robaho/httpserver__;!!ACWV5N9M2RV99hQ!MaRcL-OkeTKhFMLWO41GoPNPaU62g46ixqLDPzafDqnq3M0aXR6wNkSkQ5LVZ3xZ8Q1ocjsybl6R9Mc9SA$> outperforms
> it by 2x. I couldn’t get it to work on Linux (see
> https://github.com/helidon-io/helidon/issues/7983
> <https://urldefense.com/v3/__https://github.com/helidon-io/helidon/issues/7983__;!!ACWV5N9M2RV99hQ!MaRcL-OkeTKhFMLWO41GoPNPaU62g46ixqLDPzafDqnq3M0aXR6wNkSkQ5LVZ3xZ8Q1ocjsybl5NK77uZQ$>),
> which is strange given that they have very similar non-async designs.
>
> The robaho httpserver achieves more than 6GB/sec on Linux under the
> same conditions as reported in the issue. Hopefully the Helidon team
> checks it out and makes some recommendations or at least provides
> reasoning around the performance issues.
>
If I read this correctly, this is comparing two HTTP servers that serve
up responses with a 1MB payload through the loopback interface.
For the Helidon case, it's Socket.write with the socket's send buffer
(SO_SNDBUF) set to 32k. The robaho server is using SocketChannel.write
channel's socket send buffer set to 1.3MB. You probably need to
configure them to be the same.
-Alan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/loom-dev/attachments/20231110/6f691bcc/attachment.htm>
More information about the loom-dev
mailing list