A detailed performance analysis of a simple low-latency trading system

EN / День 1 / 12:30 / Зал 3

Target audience: intermediate-to-expert. Purpose of the talk: High-Frequency Trading (HFT) and low-latency trading are a major preserve of C++. The fact that it is amenable to extensive optimization, including micro-optimizations, has made it highly effective. Also, the impact of hardware and O/S upon such performance-critical systems are other major factors that C++ can build upon. The talk will cover, amongst other items: an analysis of some micro-optimization techniques with particular focus on the quirks in generated assembler due to different compiler versions. Exactly what is static branch-prediction, and how is it (ab)used? Followed by the "curious case of the switch-statement". All of these, and more, have been successfully implemented in a simple FIX-to-MIT/BIT trading system, for which the performance will be analyzed. Moreover, the impact of selected O/Ss upon performance will be discussed. Much has been written and speculated upon the mitigations for Spectre and Meltdown upon performance. Jason will present results that appear to contradict the currently-propounded beliefs of some major organizations.