[ 
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)

Reply via email to