Re: gen_udp:recv()

Jesper Louis Andersen <[email protected]>
Newsgroups gmane.comp.lang.erlang.general
Message-ID <CAGrdgiU9_sA_Z5SEafW9xUgX65G6srBvoeOs6xt-Fjs3wX0dag@mail.gmail.com>
On Wed, Apr 7, 2021 at 3:50 PM Avinash Dhumane <[email protected]> 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.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.