Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

Volume Shadowing for OpenVMS


Previous Contents Index


Chapter 8
Performance Information for Volume Shadowing

Volume Shadowing for OpenVMS is designed primarily to be a data availability product and not a performance product. Recognizing that the topics of performance and data availability cannot be completely separated from each other, this chapter discusses the performance effects that can result on systems using Volume Shadowing for OpenVMS. Several factors affect the performance of a shadow set, including the following:

The following sections examine how the state of a shadow set and its configuration can affect resource utilization and performance. Some guidelines for controlling the use of system resources are also provided in Section 8.3. Because there is no significant difference in the performance of a nonshadowed disk and a one-member shadow set, all discussions that follow apply to multiple-member shadow sets.

8.1 Performance During Steady State

A shadow set is in a steady state when all of its members are consistent and no copy operation or merge operation is in progress. Overall, the performance of a shadow set in a steady state compares favorably with that of a nonshadowed disk. Read and write I/O requests processed by a shadow set utilize a very small amount of extra CPU processing time as compared with a nonshadowed disk. A shadow set often can process read requests more efficiently than can a nonshadowed disk because it can use the additional heads to respond to multiple read requests simultaneously.

For a shadow set in a steady state, the shadowing software handles read and write operations in the following manner:

Even though the read performance of a shadow set in steady-state has the potential for better performance, the primary purpose of volume shadowing is to provide data availability. It is not appropriate to use volume shadowing as a means to increase the read I/O throughput of your applications (by explicitly increasing the I/O work load). This is because the same level of performance cannot be expected during situations when copy or merge operations must take place to add new members or preserve data consistency, or when members are removed from the shadow set. Section 8.2 discusses performance considerations when the shadow set is in a transient state.

8.2 Performance During Copy and Merge Operations

A shadow set is in a transient state when some or all of its members are undergoing a copy or merge operation. During merge operations, Volume Shadowing for OpenVMS ensures consistency by reading the data from one member and making sure it is the same as the data contained in the same LBNs on the other members of the shadow set. If the data is different, the shadowing software updates the LBN on all members. For copy operations, the shadowing software reads data from a source member and writes the data to the same LBN on target members.

At the same time it performs a merge or copy operation, the shadowing software continues to process application and user I/O requests. The I/O processing necessitated by a copy operation can result in decreased performance as compared with the possible performance of the same shadow set under steady-state conditions. However, if your shadow set members are configured on controllers that support the shadowing assisted copy and assisted merge operations, you can significantly improve the speed with which a shadow set performs a copy or merge operation. Volume Shadowing for OpenVMS supports both assisted and unassisted merge and copy operations.

The following list describes how the performance of a shadow set might be affected while an unassisted merge or copy operation is in progress. See Chapter 6 for a description of assisted copy and merge operations.

8.2.1 Improving Performance for Unassisted Merge Operations

Because read performance during a shadow set unassisted merge operation is reduced, a mechanism has been provided to control the throttle on the merge I/O rate. Two new logical names are available to vary the unassisted merge multiplication factor used for a virtual unit on a per-node and per-virtual unit basis.

These logicals must be defined in the system table and should be defined on each node in the cluster. The valid range for the multiplication factor is 100 to 1000. Any value outside of this range causes the factor to default to 200. This value of 200 is displayed at the start of a shadow set merge, in the %SHADOW_SERVER-I-SSRVINIMRG message, following the word Factor.

The two new logicals are:

Note

Increasing the values excessively may cause application performance problems when merges are occurring. When setting values, system managers must balance the site specific application needs with their merge requirements.

These two logical names are evaluated again after 1,000 merge I/Os have completed. Therefore, the factor can be adjusted while a merge is in progress.

8.2.2 Improving Performance for Merge and Copy Operations

There are two types of performance assists: the merge assist and the copy assist. The merge assist improves performance by using information that is maintained in controller-based write logs to merge only the data that is inconsistent across a shadow set. When a merge operation is assisted by the write logs, it is referred to as a minimerge. The copy assist reduces system resource usage and copy times by enabling a direct disk-to-disk transfer of data without going through host node memory.

Assisted merge operations are usually too short to be noticeable. Improved performance is also possible during the assisted copy operation because it consumes less CPU and interconnect resources. Although the primary purpose of the performance assists is to reduce the system resources required to perform a copy or merge operation, in some circumstances you may also observe improved read and write I/O performance.

Volume Shadowing for OpenVMS supports both assisted and unassisted shadow sets in the same OpenVMS Cluster configuration. Whenever you create a shadow set, add members to an existing shadow set, or boot a system, the shadowing software reevaluates each device in the changed configuration to determine whether it is capable of supporting either the copy assist or the minimerge. Enhanced performance is possible only as long as all shadow set members are configured on controllers that support performance assist capabilities. If any shadow set member is connected to a controller without these capabilities, the shadowing software disables the performance assist for the shadow set.

When the correct revision levels of software are installed, the copy assist and minimerge are enabled by default, and are fully managed by the shadowing software.

