NSD 4.1.18rc1 pre-release

Hi,

NSD 4.1.18rc1 pre release is available:
http://www.nlnetlabs.nl/downloads/nsd/nsd-4.1.18rc1.tar.gz
sha256 747a8fb0ca0a6c057f02b17d60df132168f3ae2cf6b4b0e8937fb78df9eaa52e
pgp http://www.nlnetlabs.nl/downloads/nsd/nsd-4.1.18rc1.tar.gz.asc

This release has features for saving memory and faster notification.
With --enable-packed, 33% memory savings could be had, or something
along that size. Notification of secondary servers happens in parallel,
and has faster timeouts. More sockets are used for zone transfers.
This speeds up communication with a larger set of servers.

4.1.18

What is the downside of this option? I assume there is one, because
otherwise this would not be a compile time option?

I'm trying to make the determination for RHEL/CentOS/Fedora on whether
I want this compile time option enabled or not.

Paul

Hi Paul,

This release has features for saving memory and faster notification.
With --enable-packed, 33% memory savings could be had, or something
along that size. Notification of secondary servers happens in parallel,
and has faster timeouts. More sockets are used for zone transfers.
This speeds up communication with a larger set of servers.

What is the downside of this option? I assume there is one, because
otherwise this would not be a compile time option?

Packed structures are more difficult to access by the compiler. It is
likely that the compiler needs to generate more code to access members
in the data structure. The assumption that data is aligned in memory is
not there. The compiler will generate different code. Because it is
packed, it'll use less memory, but that code also has to be executed. I
don't know what the speed impact is, if any.

Best regards, Wouter

This release has features for saving memory and faster notification.
With --enable-packed, 33% memory savings could be had, or something
along that size. Notification of secondary servers happens in parallel,
and has faster timeouts. More sockets are used for zone transfers.
This speeds up communication with a larger set of servers.

What is the downside of this option? I assume there is one, because
otherwise this would not be a compile time option?

Packed structures are more difficult to access by the compiler. It is
likely that the compiler needs to generate more code to access members
in the data structure. The assumption that data is aligned in memory is
not there. The compiler will generate different code. Because it is
packed, it'll use less memory, but that code also has to be executed. I
don't know what the speed impact is, if any.

Okay, so that does not really help me to determine:

I'm trying to make the determination for RHEL/CentOS/Fedora on whether
I want this compile time option enabled or not.

which I guess is why this is a compile time option :slight_smile:

Paul

Hi Wouter,

Packed structures are more difficult to access by the compiler. It is
likely that the compiler needs to generate more code to access members
in the data structure. The assumption that data is aligned in memory is
not there. The compiler will generate different code. Because it is
packed, it'll use less memory, but that code also has to be executed. I
don't know what the speed impact is, if any.

Do you have a test server where you can compare the performance of NSD
with and without this option? Specifically, can you measure how the CPU
usage changes with and without this option, and also see how many
responses per second NSD can push out?

Regards,
Anand

If you do enable it, make sure you test on strict-alignment architectures
if your OS supports them.

Hi,

NSD 4.1.18rc2 pre release is available:
http://www.nlnetlabs.nl/downloads/nsd/nsd-4.1.18rc2.tar.gz
sha256 d024d9c4bf9dcad7376a206544329345154eba156d29d66e3e5977d0aec21a7b
pgp http://www.nlnetlabs.nl/downloads/nsd/nsd-4.1.18rc2.tar.gz.asc

This RC2 additionally fixes a just-fixed crash bug for dual-loaded
parent-and-child zone configured at the same time, when one of the zones
has not loaded properly.

Best regards, Wouter

Hi,

NSD 4.1.18 is available:
http://www.nlnetlabs.nl/downloads/nsd/nsd-4.1.18.tar.gz
sha256 8c1db23c5ad44c6410874161e78f785475d3f08ed0daae57fe56c44e33a89c0f
pgp http://www.nlnetlabs.nl/downloads/nsd/nsd-4.1.18.tar.gz.asc

This release has features for saving memory and faster notification.
With --enable-packed, 33% memory savings could be had, or something
along that size. Notification of secondary servers happens in parallel,
and has faster timeouts. More sockets are used for zone transfers.
This speeds up communication with a larger set of servers. Additionally
a bug is fixed for dual-loaded parent-and-child zone configured at the
same time, when one of the zones has not loaded properly.

4.1.18