Chronicle Queue C++ helps create Options calculations over 1000 times quicker
Scenario
We were engaged by one of our clients to help them improve their latencies around the calculations of the Greeks within their Options trading solution, the current solution involved taking data from internal data generation components in C++ transporting them into Kdb and then running the calculations within Kdb . This process was causing the client issues especially in the 99th percentile as they were experiencing multiple millisecond delays.
Solution
We proposed to use Chronicle Queue C++ to transport the data to a C++ based options calculator removing the need for Kdb and the conversion of data into the Kdb environment. The tests were done based on a constant 10 million messages per second and various sized data packets were used to ensure that it gave a fair comparison to what was being used at the client site. We ran two benchmarks one measuring data being written/read from process to process and one with the data being written/read from thread to thread. The results across the benchmark gave significant improvements and from the 99th percentile up i.e 1 in 100 messages the performance showed dramatic improvements with performance over 1000 times quicker.
Benchmarks
All timings in nanoseconds