Hey
I actually asked this question in December last year on stack overflow but haven't gotten any responses yet, now this isn't strictly game dev question but I'm hoping that its still acceptable In this forum (if not I understand)
Here's the original question, Its probably a bit long winded so I'l try to sum it up https://stackoverflow.com/questions/53902687/how-to-get-rid-of-tcp-ip-send-delay-in-interprocess-communication-between-a-java
I have 2 separate processes running on 1 machine/vm. These processes do a lot of inter-process communication between each other via TCP sends. when running on a windows machine, a dedicated linux machine or a Open VZ vm everything works perfectly. There is no delay on individual sends.
When I run my setup on a KVM vm each tcp send gets about 20 ms of delay on it which makes my application unusably slow. I have enabled tcp no delay on both sides, makes no difference.
I have tested this on multiple different hosting providers. Dedicated linux servers and openvz vm's never has this delay, KVM vm's always has it.
Any idea what causes this? is this perhaps just a fact of life when using KVM? or can it be improved.
I assume it might be an issue of partial-virtualization(openvz) vs full-virtualization(KVM) but I haven't tested on any other type of VM so i cant be sure.