Win32_PerfFormattedData_PerfDisk_PhysicalDisk class

The Win32_PerfFormattedData_PerfDisk_PhysicalDisk formatted data class provides pre-calculated data from performance counters that monitor hard or fixed disk drives on a computer. Disks store file, program, or paging data and are read to retrieve these items, and written to record changes to them. The values of physical disk counters are sums of the values of the logical disks, also known as partitions, into which they are divided.

This class represents the Physical Disk object in System Monitor and returns the same data you see in System Monitor. This class derives its raw data from the corresponding raw class Win32_PerfRawData_PerfDisk_PhysicalDisk. The original data source is the PerfDisk performance library. Data is dynamically provided for this class from the performance library object by the WmiPerfInst provider.

Windows Server 2003 and Windows XP: WMI data for this class is supplied by the Formatted Performance Data Provider.

The following syntax is simplified from MOF code and shows all of the inherited properties, including the Frequency and Timestamp properties required for class display in System Monitor. For more information about required property qualifiers, see Property Qualifiers for Performance Counter Classes. For more information about CounterType values, see WMI Performance Counter Types.

Syntax

class Win32_PerfFormattedData_PerfDisk_PhysicalDisk : Win32_PerfFormattedData
{
  uint64 AvgDiskBytesPerRead;
  uint64 AvgDiskBytesPerTransfer;
  uint64 AvgDiskBytesPerWrite;
  uint64 AvgDiskQueueLength;
  uint64 AvgDiskReadQueueLength;
  uint32 AvgDiskSecPerRead;
  uint32 AvgDiskSecPerTransfer;
  uint32 AvgDiskSecPerWrite;
  uint64 AvgDiskWriteQueueLength;
  string Caption;
  uint32 CurrentDiskQueueLength;
  string Description;
  uint64 DiskBytesPerSec;
  uint64 DiskReadBytesPerSec;
  uint32 DiskReadsPerSec;
  uint32 DiskTransfersPerSec;
  uint64 DiskWriteBytesPerSec;
  uint32 DiskWritesPerSec;
  uint64 Frequency_Object;
  uint64 Frequency_PerfTime;
  uint64 Frequency_Sys100NS;
  string Name;
  uint64 PercentDiskReadTime;
  uint64 PercentDiskTime;
  uint64 PercentDiskWriteTime;
  uint64 PercentIdleTime;
  uint32 SplitIOPerSec;
  uint64 Timestamp_Object;
  uint64 Timestamp_PerfTime;
  uint64 Timestamp_Sys100NS;
};

Members

The Win32_PerfFormattedData_PerfDisk_PhysicalDisk class has these types of members:

  • Properties

Properties

The Win32_PerfFormattedData_PerfDisk_PhysicalDisk class has these properties.

AvgDiskBytesPerRead

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_AVERAGE_BULK") , Counter ("AvgDiskBytesPerRead") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime") , Base ("AvgDiskBytesPerRead_Base")

Average number of bytes transferred from the disk during read operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

AvgDiskBytesPerTransfer

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_AVERAGE_BULK") , Counter ("AvgDiskBytesPerTransfer") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime") , Base ("AvgDiskBytesPerTransfer_Base")

Average number of bytes transferred to or from the disk during write or read operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

AvgDiskBytesPerWrite

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_AVERAGE_BULK") , Counter ("AvgDiskBytesPerWrite") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime") , Base ("AvgDiskBytesPerWrite_Base")

Average number of bytes transferred to the disk during write operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

AvgDiskQueueLength

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_100NS_QUEUELEN_TYPE") , Counter ("AvgDiskQueueLength") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS")

Average number of both read and write requests that were queued for the selected disk during the sample interval.

For more information about using uint64 values in scripts, see Scripting in WMI.

AvgDiskReadQueueLength

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_100NS_QUEUELEN_TYPE") , Counter ("AvgDiskReadQueueLength") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS")

Average number of read requests that were queued for the selected disk during the sample interval.

For more information about using uint64 values in scripts, see Scripting in WMI.

AvgDiskSecPerRead

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_AVERAGE_TIMER") , Counter ("AvgDiskSecPerRead") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime") , Base ("AvgDiskSecPerRead_Base")

Average time, in seconds, of a read of data from the disk.

AvgDiskSecPerTransfer

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_AVERAGE_TIMER") , Counter ("AvgDiskSecPerTransfer") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime") , Base ("AvgDiskSecPerTransfer_Base")

Time, in seconds, of the average disk transfer.

AvgDiskSecPerWrite

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_AVERAGE_TIMER") , Counter ("AvgDiskSecPerWrite") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime") , Base ("AvgDiskSecPerWrite_Base")

Average time, in seconds, of a write operation of data to the disk.

AvgDiskWriteQueueLength

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_100NS_QUEUELEN_TYPE") , Counter ("AvgDiskWriteQueueLength") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS")

Average number of write requests that were queued for the selected disk during the sample interval. The time base is 100 nanoseconds.

For more information about using uint64 values in scripts, see Scripting in WMI.

Caption

Data type: string

Access type: Read-only

Short textual description for the statistic or metric. This property is inherited from CIM_StatisticalInformation.

