Windows WMI Win32_CacheMemory class - cache Associativity values

Windows WMI Win32_CacheMemory class - cache Associativity values

I hope this is the right forum for this thread, it was the closest matchI could find...

I already posted this question on Microsoft's MSDN forum, and they recommended coming here.

I'm querying the Win32_CacheMemory class to enumerate my CPU cache. I'm getting a value of 9 back for Associativity. All online documentation I can find only lists values 1-8.

I'm trying to find info on full set ofpossible values.

My system:

Intel Core i5-2540M CPU @ 2.60 GHz
Windows 7 Pro 64-bit

8 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Quoting nrcaliendo...I already posted this question on Microsoft's MSDN forum, and they recommended coming here.

[SergeyK]That is really strange that nobody from Microsoft couldn't answer your question...

I'm querying the Win32_CacheMemory class to enumerate my CPU cache...

In what WMI namespace is it?

Best regards,
Sergey

Quoting nrcaliendoI'm querying the Win32_CacheMemory class to enumerate my CPU cache. I'm getting a value of 9 back for Associativity. All online documentation I can find only lists values 1-8.

I'm trying to find info on full set ofpossible values...

Please take a look at:

1. Intel Software Developer's Manual - Instruction Set Reference (A-M) Vol 2A

Table 3-20

A. It looks like9 is a'Fully Associative' and Intel coded it with a value 0FH. By some reason Microsoft's
WMI uses the value 9 instead.

B.Could itbe'Reserved'?

2. CPUID instruction
EAX = 4
EBX = Bits 31-22W - Ways of Associativity

Quoting nrcaliendoI'm querying the Win32_CacheMemory class to enumerate my CPU cache...

>>In what WMI namespace is it?

I figured it out: it is the classin CIMV2 namespace.

Quoting Sergey KostrovQuoting nrcaliendoI'm querying the Win32_CacheMemory class to enumerate my CPU cache. I'm getting a value of 9 back for Associativity. All online documentation I can find only lists values 1-8.

I'm trying to find info on full set ofpossible values...

Please take a look at:

1. Intel Software Developer's Manual - Instruction Set Reference (A-M) Vol 2A

You can find lots of Intel manuals here:

http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html?wapkw=Manuals

Thank you for the information. I reposted back on Microsoft's forum.

There does not appear to be an equivalency between what Intel returns (CPUID instruction) and what WMI returns.

WMI just returnsthe ordinal numberof the associativity type within an enumeration.

CPUID WMI 00H - Disabled
01H - Direct mapped
02H - 2-way
04H - 4-way
06H - 8-way
08H - 16-way
0FH - Fully associative 1 - Other
2 - Unknown
3 - Direct Mapped
4 - 2-way Set-Associative
5 - 4-way Set-Associative
6 - Fully Associative
7 - 8-way Set Associative
8 - 16-way Set-Associative

How did you get WMI numbers? From a header file? From a TLB-library?

Quoting Sergey Kostrov...
A. It looks like9 is a'Fully Associative' and Intel coded it with a value 0FH. By some reason Microsoft's
WMI uses the value 9 instead.
...

Not confirmed. Please see Post #5.

Leave a Comment

Please sign in to add a comment. Not a member? Join today