IBM REDP-4285-00 User Manual

Page of 170
Chapter 2. Monitoring and benchmark tools 
71
Draft Document for Review May 4, 2007 11:35 am
4285ch02.fm
platform shares many of the technologies available for desktop computers. Server 
benchmarks spawn multiple threads in order to utilize the SMP capabilities of the system 
and in order to simulate a true multi user environment. While a PC might start one web 
browser faster than a high-end server, the server will start a thousand web browsers faster 
than a PC.
򐂰
Simulate the expected workload: All benchmarks have different configuration options that 
should be used to tailor the benchmark towards the workload that the system should be 
running in the future. Great CPU performance will be of little use if the application in the 
end has to rely on low disk latency.
򐂰
Isolate benchmark systems: If a system is to be tested with a benchmark it is paramount 
to isolate it from any other load as good as possible. Already an open session running the 
top
 command can greatly impact the results of the benchmark.
򐂰
Average results: Even if you try to isolate the benchmark system as good as possible there 
might always be unknown factors that might impact systems performance just at the time 
of your benchmark. It is a good practice to run any benchmark for at least three times and 
average the results in order to make sure that a one time event does not impact your entire 
analysis.
In the following sections, we’ve selected some tools based on these criteria:
򐂰
Works on Linux: Linux is the target of the benchmark
򐂰
Works on all hardware platforms: Since IBM offers three distinct hardware platforms 
(assuming that the hardware technology of IBM System p and IBM System i™ are both 
based on the IBM POWER™ architecture) it is important to select a benchmark that may 
be used without big porting efforts on all architectures.
򐂰
Open source: Linux runs on several platform then the binary file may not be available if the 
source code is not available.
򐂰
Well-documented: You have to know well about the tool when you perform benchmarking. 
The documentation will help you to be familiar with the tools. It also helps to evaluate 
whether the tool is suit for your needs by taking a look at the concept and design and 
details before you decide to use certain tool.
򐂰
Actively-maintained: The old abandoned tool may not follow the recent specification and 
technology. It may produce a wrong result and lead misunderstanding.
򐂰
Widely used: You can find a lot of information about widely-used tools more easily.
򐂰
Easy to use: It’s always good thing.
򐂰
Reporting capability: Having reporting capability will greatly reduce the performance 
analysis work.
2.4.1  LMbench
LMbench is a suite of microbenchmarks that can be used to analyze different operating 
system settings such as an SELinux enabled system versus a non SELinux system. The 
benchmarks included in LMbench measure various operating system routines such as 
context switching, local communications, memory bandwidth and file operations. Using 
LMbench is pretty straight forward as there are only three important commands to know;
򐂰
make results
: The first time LMbench is run it will prompt for some details of the system 
configuration and what tests it should perform.
򐂰
make rerun
: After the initial configuration and a first benchmark run, using the make rerun 
command simply repeats the benchmark using the configuration supplied during the make 
results
 run.