Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revamp label compression code which (+ some cleanups) speeds up large packet creation by ~40% #4373

Merged
merged 13 commits into from Sep 1, 2016

Conversation

ahupowerdns
Copy link
Contributor

This is a big change that comes with a number of new tests.

After:
'write big referral' 0.10 seconds: 67707.6 runs/s, 14.77 usec/run
Before:
'write big referral' 0.10 seconds: 42556.4 runs/s, 23.50 usec/run

A 37% improvement.

Impact on root-server performance:
rootplot

Is in line with these numbers - we now have good service in 4 cores up to around 80kqps, trouble used to start a bit beyond 40kqps. This graph has 60% packet cacheability.

ahupowerdns and others added 13 commits August 27, 2016 14:15
…gh these live on the stack, we were going through needless motions.
…n of names within themselves. Output easier to interpret than that from test-dnsrecords.
…lloc. This commit has a bug with compression within records, and it will fail the tests we made for that too.
…now. Solves SOA-inter record compression bug. Still left to do: add check for names with more labels than we are prepared to handle. Plus handle that case.
…ctor can't compress. Plus deal with that case.
@pieterlexis pieterlexis added this to the auth-4.1.0 milestone Aug 30, 2016
}
catch(std::bad_alloc& ba) {
if(l_verbose)
cout<<"Domain "<<name<<" too large to compress"<<endl;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I'm not mistaken, name is not the culprit here, the message might be misleading.

@rgacogne
Copy link
Member

rgacogne commented Sep 1, 2016

Looks fine!

@ahupowerdns ahupowerdns merged commit 0669f70 into PowerDNS:master Sep 1, 2016
@Habbie Habbie added auth and removed auth labels Sep 2, 2016
@ahupowerdns ahupowerdns modified the milestone: auth-4.1.0 Feb 23, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants