mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 11:34:38 +02:00
7082969: NUMA interleaving
Support interleaving on NUMA systems for collectors that don't have NUMA-awareness. Reviewed-by: iveresov, ysr
This commit is contained in:
parent
0c6ad2c298
commit
06d05b7c47
6 changed files with 383 additions and 105 deletions
|
@ -173,13 +173,25 @@ public:
|
|||
static BOOL GetNativeSystemInfoAvailable();
|
||||
static void GetNativeSystemInfo(LPSYSTEM_INFO);
|
||||
|
||||
// NUMA calls
|
||||
static BOOL NumaCallsAvailable();
|
||||
static LPVOID VirtualAllocExNuma(HANDLE, LPVOID, SIZE_T, DWORD, DWORD, DWORD);
|
||||
static BOOL GetNumaHighestNodeNumber(PULONG);
|
||||
static BOOL GetNumaNodeProcessorMask(UCHAR, PULONGLONG);
|
||||
|
||||
private:
|
||||
// GetLargePageMinimum available on Windows Vista/Windows Server 2003
|
||||
// and later
|
||||
// NUMA calls available Windows Vista/WS2008 and later
|
||||
|
||||
static SIZE_T (WINAPI *_GetLargePageMinimum)(void);
|
||||
static LPVOID (WINAPI *_VirtualAllocExNuma) (HANDLE, LPVOID, SIZE_T, DWORD, DWORD, DWORD);
|
||||
static BOOL (WINAPI *_GetNumaHighestNodeNumber) (PULONG);
|
||||
static BOOL (WINAPI *_GetNumaNodeProcessorMask) (UCHAR, PULONGLONG);
|
||||
static BOOL initialized;
|
||||
|
||||
static void initialize();
|
||||
static void initializeCommon();
|
||||
|
||||
#ifdef JDK6_OR_EARLIER
|
||||
private:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue