Win32_NetworkAdapter Is Not Query Optimized (271623)



The information in this article applies to:

  • Microsoft Windows Management Instrumentation 1.5

This article was previously published under Q271623

SYMPTOMS

When you register for intrinsic events for the Win32_NetworkAdapter class, causes high CPU utilization.

CAUSE

This problem can occur when a program needs to be notified when a Win32_NetworkAdapter class instance is created, modified, or deleted, because it registers for polling with Windows Management Instrumentation (WMI) by specifying an event query. These event queries specify a polling interval that WMI uses to poll the Win32_NetworkAdapter data provider.

STATUS

Microsoft has confirmed that this is a problem in Windows Management Instrumentation 1.5.

MORE INFORMATION

The following sample is an example of an event query:

SELECT * FROM __InstanceModificationEvent WITHIN 5 WHERE TargetInstance ISA "Win32_NetworkAdapter"
					

The WITHIN clause specifies the polling interval. In this example, the query is run every five seconds.

Most of the data that is contained in the Win32_NetworkAdapter class (for example, Status, Availability, and so on) seldom changes; however, when processing a query, the provider repopulates all of the properties in the class. Because this class is not optimized for queries that are related to specific properties, excessive queries for registered intrinsic events can cause high CPU utilization.

On Windows 2000-based computers, the Win32_NetworkAdapter.Status property is not populated, and the Availability property is hard-coded to three (Running/Full Power).

To reduce CPU utilization when you register for Win32_NetworkAdapter intrinsic events, specify a large polling interval (for example, five minutes).

Modification Type:MajorLast Reviewed:10/22/2002
Keywords:kbBug kbenv KB271623