[erlang-questions] CNODE performance question
Jesper Louis Andersen
jesper.louis.andersen@REDACTED
Mon May 9 15:59:05 CEST 2016
On Sun, May 8, 2016 at 2:11 AM, Matthew Evans <mattevans123@REDACTED>
wrote:
> The NIF code was getting a bit flakey so we made the call to implement it
> as a CNODE instead to avoid the NIF taking down the VM if it crashed.
I recently wrote a wrapper for OCaml so I could start a port program and
ferry operations to that. If you pipelined requests (not waiting for an
answer before sending the next request), the overhead amortized to roughly
1us. I could carry out about one million reqs/s utilizing a scheduler core
in Erlang and around 0.68 core in OCaml.
At this point, I decided it was fast enough for most of the work I'd
normally send to a foreign process for external work. If a request
completed over there in, say, 3ms, then the 1us overhead is small enough
that I wouldn't worry.
Requests waiting synchronously for an answer were about 30.000 reqs/s.
--
J.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20160509/18a583c5/attachment.htm>
More information about the erlang-questions
mailing list