• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Ultra-low latency systems...

Joined
1/24/10
Messages
2
Points
11
Hi,

I'm interested in knowing on some of the various *Linux kernel tuning* that you guys have undertaken for ( a) ultra-low latency (b) high transaction applications .

i am free to customize the Linux kernel - application performance is the key !

any kind of pointer are also welcome.

thanks in advance,

regards,
shine
 
Do you think, just by tuning some kernel parameters you can improve the performance of your high transaction application?
It is not so easy. You have to basically re-design and rewrite your application to take advantage of the multi-core processors. Search google for "Lock free data structures"
 
Hi elliot , thanks for the reply.

As you have mentioned , we aren't just looking at kernel tuning.
In fact, we are looking at all possible avenues to squeeze out the last bit of performance and kernel tuning ( or customization ) is one of the avenues that we also want to look at.

We want to explore Linux kernel customization to give maximum performance given the idiosyncrasies of application ( ultra low latency / high transaction )

regards
shine
 
Hi elliot , thanks for the reply.

As you have mentioned , we aren't just looking at kernel tuning.
In fact, we are looking at all possible avenues to squeeze out the last bit of performance and kernel tuning ( or customization ) is one of the avenues that we also want to look at.

We want to explore Linux kernel customization to give maximum performance given the idiosyncrasies of application ( ultra low latency / high transaction )

regards
shine

Forget Linux Kernel tuning. You need an extension board in your computer / server like the ones developed by HPC Platform. There is no processor in the loop for ethernet handling and you can't be really faster than that. If you are looking for people to develop such a solution for you let me know.
 
Look for Infiniband fabric architecture, RDMA, Zero-copy etc for ultra low latency. This would definatelly help you.
 
This can definitely be done within the GNU/Linux kernel, in fact two companies that are well known for doing this are Facebook and Google. Both companies fine tune all aspects of their network architecture's down to the wire, such as the use of a very efficient serialization format for message passing ie.. thrift and protocol buffers, and many modifications to the vanilla kernel, mainly the networking stack (epoll() enhancements) and utilizing programming languages that are well suited for high transactions messages passing environments such as Erlang. These are the advantages of having full control over your OS and makes the purchase of dedicated expensive hardware really a waste of money. Google search for "Facebook engineering blog", you would be surprised how various tweaks to the OS provides a drastic reduction in overall latency and maximize throughput.
 
Back
Top