Platform SDK: Exchange Server

Using the Performance Monitor

The Windows NT Performance Monitor can help you isolate performance bottlenecks. Many Microsoft Exchange Server components create their own performance counters that provide more detailed information about performance bottlenecks. Using the Performance Monitor and the logging facility will help you identify problem areas. The main areas to consider when searching for bottlenecks are memory accesses, CPU usage, disk I/O, and network I/O.

Using the Disk Performance Monitor

The Performance Monitor counters for disk monitoring are turned off by default because they erode Windows NT Server performance by 1 to 2 percent. The Performance Monitor should be turned off when you are not specifically monitoring disk performance.

The Performance Monitor counters indicate the number and size of reads and writes that are being generated for a particular disk. They also show the percentage of time your application spends accessing a particular disk or disk strip set, as well as other information.

To turn on disk performance monitoring for a Windows NT Server computer, type diskperf -y at a command prompt and restart the computer. You may want to start the disk performance monitor on all your development servers before you begin testing your application.

To prepare for performance monitoring

  1. Start the Windows NT Performance Monitor.
  2. From the View menu, choose Log.
  3. From the Edit menu, choose Add to Log. Add counters for the following:
    Logical Disk
    Memory
    Processor
    Redirector
    Server
     
  4. Choose Done.
  5. From the Options menu, choose Log. Enter a file name on a separate drive to isolate logging I/O. For example, if Microsoft Exchange Server resides on the C drive, enter logs on the D drive.
  6. Optional: Adjust the periodic update to be 1/100 of your time. For example, if your test requires 300 seconds, set the periodic update to three seconds. This makes it easier to view the data in one screen.
  7. Click OK.

To start performance monitoring and collect data

  1. Choose Log from the Options menu in the Windows NT Performance Monitor window.
  2. Click Start Log.
  3. Start your application.

Note  Before running a test, choose Chart from the View menu. Add basic counters such as:

Processor:%Processor Time
Logical Disk:C,D
 

This allows you to monitor the test until it is completed and the counters return to idle levels. Also, when you get all the settings, save your layout by choosing Save Workspace from the File menu. This will allow you to restore the settings at a later date.

To monitor the test

To monitor a test in session, choose Chart from the View menu.

To stop test logging

  1. From the Log menu, choose View when the test is finished.
  2. From the Options menu, choose Log.
  3. Click Stop Log.

To produce a view that gives you basic patterns

  1. From the Options menu, choose Data From and enter the log file name.
  2. From the View menu, choose Chart.
  3. From the Edit menu, choose Add to Chart. Enter the following:
    Processor:% Processor Time
    Logical Disk:% Disk Time
    Redirector:Bytes Total/sec
    Memory:Pages/sec
     

To analyze the data

You can draw your first conclusions from the data results. For example, if the Percent Processor Time is listed at 100 percent during most of the test, your application is CPU-bound.

To produce a view that allows you to look at all recorded data

  1. From the Report menu, choose View.
  2. From the Add to Report menu, choose Edit.
  3. For each object, add all counters for all instances.

For example, your test may have sent 100 messages. Multiply the Disk Bytes per second by the time interval as shown in Graph Time in the Chart View. Divide by 100 messages to determine the Disk I/O required per message.

Isolating Problems

Analyze the data obtained for each component to identify the direct source of any problems. Recommendations for isolating problems include the following:

For more detailed information about the Performance Monitor, see Optimizing Windows NT in the Windows NT Server Resource Kit.