Making an Instance Provider into a High-Performance Provider

Writing a WMI high-performance provider to create performance counters is not recommended. Starting with Windows Vista, the WMI Performance Counter Classes are no longer migrated into the Windows performance libraries by the AutoDiscovery/AutoPurge (ADAP) reverse adapter. To create a performance counter provider, use Performance Counters Version 2.0. After performance library objects are created, the WMIPerfClass Provider parses the objects and creates or refreshes a WMI class derived from Win32_Perf for each performance object. The WMIPerfInst Provider then dynamically provides raw and formatted performance counter data to the WMI performance classes.

The following high-level procedure provides the steps required to create a high-performance provider.

To create a high-performance provider

  1. Register your provider with WMI. For more information, see Registering a High-Performance Provider.
  2. Implement your provider. For more information, see Writing an Instance Provider.
  3. Implement the high-performance interface. For more information, see Implementing the High-Performance Interface.
  4. Derive and write your Managed Object Format (MOF) schema to obtain raw performance data. For more information, see Supporting the Win32_PerfRawData Class.
  5. Derive and write your MOF schema to obtain precalculated data. By supporting this class, the provider is not required to perform the calculations. This data will be the same that appears in the System Monitor in Perfmon. For more information, see Supporting the Win32_PerfFormattedData Class.

Developing a WMI Provider

Performance Libraries and WMI