4 ms·
You don't need to shut down processes on the server. All you have to do is isolate CPU cores and move your workloads onto those cores. That's been a common prac
by shaklee3 2y ago
You don't need to shut down processes on the server. All you have to do is isolate CPU cores and move your workloads onto those cores. That's been a common practice in low latency networking for decades.
- bluGill 2y agoI'm not in HFT, but I wouldn't expect that to be enough. Not only do you want to isolate cores, you want to isolate any shared cache between cores. You do not want your critical data ejected from the cache because a different core sharing the cache has decided it needs that cache. Which of course starts with knowing exactly what CPU you are using since different ones have different cache layouts. You also don't want those other cores using up precious main memory or IO bandwidth at the moment you need it.
- worstspotgain 2y agoJust to add to your good points: since there's always a faster cache for your working set to not fit in, you can use memory streaming instructions to reduce cache pollution. Depending on the algorithm, increasing cache hit rates can give ridiculous speed-ups.
- shaklee3 2y agoCorrect. I was just pointing out to OP that moving processes is not worthwhile and isolation is how you'd do it