c# STILL returning wrong number of cores
===

Ok, so I posted in http://stackoverflow.com/questions/11571994/in-c-sharp-getenvironmentvariablenumber-of-processors-returns-the-wrong-numb asking about how to get the correct number of cores in C#. Some helpful people directed me to a couple of questions where similar questions were asked but I have already tried those solutions. My question was then closed as being the same as another question, which is true, it is, but the solution given there didn't work. So I'm opening another one hoping that someone may be able to help realising that the other solutions DID NOT work.

That question was http://stackoverflow.com/questions/1542213/how-to-find-the-number-of-cpu-cores-via-net-c which used WMI to try to get the correct number of cores. Well, here's the output from the code given there:

    Number Of Cores: 32
    Number Of Logical Processors: 32
    Number Of Physical Processors: 4

As per my last question, the machine is a 64 core AMD Opteron 6276 (4x16 cores) running Windows Server 2008 R2 HPC edition.

Regardless of what I do Windows always seems to return 32 cores even though 64 are available. I have confirmed the machine is only using 32 and if I hardcode 64 cores, then the machine uses all of them. I'm wondering if there might be an issue with the way the AMD CPUs are detected.

Thanks,
Justin