GetNumaHighestNodeNumber (kernel32)
Last changed: anonymous

.
Summary
Retrieves the node that currently has the highest number.

C# Signature:

[DllImport("kernel32.dll", SetLastError=true)]
static extern bool GetNumaHighestNodeNumber(out uint count);

VB Signature:

Declare Function GetNumaHighestNodeNumber Lib "kernel32.dll" (TODO) As TODO

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

None.

Tips & Tricks:

Please add some!

Sample Code:

        /// <summary>
        /// Althought not garanty to be exact as per documentation, that's the simplest way to
        /// know the number of ProcessorGroup (Eric Ouellet)
        /// </summary>
        /// <param name="count"></param>
        /// <returns></returns>
        [DllImport("kernel32.dll", SetLastError = true)]
        private static extern bool GetNumaHighestNodeNumber(out uint count);

        public static int GetProcessorGroupCount()
        {
            uint processorGroup = 0;
            try
            {
                GetNumaHighestNodeNumber(out processorGroup);
            }
            catch (Exception)
            {
                return -1;
            }

            return (int) processorGroup + 1; // Node number start ar 0
        }

Documentation