The VolanoMark 10/100 loopback test was ran to determine if affinitizing the Volano server and client (and the Java processes created) to separate CPUs would improve throughput.
The 2.4.4 kernel was patched with a process affinity patch received from Nick Pollitt. The patch adds prctl support for affinitizing a process to a set of CPUs. This patch was modified to remove the changes to linux/sched.c. A user program prctlaff.c was written to use the prctl calls. The user program was run to set the affinity of the shell to a set of CPUs prior to starting the Volano server. The same was done for the Volano client.
8P system : the Volano server was affinitized to CPUs 0-3 and the
Volano client was affinitized to CPUs 4-7.
4P system : the Volano server was affinitized to CPUs 0-1 and the Volano client was affinitized to CPUs 2-3.
8P system : message throughput increased by 25 % from 18,678 msg/s
to 23,332 msg/s.
4P system : message throughput increased by 3 % from 22,331 msg/s to 22,984 msg/s.
The throughput from 4P to 8P no longer scales negatively (barely).