CurrentDiskQueueLength

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_RAWCOUNT") , Counter ("CurrentDiskQueueLength") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Number of requests outstanding on the disk at the time the performance data is collected. It includes requests in service at the time of data collection. The value represents an instantaneous length, not an average over a time interval. Multispindle disk devices can have multiple requests active at one time, but other concurrent requests await service. This property may reflect a transitory high or low queue length. If the disk drive has a sustained load, the value will be consistently high. Requests experience delays proportional to the length of the queue minus the number of spindles on the disks. This difference should average less than two for good performance.

Description

Data type: string

Access type: Read-only

Textual description of the statistic or metric. This property is inherited from CIM_StatisticalInformation.

DiskBytesPerSec

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("DiskBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which bytes are transferred to or from the disk during write or read operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

DiskReadBytesPerSec

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("DiskReadBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which bytes are transferred from the disk during read operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

DiskReadsPerSec

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_COUNTER") , Counter ("DiskReadsPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate of read operations on the disk.

DiskTransfersPerSec

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_COUNTER") , Counter ("DiskTransfersPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate of read and write operations on the disk.

DiskWriteBytesPerSec

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_BULK_COUNT") , Counter ("DiskWriteBytesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which bytes are transferred to the disk during write operations.

For more information about using uint64 values in scripts, see Scripting in WMI.

DiskWritesPerSec

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_COUNTER") , Counter ("DiskWritesPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate of write operations on the disk.

Frequency_Object

Data type: uint64

Access type: Read-only

Frequency, in ticks per second, of Timestamp_Object. This property is defined by the provider. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Frequency_PerfTime

Data type: uint64

Access type: Read-only

Frequency, in ticks per second, of Timestamp_Perftime. A value could be obtained by calling the Windows function QueryPerformanceCounter. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Frequency_Sys100NS

Data type: uint64

Access type: Read-only

Frequency, in ticks per second, of Timestamp_Sys100NS (10000000). This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Name

Data type: string

Access type: Read-only

Qualifiers: Key, MaxLen (256)

Label by which the statistic or metric is known. This property is inherited from CIM_StatisticalInformation.

PercentDiskReadTime

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_PRECISION_100NS_TIMER") , Counter ("PercentDiskReadTime") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS") , Base ("PercentDiskReadTime_Base")

Percentage of elapsed time that the selected disk drive is busy servicing read requests.

For more information about using uint64 values in scripts, see Scripting in WMI.

PercentDiskTime

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_PRECISION_100NS_TIMER") , Counter ("PercentDiskTime") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS") , Base ("PercentDiskTime_Base")

Percentage of elapsed time that the selected disk drive is busy servicing read or write requests.

For more information about using uint64 values in scripts, see Scripting in WMI.

PercentDiskWriteTime

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_PRECISION_100NS_TIMER") , Counter ("PercentDiskWriteTime") , PerfTimeStamp ("TimeStamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS") , Base ("PercentDiskWriteTime_Base")

Percentage of elapsed time that the selected disk drive is busy servicing write requests.

For more information about using uint64 values in scripts, see Scripting in WMI.

PercentIdleTime

Data type: uint64

Access type: Read-only

Qualifiers: CookingType ("PERF_PRECISION_100NS_TIMER") , Counter ("PercentIdleTime") , PerfTimeStamp ("Timestamp_Sys100NS") , PerfTimeFreq ("Frequency_Sys100NS") , Base ("PercentIdleTime_Base")

Percentage of time during the sample interval that the disk was idle.

For more information about using uint64 values in scripts, see Scripting in WMI.

SplitIOPerSec

Data type: uint32

Access type: Read-only

Qualifiers: CookingType ("PERF_COUNTER_COUNTER") , Counter ("SplitIOPerSec") , PerfTimeStamp ("Timestamp_PerfTime") , PerfTimeFreq ("Frequency_PerfTime")

Rate at which I/Os to the disk were split into multiple I/Os. A split I/O may result from requesting data in a size that is too large to fit into a single I/O or because the disk is fragmented.

Timestamp_Object

Data type: uint64

Access type: Read-only

Object-defined timestamp, defined by the provider. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Timestamp_PerfTime

Data type: uint64

Access type: Read-only

High Performance counter timestamp. A value could be obtained by calling the Windows function QueryPerformanceCounter. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Timestamp_Sys100NS

Data type: uint64

Access type: Read-only

Timestamp value in 100 nanosecond units. This property is inherited from Win32_Perf.

For more information about using uint64 values in scripts, see Scripting in WMI.

Remarks

All classes derived from Win32_Perf are designed to be used with a refresher object. For more information about how to create and use a refresher object in C++, see Accessing Performance Data in C++. For more information about how to create and use a refresher object using scripts, see Refreshing WMI Data in Scripts.

The performance class and property qualifiers determine how to interpret the class data. For more information, see Class Qualifiers for Performance Counter Classes and Property Qualifiers for Performance Counter Classes.

Examples

For script code examples, see WMI Tasks for Scripts and Applications and the TechNet ScriptCenter Script Repository.

For C++ code examples, see WMI C++ Application Examples.

Requirements

Minimum supported client

Windows XP

Minimum supported server

Windows Server 2003

Namespace

\root\CIMV2

DLL

WmiPerfInst.dll; WmiCookr.dll on Windows Server 2003 and Windows XP

See also

Performance Counter Classes

Accessing WMI Preinstalled Performance Classes

WMI Tasks: Performance Monitoring

Accessing Performance Data in Script