[rabbitmq-discuss] Run RabbitMQ server with N scheduler threads

Aaron Westendorf aaron at agoragames.com
Mon Mar 19 15:08:33 GMT 2012


There are several things that can affect performance as you try to
saturate your cores. I documented some of what I encountered last year
in a blog post that may help you.

http://blog.agoragames.com/blog/2011/06/24/of-penguins-rabbits-and-buses/

cheers,
Aaron


On Fri, Mar 16, 2012 at 1:28 PM, Katerina Roukounaki <k4t3r1n4 at gmail.com> wrote:
> Hi!
>
> Since the RabbitMQ server is an Erlang application, I wanted to see whether
> it runs faster as I increase the number of scheduler threads in the Erlang
> VM that runs it (+S option of the erl program).
>
> For this purpose, I wrote a simple benchmark (in Erlang) that spawns P
> producer and P consumer processes and creates P queues. The i-th producer
> sends M messages to the i-th queue and the i-th consumer waits to receive
> them. My benchmark uses native Erlang messaging for sending and receiving
> messages.
>
> I attach the results I get when I run the benchmark with P=M=1000 on a
> machine with 16 cores and assign 1, 2, …, 16 scheduler threads to the VM
> that runs the RabbitMQ server.
>
> As you can see, things get better up to 6 schedulers, but with 7 or more
> schedulers it seems that there is no further speedup.
> Do you have any idea why this is happening?
> Is there some kind of synchronization among the processes that the RabbitMQ
> server spawns that explains it or should I look for bugs in my benchmark?
>
>
> Thanks!
> Katerina
>
>
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>



-- 
Aaron Westendorf
Senior Software Engineer
Agora Games
359 Broadway
Troy, NY 12180
Phone: 518.268.1000
aaron at agoragames.com
www.agoragames.com


More information about the rabbitmq-discuss mailing list