We have a Java application that trades in the financial markets. Latency is important to us; we are continually trying to improve latency, increase throughput and reduce jitter.
We are currently running our application in production on Windows using the Sun JVM. We have test cases to test how our system responds to market data generated in a test environment. We want to figure out the best JVM and OS for our application.
Several people have told me that vendors like to compete on benchmarks like ours, but I can't get through to the right people.
I'm trying to get in touch with IBM and Sun to start such a comparison. IBM's realtime page suggests writing to rtteam@us.ibm.com, but that address bounces.
Sun's Global Financial Services page has no way to get in touch with them and their chat rep could not help.
Can anyone refer me to an appropriate contact?
C on QnX would come to mind a long time before I would start to make anything with those requirements in Java on top of a JVM on a 'regular' (non-hard real time) unix.
There are simply too many layers on top of each other to be able to make any hard predictions about worst case latency.
I think you picked the wrong tool for the job, and no expert outsider is going to be able to undo the consequences of that decision. You are looking at a fundamental flaw here.
On a side note, I do hope that you have at least configured your garbage collector to work incrementally, that will decrease overall performance but it will significantly improve your worst case.