[
https://issues.apache.org/jira/browse/CASSANDRA-7316?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14090875#comment-14090875
]
Jonathan Ellis commented on CASSANDRA-7316:
-------------------------------------------
So to summarize:
# requesting large pages can silently fall back to small pages, and we don't
have a good way to tell if it did or not
# if you're writing a kernel driver, then MmProbeAndLockPages can do what we
want, but we're not
http://msdn.microsoft.com/en-us/library/windows/hardware/ff554664(v=vs.85).aspx
# for non-drivers, VirtualLock sort of does what we want, but it's much more
low-level than mlockall ({{VirtualLock(LPVOID lpAddress, SIZE_T dwSize)}}) and
there's a ton of limitations, of which at least one "the maximum number of
pages that can be locked into a process's working set at one time is limited to
32" is an obvious deal breaker.
(http://msdn.microsoft.com/en-us/library/ms810627.aspx)
I'm inclined to close this with, Sorry windows users, we tried. You really
need to disable swap manually.
> Windows feature parity - lock JVM in memory to prevent swapping
> ---------------------------------------------------------------
>
> Key: CASSANDRA-7316
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7316
> Project: Cassandra
> Issue Type: Improvement
> Reporter: Joshua McKenzie
> Assignee: Joshua McKenzie
> Priority: Minor
> Labels: Windows, perfomance
> Fix For: 3.0
>
>
> Similar to mlockall() in CLibrary.java for linux, it would be nice to lock
> the virtual address space on Windows to prevent page faults.
> One option: Reference API:
> http://msdn.microsoft.com/en-us/library/windows/desktop/aa366895(v=vs.85).aspx
--
This message was sent by Atlassian JIRA
(v6.2#6252)