Complete System Performance Monitor HOWTO This HOWTO provides an overview of the Complete System Performance Monitor, including a description of the product and installation and configuration information. Chris Lorenz
lorenzc@us.ibm.com
2003-06-10 2.0 2003-06-10 CL
Copyright and legal notice Copyright © 2003 IBM Corporation. All rights reserved. This document is provided "AS IS," with no express or implied warranties. Use the information in this document at your own risk. Linux is a registered trademark of Linus Torvalds. Other company, product, and service names may be trademarks or service marks of others. 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 http://www.gnu.org/licenses/fdl.txt. What Is the Complete System Performance Monitor? 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. Requirements CSPM V1.0 and later require the following: Red Hat Linux 7.2 or later, Mandrake 8.2 or later, or any Linux kernel that has Stephen Tweedie's sar or sysstat patch applied (such as 2.4.20). The Trolltech Qt 3.0 or later C++ application development environment, which is available for download from Trolltech for free. Installing CSPM and its requirements This section describes how to acquire the Qt application development environment and install CSPM. Installing Qt 3.0 or later Qt 3.0 or later must be installed on the system before you install CSPM. Follow these steps to acquire and configure Qt: Download the Qt X/11 Free Edition from http://www.trolltech.com for the latest version of Qt. Follow Trolltech's instructions for installing Qt. Run ./configure with the -thread switch to the configure program so that Qt is installed to run in multithreaded mode. # ./configure -thread Be sure to export the variables QTDIR and LD_LIBRARY_PATH, as described in the Qt installation instructions that are downloaded with the software. Installing CSPM 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 spm and places all the files in that directory. Installing from rpm Follow these steps to install CSPM from the rpm file: Download the CSPM rpm file from SourceForge at http://sourceforge.net/projects/cspm. The program name for CSPM is spm2. Install the software: # rpm -ihv --nodeps spm2-1.0-1.586.rpm The rpm creates the binary call spm2 in the current directory. Installing from tar Follow these steps to install CSPM from the tar file: Download the CSPM tar file from SourceForge at http://sourceforge.net/projects/cspm. The program name for CSPM is spm2. Untar the spm2.tar.gz file: # tar xvzf spm2.tar.gz Compile CSPM: # make all The make command creates the binary call spm2 in the current directory. Starting the CSPM monitor The spm2 program should be run by a user other than root so that any changes to the default preference settings can be changed. Enter the following command from the directory where CSPM is installed: # ./spm2 If a segmentation fault occurs when spm2 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. Modifying CSPM defaults 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. You can modify the default grid, sizing, and monitoring settings for each of the views from the Preferences pulldown. From the Preferences pulldown, you can select System, Tests, CPU, Memory, Network, Storage or IRQs. Once you select a particular item, you can view the Grid, Monitoring, or Sizing tab (if applicable) for that item. From the Grid tab you can change such things as: the color of the grid lines the distance (or time), in seconds, between intervals when data is collected (horizontal lines appear at each interval) the color of the various data bars (such as read, write, user, nice, and "sys") the number of horizontal range bars (default is 5) the size of the histogram titles From the Monitor tab you can change things such as: the height and width of the display boxes (in pixels) the colors of the display boxes the type of data to be monitored (IOs, data, reads and writes, sectors and blocks) From the Sizing tab you can change the minimum height and width of the display boxes (in pixels). How CSPM displays data 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: System Overview IRQs CPU Utilization Memory Network Storage Tests Test Summary 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. Use the horizontal and vertical scroll bars to view any histograms that do not fit on the initial screen. <guilabel>System Overview</guilabel> tab When CSPM starts up, the System Overview screen is displayed. The histograms on the System Overview 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. 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. <guilabel>IRQs</guilabel> tab When you click the IRQs 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. Note 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. 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. <guilabel>CPU Utilization</guilabel> tab When you click the CPU Utilization tab, histograms open for each CPU on the system, as shown in the following screenshot: The histograms show information about user (red), system (blue), and nice priority (green) command utilization. <guilabel>Memory</guilabel> tab The Memory tab is still under development. In a future release of CSPM, the Memory tab will graphically show how much memory processes use, from most to least. <guilabel>Network</guilabel> tab When you click the Network 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. Sends are shown in red and receives are shown in blue. <guilabel>Storage</guilabel> tab When you click the Storage 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. 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. 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 Properties. A Partition Status window opens that displays information about the selected partition. <guilabel>Tests</guilabel> tab The Tests 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. <guilabel>Test Summary</guilabel> tab The Test Summary tab contains test output and utilization numbers for test runs. You can print these test results and keep them for your records.