8.2.3 Effects on Performance

The copy assist and minimerge are designed to reduce the time needed to do copy and merge operations. In fact, you may notice significant time reductions on systems that have little or no user I/O occurring during the assisted copy or merge operation. Data availability is also improved because copy operations quickly make data consistent across the shadow set.

Minimerge Performance Improvements

The minimerge feature provides a significant reduction in the time needed to perform merge operations. By using controller-based write logs, it is possible to avoid the total volume scan required by earlier merge algorithms and to merge only those areas of the shadow set where write activity is known to be in progress.

Unassisted merge operations often take several hours, depending on user I/O rates. Minimerge operations typically complete in a few seconds and are usually undetectable by users.

The exact time taken to complete a minimerge depends on the amount of outstanding write activity to the shadow set when the merge process is initiated, and on the number of shadow set members undergoing a minimerge simultaneously. Even under the heaviest write activity, a minimerge will complete within several minutes. Additionally, minimerge operations consume minimal compute and I/O bandwidth.

Copy Assist Performance Improvements

Table 8-1 shows the approximate time required to perform copy operations on shadow sets that consist of two RA82 disks connected to an HSC70 controller on a VAX 8700 computer. The table shows assisted and unassisted copy times measured for one, two, three, and four concurrent copy operations, where all source and target disks are on separate HSC requesters.

Note that the copy times in Table 8-1 reflect the best possible performance measurements taken on a controlled test system with no user I/O load. Copy times vary according to each configuration and generally take longer on systems supporting user I/O. Performance benefits are also enhanced by having the source and target disks on different HSC requesters.

Table 8-1 Copy Times (In Minutes) for Two-Member RA82 Shadow Sets
Type of Shadowing 1 Set 2 Sets 3 Sets 4 Sets
Assisted copy 9 17 25 34
Unassisted copy
with identical data
24 28 34 41
Unassisted Copy
with different data
91 120 157 200


1Phase I copy times are included for reference purposes. Also, phase I is no longer available as of OpenVMS Version 6.2.

Table 8-1 shows that, for a single copy operation, an assisted copy is significantly faster than any other. Note that, as the number of simultaneous copies grows, the timing proportions change. This is caused by differing levels of parallelism in the various copying algorithms. Also, the overall copy times and their proportions differ with the disk type because each disk varies in total blocks and data transfer speed.

Additionally, Table 8-1 shows that unassisted copies vary significantly in time, based on the similarity of data on the source and target disks. To make blocks with different data consistent, extra I/O operations are required. Thus, unassisted copy operations take significantly longer to make a shadow set consistent when the disk members contain different data. The assisted copy operation does not depend on the similarity of data on the disks.

In addition, the following subsection describes how you can control the number of assisted copies an HSC controller can perform.

8.3 Guidelines for Managing Shadow Sets in a System

Sections 8.1 and 8.2 describe the performance impacts on a shadow set in steady state and while a copy or merge operation is in progress. In general, performance during steady state compares with that of a nonshadowed disk. Performance is affected when a copy or a merge operation is in progress to a shadow set. In the case of copy operations, you control when the operations are performed.

However, merge operations are not started because of user or program actions. They are started automatically when a CPU fails. In this case, the shadowing software reduces the utilization of system resources and the effects on user activity by throttling itself dynamically. Minimerge operations consume few resources and complete rapidly with little or no effect on user activity.

The actual resources that are utilized during a copy or merge operation depend on the access path to the member units of a shadow set, which in turn depends on the way the shadow set is configured. By far, the resources that are consumed most during both operations are the adapter and interconnect I/O bandwidths.

You can control resource utilization by setting the SHADOW_MAX_COPY system parameter to an appropriate value on a CPU based on the type of CPU and the adapters on the machine. SHADOW_MAX_COPY is a dynamic system parameter that controls the number of concurrent copy or merge threads that can be active on a single CPU. If the number of copy threads that start up on a particular CPU is more than the value of the SHADOW_MAX_COPY parameter on that CPU, only the number of threads specified by SHADOW_MAX_COPY will be allowed to proceed. The other copy threads are stalled until one of the active copy threads completes.

For example, assume that the SHADOW_MAX_COPY parameter is set to 3. If you mount four shadow sets that all need a copy operation, only three of the copy operations can proceed; the fourth copy operation must wait until one of the first three operations completes. Because copy operations use I/O bandwidth, this parameter provides a way to limit the number of concurrent copy operations and avoid saturating interconnects or adapters in the system. The value of SHADOW_MAX_COPY can range from 0 to 200. The default value is OpenVMS version specific.

Chapter 3 explains how to set the SHADOW_MAX_COPY parameter. Keep in mind that, once you arrive at a good value for the parameter on a node, you should also reflect this change by editing the MODPARAMS.DAT file so that when invoking AUTOGEN, the changed value takes effect.

In addition to setting the SHADOW_MAX_COPY parameter, the following list provides some general guidelines to control resource utilization and the effects on system performance when shadow sets are in transient states.


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
5423PRO_009.HTML