On Tue, Mar 19, 2013 at 8:54 PM, Matt <[email protected]> wrote: > I created a simple script to test cluster's performance sending messages to > workers. > > My problem is it slows down the send() rate significantly as I add workers, > starting at 1 worker being the fastest. I would expect the send() rate to be > completely untied to the number of workers (at least until you hit the > number of CPUs). My code does no more "work" in the master if there is 1 > worker or 20, so it's not making any sense to me. > > Tested on Mac (Core i7), EC2 and Linux (Xeon X5675). > > This occurs even after using taskset to set process affinity to using unique > cores for the master and each worker, in case someone's first thought was > hyperthreading being a problem. > > Any reason for this slow down? This was node 0.8.17. > > Code: https://gist.github.com/baudehlo/5199506
What numbers are you seeing? large_number / number_of_workers is what you should expect to see: a fairly constant total throughput with per-worker throughput inversely proportional to the number of workers. Re: hyperthreading, if that's enabled test with num_workers = num_cpus / 2 (and pin each worker to a separate physical CPU. Recent kernels do a pretty good job of managing that themselves, though.) -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
