gen_udp:recv()

Jesper Louis Andersen jesper.louis.andersen@REDACTED
Fri Apr 9 11:52:58 CEST 2021


On Wed, Apr 7, 2021 at 3:50 PM Avinash Dhumane <trigunatit@REDACTED> wrote:

>
>
> I am taking the “tick-to-order” processing (in stock-market parlance) out
> of Erlang and into Rust to meet this ultra-low latency requirement.
>
>
I know Janes St. has a separate OCaml ingester which handles the message
feed of this form and transforms it into a more digestible format for the
rest of their systems. The key point is to demux the stream quickly and
send relevant information into another CPU core for further processing. It
also cuts down traffic in the case you can throw away a lot of messages
from the feed you aren't interested in. At 10us per message, it isn't as if
your general processing budget is very high. However, if you have a larger
machine, the pure erlang solution is to use something like {active, N} or
{active, true} and then move messages into other processes as fast as
possible, as Valentin suggests. To me, 60-200us per udp message sounds way
too high and my hunch is that this is due to configuration.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20210409/d3a10106/attachment.htm>


More information about the erlang-questions mailing list