Linux Kernel Performance
 LTC Home | IBM Linux Scalability Effort | LinuxKernelPerformance Project | Performance Tools | Disk I/OIOZONE | LMBench | Netbench | Netperf  | SPEC SDET | SPECWeb99 | tiobench | VolanoMark


NetBench Performance Evaluation for Linux


Run Rules


The purpose of this study is to evaluate and improve the performance andscalability of Linux, using NetBench as a workload.  The effort describedhere is currently maintained by AndrewTheurer .  This is an open project, and I encourage others to joinmy efforts.  The tests conducted for this evaluation currently takeplace at IBM's LinuxTechnology Center.  Check our status page for latest news.

Project Process

The general idea of this project is to cycle through a process of measurement, analysis, and improvement of performance.
In this stage we run the benchmark as specified by run rules and verify the results.  We also measure systemstatistics like CPU utilization, memory usage, interrupt usage, and networkI/O.  Currently we use 'sar' to gather all system information.

In this stage we use get a closer look at what's going on during thebenchmark run.  We do this by using tools such as SGI's kernprof and lockmeter . If youhave suggestions for other tools, please email lse-tech.This is also where performance problems should be identified.

Improvement can take on many forms, from server and client tuning,testing existing performance patches, and new code optimizations. The idea here is to improve both absolute performance and relative scalability.

This process should be repeated until we reach a target level ofperformance and scalability.   To find out what we're workingon now, check out the project status.

Note: Performance is measured by throughput, in megabits per second, as reported by NetBench.   Scalability is measured as a ratioof SMP performance (2P, 4P, 8P, ... ) divided by uniprocessor performance.

Test Environment

NetBench requires an SMB capable server, Microsoft Windows based clients, and a network to connect all of the systems.  For our tests, we  use the following hardware and software configuration:
Server Hardware
8 x 700 MHz PIII Xeon, 1MB L2, Intel Profusion chipset
4 GB memory, 4 Intel Gbps ethernet adapters

Server Software
Linux 2.4
Samba 2.2
Sysstat 4.0

Client Hardware
866 MHz PIII, 256MB memory
100 Mbps ethernet

Client Software
Microsoft Windows 2000 Professional
NetBench 7.0.1

Network Hardware
2 Foundry Networks Fast Iron workgroup switches