[erlang-questions] Inter-node communication bottleneck

Jon Schneider <>
Wed Aug 20 13:37:02 CEST 2014


Isn't this simply pushing the performance of Erlang regardless of
networking ?

I'm sitting at a machine which yes is several years old and running
Windows XP but with a simple ping-pong atom message test between a pair of
processes I get around 125k messages/second.

Compiling with [hipe] doesn't seem to make any difference.

Jon

> Hi, Thanks for reply!
>
> I just tried, but it seems that there is no signigicant difference
> on performance. Here's script which used on benchmarking.
>
> https://gist.github.com/yjh0502/68d6ffce93bcbc425435
>
>
>
> On Wed, Aug 20, 2014 at 02:11:07PM +0400, Alexander Petrovsky wrote:
>> Hello!
>>
>> Have you tried to use:
>>
>> #  erl ... inet_default_connect_options '[{delay_send, true}]'
>>  inet_default_listen_options '[{delay_send, true}]'
>>
>> ?
>>
>>
>> 2014-08-19 16:59 GMT+04:00 Jihyun Yu <>:
>>
>> > Hi,
>> >
>> > There is a prior discusson[1] about inter-node communication
>> bottleneck,
>> > and I experienced same issue on inter-node messaging. I dig into the
>> > issue and it found that there is a lock on inter-node messaging[2]
>> which
>> > causes bottleneck on sending messages to single node. With simple
>> > experiment, I found that there is a limitation on number of messages
>> per
>> > second, not bandwidth. 1Gbps link could be easily satuated by
>> messaging
>> > betweeen two erlang nodes if message size is large enough, e.g. 4KB
>> > binary message. However if message is small, e.g. single integer term,
>> > number of messages per seconds is limited about 200~300k/sec.
>> >
>> > Is there any effort to solve the problem? In fact the problem could be
>> > solved by using external channel like multiple TCP connection pool for
>> > rpc, but I believe using erlang messaging keeps code much simpler.
>> > Actually for me the problem is quite embrassing, because I thought
>> > scalable messaging is a key feature and strength of Erlang.
>> >
>> >
>> > [1]
>> http://erlang.org/pipermail/erlang-questions/2013-December/076232.html
>> > [2]
>> > https://github.com/erlang/otp/blob/OTP-17.1/erts/emulator/beam/dist.c#L1768-L1826
>> > _______________________________________________
>> > erlang-questions mailing list
>> > 
>> > http://erlang.org/mailman/listinfo/erlang-questions
>> >
>>
>>
>>
>> --
>> Петровский Александр / Alexander Petrovsky,
>>
>> Skype: askjuise
>> Phone: +7 914 8 820 815
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions
>




More information about the erlang-questions mailing list