Hello
We're proposing an improvement to the OpenJDK which enables users to take 
advantage of the TCP loopback fast path mechanism in Windows for significantly 
higher performance of sockets whose both end points are on the same machine.  
This is especially relevant in distributed server-side/cloud scenarios, such as 
Hadoop.

We have the code figured out and tested internally. I've uploaded our webrev 
package here (too big to send as an attachment):

https://openjdkcontrib.blob.core.windows.net/tcploopback/webrev-20140918.zip

The crux of the change lies in enabling the SIO_LOOPBACK_FAST_PATH IOCTL flag 
on each socket creation call in Windows.

As for activating this optimization, we're proposing the conservative approach 
of keeping it off by default and adding a command line argument to activate it:
-Dwindows.enableFastLocalTcpLoopback=true | false

(IMHO though, it'd be great to eventually just have it on by default).

We'd appreciate a review and acceptance of this improvement.

And, as we are new in the OpenJDK community and this may as well be our first 
contribution to Java, I apologize for any steps in the submission process that 
I may have missed here and would appreciate guidance as needed.

Best regards

Martin Sawicki (and Kirk Shoop, and Valeriy Kopylov)
Microsoft Open Technologies, Inc.
A subsidiary of Microsoft Corp.

Reply via email to