I'm late to this thread, but...
In that post with the three screenshots, it shows a rather trivial CPU usage. Not one core pinned. Not even one of the cores is meaningfully above 50%.
Barely any load on four cores. Almost like hyper threading is off. That doesn't make good use of the 'spare' time the CPU has while it loads and unloads its cache.
Don't know where the bottle neck is that's giving you lag, but you could check your CPU settings. Trading is usually a rather trivial load. Just look at the CPU usage. It's not having to work much. Recognizing this, to save power, the CPU gets scaled back, in its speed and it may even be shutting down some cores.
This means it takes longer in real time before various tasks get completed. For most things, this is transparent to users. For traders, we see lag. Realistically, we don't have much for the computer to do, but when we're doing it, we want it right now as fast as possible. In addition to five TWS charts with a crazy number of indicators, my API streams data and publish (reactive) Level 1 every quarter second, where it calculates 45 indicators, then the strategy, then orders out the door. 97.6% of the time, from timer wake up to order is out the door, is under 1 ms. This is on an i7 970 hexcore running at 3.99 Ghz. I think the passmark is under 9,000.
Find the setting for your CPU, firmware and/or OS, and:
- do not allow cores to be shut off,
- do not allow the CPU speed to be dialed back (watch CPU temps).
See what your lag and CPU usage is after that.
Does that lag or CPU usage increase the longer you've been running?