GetNumaAvailableMemoryNode function

Retrieves the amount of memory available in the specified node.

Use the GetNumaAvailableMemoryNodeEx function to specify the node as a USHORT value.


BOOL GetNumaAvailableMemoryNode(
  UCHAR      Node,
  PULONGLONG AvailableBytes



The number of the node.


The amount of available memory for the node, in bytes.

Return Value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.


The GetNumaAvailableMemoryNode function returns the amount of memory consumed by free and zeroed pages on the specified node. On systems with more than one node, this memory does not include standby pages. Therefore, the sum of the available memory values for all nodes in the system is equal to the value of the Free & Zero Page List Bytes memory performance counter. On systems with only one node, the value returned by GetNumaAvailableMemoryNode includes standby pages and is equal to the value of the Available Bytes memory performance counter. For more information about performance counters, see Memory Performance Information.


Minimum supported client Windows Vista, Windows XP Professional x64 Edition, Windows XP with SP2 [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header winbase.h (include Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

See Also


NUMA Support

Process and Thread Functions