Symantec logo

Using performance data

When you have gathered performance data, you can use it to determine how to configure your system to use resources most effectively. The following sections provide an overview of how you can use this data.

Using I/O statistics

Examination of the I/O statistics can suggest how to reconfigure your system. You should examine two primary statistics: volume I/O activity and disk I/O activity.

Before obtaining statistics, reset the counters for all existing statistics using the vxstat -r command. This eliminates any differences between volumes or disks due to volumes being created, and also removes statistics from boot time (which are not usually of interest).

After resetting the counters, allow the system to run during typical system activity. Run the application or workload of interest on the system to measure its effect. When monitoring a system that is used for multiple purposes, try not to exercise any one application more than usual. When monitoring a time-sharing system with many users, let statistics accumulate for several hours during the normal working day.

To display volume statistics, enter the vxstat command with no arguments. The following is a typical display of volume statistics:

                OPERATIONS          BLOCKS         AVG TIME(ms)

TYP  NAME      READ   WRITE      READ    WRITE     READ   WRITE

vol  archive    865     807      5722     3809     32.5    24.0

vol  home      2980    5287      6504    10550     37.7   221.1

vol  local    49477   49230    507892   204975     28.5    33.5

vol  rootvol 102906  342664   1085520  1962946     28.1    25.6

vol  src      79174   23603    425472   139302     22.4    30.9

vol  swapvol  22751   32364    182001   258905     25.3   323.2

Such output helps to identify volumes with an unusually large number of operations or excessive read or write times.

To display disk statistics, use the vxstat -d command. The following is a typical display of disk statistics:

               OPERATIONS          BLOCKS         AVG TIME(ms)

TYP  NAME      READ   WRITE     READ    WRITE     READ   WRITE

dm   mydg01   40473  174045   455898    951379    29.5    35.4

dm   mydg02   32668   16873   470337    351351    35.2   102.9

dm   mydg03   55249   60043   780779    731979    35.3    61.2

dm   mydg04   11909   13745   114508    128605    25.0    30.7

If you need to move the volume named archive onto another disk, use the following command to identify on which disks it lies:

# vxprint -g mydg -tvh archive

The following is an extract from typical output:

V NAME RVG/VSET/CO KSTATE STATE LENGTH READPOL REFPLEX UTYPE

PL NAME VOLUME KSTATE STATE LENGTH LAYOUT NCOL/WDTH MODE

SD NAME PLEX DISK DISKOFFS LENGTH [COL/]OFF DEVICE MODE

v archive - ENABLED ACTIVE 20480 SELECT - fsgen

pl archive-01 archive ENABLED ACTIVE 20480 CONCAT - RW

sd mydg03-03 archive-01 mydg03 0 40960 0 c1t2d0 ENA

The subdisks line (beginning sd) indicates that the volume archive is on disk mydg03. To move the volume off mydg03, use the following command:

# vxassist -g mydg move archive !mydg03 dest_disk

Here dest_disk is the destination disk to which you want to move the volume. It is not necessary to specify a destination disk. If you do not specify a destination disk, the volume is moved to an available disk with enough space to contain the volume.

For example, to move a volume from disk mydg03 to disk mydg04, in the disk group, mydg, use the following command:

# vxassist -g mydg move archive !mydg03 mydg04

This command indicates that the volume is to be reorganized so that no part of it remains on mydg03.

The Veritas Enterprise Administrator (VEA) has a graphical user interface (GUI), which provides an easier way to move pieces of volumes between disks. You may find that approach preferable to using the command line.

If two volumes (other than the root volume) on the same disk are busy, move them so that each is on a different disk.

If one volume is particularly busy (especially if it has unusually large average read or write times), stripe the volume (or split the volume into multiple pieces, with each piece on a different disk). If done online, converting a volume to use striping requires sufficient free space to store an extra copy of the volume. If sufficient free space is not available, a backup copy can be made instead. To convert a volume, create a striped plex as a mirror of the volume and then remove the old plex. For example, the following commands stripe the volume archive across disks mydg02, mydg03, and mydg04 in the disk group, mydg, and then remove the original plex archive-01:

# vxassist -g mydg mirror archive layout=stripe mydg02 mydg03 \

  mydg04

# vxplex -g mydg -o rm dis archive-01

After reorganizing any particularly busy volumes, check the disk statistics. If some volumes have been reorganized, clear statistics first and then accumulate statistics for a reasonable period of time.

If some disks appear to be excessively busy (or have particularly long read or write times), you may want to reconfigure some volumes. If there are two relatively busy volumes on a disk, move them closer together to reduce seek times on the disk. If there are too many relatively busy volumes on one disk, move them to a disk that is less busy.

Use I/O tracing (or subdisk statistics) to determine whether volumes have excessive activity in particular regions of the volume. If the active regions can be identified, split the subdisks in the volume and move those regions to a less busy disk.

Warning: Striping a volume, or splitting a volume across multiple disks, increases the chance that a disk failure results in failure of that volume. For example, if five volumes are striped across the same five disks, then failure of any one of the five disks requires that all five volumes be restored from a backup. If each volume were on a separate disk, only one volume would need to be restored. Use mirroring or RAID-5 to reduce the chance that a single disk failure results in failure of a large number of volumes.

Note that file systems and databases typically shift their use of allocated space over time, so this position-specific information on a volume is often not useful. Databases are reasonable candidates for moving to non-busy disks if the space used by a particularly busy index or table can be identified.

Examining the ratio of reads to writes helps to identify volumes that can be mirrored to improve their performance. If the read-to-write ratio is high, mirroring can increase performance as well as reliability. The ratio of reads to writes where mirroring can improve performance depends greatly on the disks, the disk controller, whether multiple controllers can be used, and the speed of the system bus. If a particularly busy volume has a high ratio of reads to writes, it is likely that mirroring can significantly improve performance of that volume.

Using I/O tracing

I/O statistics provide the data for basic performance analysis; I/O traces serve for more detailed analysis. With an I/O trace, focus is narrowed to obtain an event trace for a specific workload. This helps to explicitly identify the location and size of a hot spot, as well as which application is causing it.

Using data from I/O traces, real work loads on disks can be simulated and the results traced. By using these statistics, you can anticipate system limitations and plan for additional resources.

See "Gathering and displaying I/O statistics" on page 140.

See "Specifying the I/O policy" on page 144.