Welcome

How can we help?

Real Logic offers a range of services to help you improve the latency, throughput, or
scalability characteristics of your software. We offer training,
coaching, performance tuning, and
development services via a network of recognised experts.

If you need the help of people with experience building systems capable of processing millions of transactions
per second at latencies measured in the microseconds, and still be highly-available, then you have come to the
right place.

What is our philosophy?

Real Logic was setup by Martin Thompson. Martin has had life long passion for
high-performance computing starting with hacking graphics on micro computers to lately when he has been crunching
financial market data feeds. Inspired by his love of motor sport, Martin started the Mechanical Sympathy
blog and
discussion group. Mechanical Sympathy
is about the programmer having an appreciation for the platform on which their code executes so that they work in
harmony. Mechanical Sympathy is one strand of getting back to real computer science and engineering in our
subject which has become dominated by technology fashions. If we claim to be practitioners of computer science
then we should know something about computers and be following the
scientific method.

Since the advent of the web there has been an almost myopic focus on ease of development and delivery
predictability. This has been for good reasons. One of the consequences of this focus has been staggering
levels of inefficiency in many systems. This great quote sums it up so succinctly.

"The most amazing achievement of the computer software industry is its continuing
cancellation of the steady and staggering gains made by the computer hardware industry."

- Henry Peteroski

Software performance is once again becoming a key requirement for many systems. It may be latency for a
high-frequency trading application or exchange, throughput for processing large volumes of data, or the ability
to scale efficiently as we process more people, stuff and deals.

As our systems become increasingly more parallel we can no longer rely on huge gains in single-threaded
performance from our processor vendors. We must return to the disciplines of algorithm design, hardware
understanding, and profile guided optimisation. Decisions need to be made on data and not the latest fashion.

What is our approach?

A client may approach us for a variety of business reasons that can usually be distilled down to two types of
engagement.

We can help tune and improve an existing system

By profiling a system at the language, operating system, and hardware level we can quickly isolate bottlenecks
and inefficiencies in design or implementation. A system can then be tuned or evolved to meet the performance
requirements.

Performance tuning engagements tend to be relatively short with major
improvements as a result. The client is exposed to the performance profiling and diagnosis methodology so they
learn and can self diagnose future issues.

We can help design and build a new system

An organisation may come to the conclusion that improved performance can lead to a wider audience, more trading
opportunities, or significant cost savings. We can help with the evolution of an existing system, or design of
a new system, to meet the required performance goals.

Real logic has helped many clients achieve performance targets which opened new opportunities and in some cases
resulted in products with the best performance in the respective industry. This has been achieved by a combination
of training, coaching, and development support.

These systems tend to be business critical and therefore must be highly-available and secure. We believe in building
reactive systems and have contributed to the Reactive Manifesto.
Reactive systems are now becoming mainstream due to the benefits they provide.