Re: [Capy/Corosio review] Benchmark results

Marcelo Zimbres Silva via Boost <[email protected]> Fri, 3 Jul 2026 00:09:37 +0200
Newsgroups gmane.comp.lib.boost.devel
Message-ID <CAPGXEnEKM64a3ShbCwAqq5vnPS2L-KHiz-gDtQ2VMiZ3Vxp9Dw@mail.gmail.com>
On Mon, 29 Jun 2026 at 12:54, Ruben Perez <[email protected]> wrote:
>
> Have you considered replicating your experiments on the cost of async
> abstractions [1], but for Capy/Corosio?

I haven't had the time unfortunately but I am also interested in the
outcome.  As a protocol library Capy seems to offer appropriate ground
for e.g. sans-io (net) protocol implementations, however, the cost of
doing so is unclear to me.

A single read from the socket can contain hundreds or perhaps
thousands of messages in a client/server Redis setup. That means an
(async) coroutine based parser of that protocol would be plagued with
immediate completions if it has to suspend to communicate new messages
(yield), this is not particularly costly because it can be done
without a trip to the event loop (symmetrical transfer). I guess
however there is still a cost, worse yet, with the maximum number of
inline calls set to 16 by default [1] the rescheduling cost might be
prohibitively high (as I discussed in the paper you linked).

This is obviously not Capy/Corosio fault but it raises questions about
how wide is the usefulness as a protocol library. I am also interested
in hearing from boost.http authors whether any of this has been taken
into account.

[1] https://develop.corosio.cpp.al/corosio/4.guide/4c2.configuration.html
inline_budget_max 16
_______________________________________________
Boost mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://lists.boost.org/mailman3/lists/boost.lists.boost.org/
Archived at: https://lists.boost.org/archives/list/[email protected]/message/RIPS2LEJDADFHR3IYVTYCOLX4WM73MEB/