Quantitative Finance Stack Exchange is a question and answer site for finance professionals and academics. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am using .net/c++ version of quickfix. How does logging effect Quickfix performance? If I disable logging to file, can it help to increase performance of quickfix?


share|improve this question

I answered a stackoverflow question that was pretty much identical over here

Maybe it was you who cross posted. Long story short, logging has a real cost. Sadly there isn't alot you can do to get around it with a stock quickfix implementation.

share|improve this answer

Same answer as @chollida - any kind of logging has real computational cost. You can improve on the QuickFIX implementation without disabling the logging functionality by increasing the buffer size, or using message middleware to pass the logging task to another thread or core (which therefore amortizes the total computation time in the QuickFIX path).

share|improve this answer

Disk I/O has a big latency cost, so you must use an asynchronous logging framework and the fastest way to pass messages from thread A to thread B is to use the disruptor pattern. For a good event sourcing (i.e. logging to a file without log levels like info, warn, error, etc.) framework you can take a look on CoralLog. It can log a 64-byte message in 87 nanoseconds on average. When it comes to throughput it can easily log 4 million 64-byte messages per second. That should be more than enough for most HFT strategies.

Disclaimer: I am one of the developers of CoralLog.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.