When one thinks of low-latency messaging, it’s companies like Tibco, Informatica, Solace that come to mind. But also in the mix is the stealthy 60East Technologies, about to release its latest version. IntelligentTradingTechnology.com got the scoop from co-founder Brand Hunt.
Q: So when and how did 60East Technologies get started, where is it today, and what is its focus?
A: Our roots go back to 2006 when my co-founder, Jeffrey Birnbaum, had the notion that a huge change in the computing landscape was emerging and we were entering a high performance computing renaissance that highlights how outdated legacy software architectures are with respect to performance and scale.
Jeff started researching the best architectures and programming techniques to exploit performance opportunities enabled by large multi-core/multi-socket systems, 10gE+ networking and flash storage.
Armed with this research, Jeff set out to build the highest performing messaging system that would be uniquely positioned to take advantage of current and future advancements in multi-core processors, networking and storage.
Today we’re committed to delivering the fastest messaging solutions to our customers.
Q: Your product is the Advanced Message Processing System (AMPS) – what does it do? What applications is it for?
A: Our AMPS product is a high performance topic and content filtered ‘pub-sub’ engine that seeks to lower the end-to-end latency from publisher to subscriber. With AMPS, we’re not only concerned about how quickly we can read data from one wire and send on another. We are software developers ourselves with deep experience with other messaging systems as well as what does and doesn’t work.
For example, we found many desktop GUIs using ‘classic’ messaging paradigms would waste 50-70% of their CPU cycles examining and then discarding messages they don’t need or desire to process. AMPS uses native message types like FIX and XML along with content filtering to maximize delivery selectivity so that only the messages a subscriber wants are delivered.
At the heart of AMPS is a ‘State of the World’ (SOW) cache similar to a last-value cache that allows AMPS to support SQL-92 queries, delta operations for commutative messaging, aggregate views, focus tracking, conflation, and a handful of other features. All of these features exist to make writing robust publishers and subscribers easy while achieving the highest performance possible.
Q: What’s the technology underpinning AMPS?
A: Awesome code! AMPS has been written from the ground up to take full advantage of the available hardware. For those hungry for the details, AMPS is written in C/C++ with a focus on highly concurrent lock and wait-free algorithms to maximise scalability and parallel processing performance.
Q: Can you outline the performance characteristics – especially throughput, latency, jitter – of AMPS?
A: With all the standard performance disclaimers, our biggest customer deployments are processing more than a billion messages per trading day.
Our evaluation demo on a Sandy Bridge host processes about 1.3 million FIX messages per second per core, with 170 byte message size and a 6% subscriber match rate. With 575 byte XML messages, the throughput is around 800,000 messages per second per core.
Regardless of message type, the median internal processing latency is well under one microsecond and the jitter is low with the 99th-percentile typically being less than 3x the minimum.
The AMPS engine performance is only one part of the story, since a fast server can only be as fast as the clients connected to it. Our AMPS client API’s deliver the best performance while still maintaining an easy to use interface.
Q: Who is using AMPS? For what?
A: Our customer base consists of large financial institutions and they use AMPS for everything from market data distribution, storage of order and recovery state, and even as GUI view servers.
Q: What’s new in the upcoming 3.0 release?
A: The 3.0 release contains enhancements for high-availability and replication, making it easier to run AMPS in hot-hot configurations or perform cross-region replication while leveraging the high selectivity of AMPS topic and content filtering.
Q: Where is AMPS and 60East heading over the next year or so?
A: We’ve built a high performance messaging platform that combines a high performance pub-sub engine with aspects of a SQL database and CEP engine. Over the next year we will be adding more features that extend these core capabilities. In terms of performance, there are some exciting kernel bypass technologies on the horizon that we can exploit to achieve higher levels of network and storage throughput plus further reductions in latency.
We believe we’ve only scratched the surface of the performance that we can deliver to our customers. We will continue to evaluate new technologies, new programming techniques and work with vendors in an effort to provide our customers with the highest performing, feature rich product on the market.