mirror of https://github.com/tLDP/LDP
261 lines
13 KiB
XML
261 lines
13 KiB
XML
<?xml version="1.0"?>
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://docbook.org/xml/4.2/docbookx.dtd"
|
|
>
|
|
<article id="spm">
|
|
<articleinfo><title>Complete System Performance Monitor HOWTO</title>
|
|
<abstract>
|
|
<para>This HOWTO provides an overview of the Complete System Performance Monitor, including a description of the product and installation and configuration information.</para>
|
|
</abstract>
|
|
<author>
|
|
<firstname>Chris</firstname>
|
|
<surname>Lorenz</surname>
|
|
<affiliation>
|
|
<address><email>lorenzc@us.ibm.com</email></address>
|
|
</affiliation>
|
|
</author>
|
|
<pubdate>2003-06-10</pubdate>
|
|
<revhistory>
|
|
<revision>
|
|
<revnumber>2.0</revnumber>
|
|
<date>2003-06-10</date>
|
|
<authorinitials>CL</authorinitials>
|
|
</revision>
|
|
</revhistory>
|
|
</articleinfo>
|
|
<sect1 id="copy"><title>Copyright and legal notice</title>
|
|
<para>Copyright © 2003 IBM Corporation. All
|
|
rights reserved.
|
|
</para>
|
|
<para>This document is provided "AS IS," with no
|
|
express or implied warranties. Use the information in
|
|
this document at your own risk.
|
|
</para>
|
|
<para>Linux is a registered trademark of Linus Torvalds. Other company, product, and service
|
|
names may be trademarks or service marks of others.
|
|
</para>
|
|
<para>Permission is granted to copy, distribute, and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover text, and no Back-Cover text. A copy of the license can be found at <ulink url="http://www.gnu.org/licenses/fdl.txt">http://www.gnu.org/licenses/fdl.txt</ulink>.</para>
|
|
</sect1>
|
|
<sect1><title>What Is the Complete System Performance Monitor?</title>
|
|
<para>The Complete System Performance Monitor (CSPM), written by Don Dupuis of Compaq Computer Corporation, is a graphical tool that monitors a Linux® system's CPU, memory, storage, network, and IRQ utilization. CSPM gathers all the data automatically and then generates histogram displays of system usage. </para></sect1>
|
|
|
|
<sect1><title>Requirements</title>
|
|
<para>CSPM V1.0 and later require the following:</para>
|
|
<itemizedlist><listitem><para>Red Hat Linux 7.2 or later, Mandrake 8.2 or later, or any Linux
|
|
kernel that has Stephen Tweedie's <command>sar</command> or <command>sysstat</command> patch applied (such as 2.4.20).</para></listitem>
|
|
<listitem><para>The Trolltech Qt 3.0 or later C++ application development environment, which is available for download from Trolltech for free.</para></listitem>
|
|
</itemizedlist>
|
|
</sect1>
|
|
|
|
<sect1><title>Installing CSPM and its requirements</title>
|
|
<para>This section describes how to acquire the Qt application development environment and install CSPM.</para>
|
|
<sect2><title>Installing Qt 3.0 or later</title>
|
|
|
|
<para>Qt 3.0 or later must be installed on the system before you install CSPM.
|
|
Follow these steps to acquire and configure Qt:
|
|
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>Download the Qt X/11 Free Edition from <ulink url="www.trolltech.com">http://www.trolltech.com</ulink> for the latest version of Qt. </para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Follow Trolltech's instructions for installing Qt. </para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Run .<command>/configure</command> with the <constant>-thread</constant> switch to the configure
|
|
program so that Qt is installed to run in multithreaded mode.</para>
|
|
<programlisting># ./configure -thread</programlisting>
|
|
</listitem>
|
|
<listitem><para>Be sure to export the variables QTDIR and LD_LIBRARY_PATH, as
|
|
described in the Qt installation instructions that are downloaded with the software.</para>
|
|
</listitem></orderedlist>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2><title>Installing CSPM</title>
|
|
<para>The following sections describe how to download and install CSPM.
|
|
These steps must be run by the root user.
|
|
The installation process creates a directory called <filename>spm</filename> and places all the files in that directory.
|
|
|
|
</para>
|
|
<sect3><title>Installing from rpm</title>
|
|
<para>Follow these steps to install CSPM from the rpm file:</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>Download the CSPM rpm file from SourceForge at <ulink url="http://sourceforge.net/projects.cspm">http://sourceforge.net/projects/cspm</ulink>. The program name
|
|
for CSPM is <filename>spm2</filename>. </para>
|
|
</listitem>
|
|
<listitem><para>Install the software:</para>
|
|
<programlisting># rpm -ihv --nodeps spm2-1.0-1.586.rpm</programlisting>
|
|
<para>The rpm creates the binary call <command>spm2</command> in the current directory.</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
</sect3>
|
|
<sect3><title>Installing from tar</title>
|
|
<para>Follow these steps to install CSPM from the tar file:</para>
|
|
<orderedlist>
|
|
<listitem><para>Download the CSPM tar file from SourceForge at <ulink url="http://sourceforge.net/projects.cspm">http://sourceforge.net/projects/cspm</ulink>. The program name
|
|
for CSPM is <filename>spm2</filename>. </para></listitem>
|
|
|
|
<listitem><para>Untar the <filename>spm2.tar.gz</filename> file:</para>
|
|
<programlisting># tar xvzf spm2.tar.gz</programlisting></listitem>
|
|
<listitem><para>Compile CSPM:</para>
|
|
<programlisting># make all</programlisting>
|
|
<para>The <command>make</command> command creates the binary call <command>spm2 </command>in the current directory.</para></listitem>
|
|
</orderedlist>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2><title>Starting the CSPM monitor</title>
|
|
<para>The <filename>spm2</filename> program should be run by a user other than root so that any changes to
|
|
the default preference settings can be changed.</para>
|
|
<para>Enter the following command from the directory where CSPM is installed:</para>
|
|
<para><programlisting># ./spm2</programlisting></para>
|
|
<para>If a segmentation fault occurs when <command>spm2</command> is starting up, make sure that you have set the QTDIR and LD_LIBRARY_PATH variables, as described in the Qt installation instructions that are downloaded with the software.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1><title>Modifying CSPM defaults</title>
|
|
<para>By default, the number of "range bars" along the y-coordinate of each histogram
|
|
is five. When there is no activity for a particular device, CSPM provides default values
|
|
of 0, 0.2, 0.4, 0.6, and 0.8. Once activity begins on the device, CSPM sets the
|
|
five values in equal increments from 0 to the peak data value collected in each
|
|
collection interval. Sometimes the grid lines fall directly on the range bar numbers,
|
|
making the numbers hard to read. You can either adjust the color of the grid lines,
|
|
adjust the collection interval, or try to ignore the grid lines.
|
|
</para>
|
|
|
|
<para>You can modify the default grid, sizing, and monitoring settings for each of the views from
|
|
the <menuchoice><guimenu>Preferences</guimenu></menuchoice> pulldown. From the
|
|
<menuchoice><guimenu>Preferences</guimenu></menuchoice> pulldown, you can select <guilabel>System</guilabel>,
|
|
<guilabel>Tests</guilabel>, <guilabel>CPU</guilabel>, <guilabel>Memory</guilabel>, <guilabel>Network</guilabel>,
|
|
<guilabel>Storage</guilabel> or <guilabel>IRQs</guilabel>. Once you select a particular item, you
|
|
can view the <guilabel>Grid</guilabel>, <guilabel>Monitoring</guilabel>, or <guilabel>Sizing</guilabel> tab
|
|
(if applicable) for that item.</para>
|
|
<para>From the <guilabel>Grid</guilabel> tab you can change such things as:</para>
|
|
|
|
<itemizedlist><listitem><para>the color of the grid lines</para></listitem>
|
|
<listitem><para>the distance (or time), in seconds, between intervals when data is collected (horizontal lines appear at each interval)</para></listitem>
|
|
<listitem><para>the color of the various data bars (such as read, write, user, nice, and "sys")</para></listitem>
|
|
<listitem><para>the number of horizontal range bars (default is 5)</para></listitem>
|
|
<listitem><para>the size of the histogram titles</para></listitem></itemizedlist>
|
|
|
|
<para>From the <guilabel>Monitor</guilabel> tab you can change things such as:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>the height and width of the display boxes (in pixels)</para></listitem>
|
|
<listitem><para>the colors of the display boxes</para></listitem>
|
|
<listitem><para>the type of data to be monitored (IOs, data, reads and writes, sectors and blocks)</para></listitem></itemizedlist>
|
|
|
|
<para>From the <guilabel>Sizing</guilabel> tab you can change the minimum height and width of the
|
|
display boxes (in pixels).</para>
|
|
</sect1>
|
|
<sect1><title>How CSPM displays data</title>
|
|
<para>CSPM displays histograms that provide information about system usage.
|
|
The program has 8 display tabs for the different types of system information CSPM
|
|
collects. These tabs are:</para>
|
|
<itemizedlist>
|
|
<listitem><para><guilabel>System Overview</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>IRQs</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>CPU Utilization</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>Memory</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>Network</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>Storage</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>Tests</guilabel></para>
|
|
</listitem>
|
|
<listitem><para><guilabel>Test Summary</guilabel></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>The key at the bottom of the histogram tables on each of the tabs tells how to interpret
|
|
the various colors representing data in the tables.</para>
|
|
<para>Use the horizontal and vertical scroll bars to view any histograms that do not
|
|
fit on the initial screen.</para>
|
|
|
|
<sect2><title><guilabel>System Overview</guilabel> tab</title>
|
|
<para>When CSPM starts up, the <guilabel>System Overview</guilabel> screen is displayed. The histograms
|
|
on the <guilabel>System Overview</guilabel> screen show data for the total system, including CPU, memory,
|
|
network, and storage usage. The following screenshot shows a sample view of a
|
|
System Overview screen. </para>
|
|
<para><graphic fileref="sysover.png"/></para>
|
|
<para>Below each histogram is a key that describes the data that is represented. For example, in the
|
|
CPU total histogram, the red line represents user CPU usage, the green line represents commands run with a modified scheduling priority (nice), and the blue line represents system CPU usage.</para>
|
|
</sect2>
|
|
|
|
<sect2><title><guilabel>IRQs</guilabel> tab</title>
|
|
|
|
<para>When you click the <guilabel>IRQs</guilabel> tab, a histogram opens for each IRQ line that
|
|
runs to an ISA slot
|
|
on the system. The following screenshot shows a sample view of the IRQs screen.</para>
|
|
<para><note><title>Note</title>
|
|
<para>With Qt 3.0, the horizontal scroll bars on the Irqs tab does not work properly. This
|
|
problem does not occur with Qt 3.1.</para></note></para>
|
|
<para><graphic fileref="irqs.png"/></para>
|
|
<para>The large blue number to the left of the histogram is the number of the IRQ.
|
|
The
|
|
red line on each histogram represents the number of IRQs per second utilitized by the device
|
|
connected to the IRQ's ISA slot.</para>
|
|
</sect2>
|
|
|
|
|
|
<sect2><title><guilabel>CPU Utilization</guilabel> tab</title>
|
|
<para>When you click the <guilabel>CPU Utilization</guilabel> tab, histograms open for each CPU
|
|
on the system, as
|
|
shown in the following screenshot:
|
|
</para>
|
|
<para><graphic fileref="cpu.png"/></para>
|
|
<para>The histograms show information about user (red), system (blue), and nice priority (green) command utilization.</para>
|
|
</sect2>
|
|
|
|
<sect2><title><guilabel>Memory</guilabel> tab</title>
|
|
<para>The <guilabel>Memory</guilabel> tab is still under development. In a future release of CSPM,
|
|
the <guilabel>Memory</guilabel> tab will graphically show how much memory processes use, from most to least. </para>
|
|
</sect2>
|
|
|
|
<sect2><title><guilabel>Network</guilabel> tab</title>
|
|
<para>When you click the <guilabel>Network</guilabel> tab, histograms that show the amount of traffic on the system's loopback device and each network device are displayed, as shown in the following screenshot.
|
|
</para>
|
|
<para><graphic fileref="network.png"/></para>
|
|
<para>Sends are shown in red and receives are shown in blue.</para>
|
|
</sect2>
|
|
|
|
<sect2><title><guilabel>Storage</guilabel> tab</title>
|
|
<para>When you click the <guilabel>Storage</guilabel> tab, a collection of histograms opens that
|
|
show data
|
|
for controllers, disks, and partitions.
|
|
The key at the bottom of the histograms tells which
|
|
color of histogram box corresponds to which type of device.
|
|
</para>
|
|
<para><graphic fileref="storage.png"/></para>
|
|
<para>The screenshot
|
|
displays purple for controllers, green for disks, and orange for partitions.
|
|
The red lines represent
|
|
reads from the devices and the blue lines represent writes to the devices.</para>
|
|
<para>To see information about a partition (such as file system name, space used, and
|
|
space available), right-click the partition's histogram and then left-click <guimenuitem>Properties</guimenuitem>. A
|
|
Partition Status window opens that displays information about the selected partition.</para>
|
|
<para><graphic fileref="snapshot9.png"/></para>
|
|
</sect2>
|
|
|
|
<sect2><title><guilabel>Tests</guilabel> tab</title>
|
|
<para>The <guilabel>Tests</guilabel> tab opens a list of tests that can be run on the system
|
|
and is useful, for example, for quality assurance personnel who need to load test systems when testing hardware or software.</para>
|
|
</sect2>
|
|
|
|
<sect2><title><guilabel>Test Summary</guilabel> tab</title>
|
|
<para>The <guilabel>Test Summary</guilabel> tab contains test output and utilization numbers for test runs.
|
|
You can print these test results and keep them for your records.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
|
|
</article>
|
|
|