real world realtime experience
Thanks fort the article. quite interresting, I must say.
Seems like you are mostly testing floating-point performance and quite small benchmarks. Java is, however, not so much used for that kind of applications. Rather, it is used for server-side request- and transaction processing where global optimization and integer performance is more important.
I was recently to a talk by a leading vendor of stock-exchange software (actually, the IT department of a stock exchange). They do massively parallel request processing with real-time requirements. Often the stock exchanges cooperate, and the deal is closed (with earnings to the stock exchange company) on the server with the fastest response.
After a very thorough selection process, they also ended up with java on linux as the technology of choice for this task, with superior global application performance being one of the reasons for that. After a lot of experiments, they found that the best performance with acceptable realtime requirements is achieved by using plain vanilla java and leaving most settings at default. Instead, they tweak the linux setup and kernel (gentoo). The most critical systems are run on "applicance-style" servers with no support for any other hardware or software other than the trading server software. I guess that means bash, ssh and java and not even usb support. Naturally, I haven't tried it myself, but as long as you are doing performance measurements I hope you do. I'm already looking forward to the article :-)
Thanks fort the article. quite interresting, I must say.
Seems like you are mostly testing floating-point performance and quite small benchmarks. Java is, however, not so much used for that kind of applications. Rather, it is used for server-side request- and transaction processing where global optimization and integer performance is more important.
I was recently to a talk by a leading vendor of stock-exchange software (actually, the IT department of a stock exchange). They do massively parallel request processing with real-time requirements. Often the stock exchanges cooperate, and the deal is closed (with earnings to the stock exchange company) on the server with the fastest response.
After a very thorough selection process, they also ended up with java on linux as the technology of choice for this task, with superior global application performance being one of the reasons for that. After a lot of experiments, they found that the best performance with acceptable realtime requirements is achieved by using plain vanilla java and leaving most settings at default. Instead, they tweak the linux setup and kernel (gentoo). The most critical systems are run on "applicance-style" servers with no support for any other hardware or software other than the trading server software. I guess that means bash, ssh and java and not even usb support. Naturally, I haven't tried it myself, but as long as you are doing performance measurements I hope you do. I'm already looking forward to the article :-)
Comment