On Thu, Oct 20, 2022 at 3:46 PM Rémy Maucherat <r...@apache.org> wrote:
> Ok, that is reasonable and seeing what can be expected in the best
> case is a good plan. Async will indeed be a bit more expensive with
> Loom, just like blocking is more expensive with NIO(2).

I'm starting testing, and it looks like the basics work, as you said.
The first item is to identify a best case scenario for Loom. I decided
to try with a static file (in the context of Tomcat, a low level API
would be very similar in terms of IO), but maybe this is not it and a
Servlet doing computations would be better for Loom (with less IO
load).
Pulling out my good old ab, I have some rather interesting results.
-c 1 (no concurrency) is looking awesome for Loom, where it basically
destroys NIO.
However, it degrades quickly from there. -c 2 is already a lot closer.
-c 5 is the inflexion point where NIO pulls ahead. Then as concurrency
increases Loom becomes slower. Thankfully, it doesn't degrade too much
from there and with high concurrency it remains reasonably close. I
don't have a high core count CPU though so this could make for some
differences as well.

Overall I would say this matches your finding. I tested with my
panama-foreign Java "20" build. We should probably wait for the real
Java 20 to start making decisions.

Rémy

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to