Answered Win32_CacheMemory WMI class Associativity values

  • Sunday, June 24, 2012 9:11 PM
     
     

    I'm querying the Win32_CacheMemory class via WMI.  I'm getting an Associativity value of 9 for my L3 cache.  All the online documentation I can find define only values 1 to 8.

    What values other than 1 to 8 are possible and what do they mean?

    Here's a screenshot from the WMI Code Creator tool on my system:


    • Edited by nrcaliendo Sunday, June 24, 2012 9:13 PM Added screenshot
    •  

All Replies

  • Monday, June 25, 2012 5:41 AM
    Moderator
     
     

    For this, I think you will need the CPU company's support.

    As I searched on the internet, I found it also has more associativity values than the document list out.

    http://www.intel.com/content/www/us/en/architecture-and-technology/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.html?wapkw=set+associative 

    I have not found the 9 value in Intel page.

    For more research on CPU, please use their forum.

    If there's any concern, please feel free to let me know.

    Best wishes,


    Mike Zhang[MSFT]
    MSDN Community Support | Feedback to us

  • Monday, June 25, 2012 11:26 AM
     
     
    Are the values returned from WMI for Associativity an industry standard?  I just thought they were just ordinal numbers that listed the known associativity types.
  • Monday, June 25, 2012 11:47 AM
    Moderator
     
     

    Base on my understanding after read it from Intel web page, I think so, but I'm not CPU struct aspect expert, so I recommend you use the CPU companies forums to ask for explanation.

    Best wishes,


    Mike Zhang[MSFT]
    MSDN Community Support | Feedback to us


  • Wednesday, June 27, 2012 9:01 PM
     
     

    I posted on Intel's forum, but did not get a clear answer.

    They suggested checking the Intel Software Developer's Manual.  I did so, but it does not look like the values that WMI returns match Intel's values (returned from CPUID instruction)...

    L2 associativity field encodings:
    00H - Disabled
    01H - Direct mapped
    02H - 2-way
    04H - 4-way
    06H - 8-way
    08H - 16-way
    0FH - Fully associative

    WMI values:

    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

  • Thursday, June 28, 2012 5:54 AM
    Moderator
     
     

     I also have not find the reason why the value's definitions are different from Intel documents, I will try to consult others senior engineer to see if they can help us to explain this.

    Best wishes,


    Mike Zhang[MSFT]
    MSDN Community Support | Feedback to us

  • Monday, July 02, 2012 10:12 AM
    Moderator
     
     Answered

    After consult others senior engineers, I got this: http://dmtf.org/standards/smbios

    They told me that the value is defined in the SMBIOS specification, you can open it in the above page.

    You can find the table: "7.8.5  Cache Information — Associativity" 

    And it seems the "9" is "09h - 12-way Set-Associative":

    wmic path Win32_CacheMemory get Associativity


    Mike Zhang[MSFT]
    MSDN Community Support | Feedback to us