comparison src/os/windows/vm/os_windows.hpp @ 3885:3cd0157e1d4d

7082969: NUMA interleaving Summary: Support interleaving on NUMA systems for collectors that don't have NUMA-awareness. Reviewed-by: iveresov, ysr Contributed-by: Tom Deneau <tom.deneau@amd.com>
author iveresov
date Thu, 25 Aug 2011 02:57:46 -0700
parents b1cbb0907b36
children 7432b9db36ff
comparison
equal deleted inserted replaced
3871:2f27ed2a98fa 3885:3cd0157e1d4d
171 static BOOL Module32Next(HANDLE,LPMODULEENTRY32); 171 static BOOL Module32Next(HANDLE,LPMODULEENTRY32);
172 172
173 static BOOL GetNativeSystemInfoAvailable(); 173 static BOOL GetNativeSystemInfoAvailable();
174 static void GetNativeSystemInfo(LPSYSTEM_INFO); 174 static void GetNativeSystemInfo(LPSYSTEM_INFO);
175 175
176 // NUMA calls
177 static BOOL NumaCallsAvailable();
178 static LPVOID VirtualAllocExNuma(HANDLE, LPVOID, SIZE_T, DWORD, DWORD, DWORD);
179 static BOOL GetNumaHighestNodeNumber(PULONG);
180 static BOOL GetNumaNodeProcessorMask(UCHAR, PULONGLONG);
181
176 private: 182 private:
177 // GetLargePageMinimum available on Windows Vista/Windows Server 2003 183 // GetLargePageMinimum available on Windows Vista/Windows Server 2003
178 // and later 184 // and later
185 // NUMA calls available Windows Vista/WS2008 and later
186
179 static SIZE_T (WINAPI *_GetLargePageMinimum)(void); 187 static SIZE_T (WINAPI *_GetLargePageMinimum)(void);
180 static BOOL initialized; 188 static LPVOID (WINAPI *_VirtualAllocExNuma) (HANDLE, LPVOID, SIZE_T, DWORD, DWORD, DWORD);
181 189 static BOOL (WINAPI *_GetNumaHighestNodeNumber) (PULONG);
182 static void initialize(); 190 static BOOL (WINAPI *_GetNumaNodeProcessorMask) (UCHAR, PULONGLONG);
191 static BOOL initialized;
192
193 static void initialize();
194 static void initializeCommon();
183 195
184 #ifdef JDK6_OR_EARLIER 196 #ifdef JDK6_OR_EARLIER
185 private: 197 private:
186 static BOOL (WINAPI *_SwitchToThread)(void); 198 static BOOL (WINAPI *_SwitchToThread)(void);
187 static HANDLE (WINAPI* _CreateToolhelp32Snapshot)(DWORD,DWORD); 199 static HANDLE (WINAPI* _CreateToolhelp32Snapshot)(DWORD,DWORD);