On Wed, May 06, 2015 at 03:00:57PM +0700, Vu Le wrote: > Does 8-core limitation still apply for recent version of > pdns-recursor? If the answer is yes, what is the best way to fully > utilize all cores on a 20-core machine. I guest I will have to use > multiple instance?
Hi Vu Le, It really depends - we've been doing measurements, and find that while more cores do not increase bulk performance a lot, they do wonderful things for query latency, especially when under some kind of attack. But it is probably still true that threads=20 does not get you the best performance. You might get very good results with 4 PowerDNS Recursor each with threads=4, and then use dnsdist to loadbalance between them. You can also just run 4 recursors on 4 IP addresses of course and hand those out. For more details, see http://dnsdist.org/ The reasons why we can't scale to infinity are multiple by the way. Threads share stuff, even when you don't want them to: they share the socket, a random generator, the malloc implementation, and within the C and C++ libraries there are loads of locks. We currently recommend that you try to scale to no more than 70kqps per server, as above that level, the resulting query loads can start to reach 500kqps which tends to max out most server hardware, unless you are very careful. Good luck! Bert > > Thanks everybody > Vu Le. > > P/S: Sorry for accidentally hitting send button on last email. > > _______________________________________________ > Pdns-users mailing list > [email protected] > http://mailman.powerdns.com/mailman/listinfo/pdns-users > _______________________________________________ Pdns-users mailing list [email protected] http://mailman.powerdns.com/mailman/listinfo/pdns-users
