When I talk to customers of ours there are a few things which tend to be mis-understood, often it’s the graphics cards, or understanding exactly what RAM is for, but something which also can cause confusion is the computer processor.
I’ve had more than one discussion where someone is comparing one computer against another and coming to the wrong decision based on a lack of understanding of how processors actually work.
I can understand, processors are getting ever more confusing as time goes by. In the good old days you had a limited selection of very similar processors to choose from, with performance levels dictated mainly by how fast the clockspeed was (it’s MHz rating which is now measured in GHz).
Now you have a ton of options, at one online retailer there are currently 81 different CPU’s from Intel and AMD available to buy right now.
Frankly that is a ridiculous number, it doesn’t make for an easy decision.
When you are looking to put together a computer for trading the stock or forex markets then you need an understanding of what makes one processor better than another.
This is important both for traders looking for the ultimate performance from their machine and for those who are on a smaller budget with more modest requirements.
As I always try and get across to people, whether you are spending a few thousand or a few hundred pounds, you should always try and get the best performance for your money.
For a trading computer, there are definite rules, it is possible to make a good decision no matter what kind of budget you have, it is also entirely possible to make the wrong decision.
What is the right decision? It depends on what you want to run on the computer, what follows is a discussion of the important things to know and then an overview of what you should be looking for based on your specific requirements.
CPU GHz Ratings Are Misleading
When looking at processors, one of the ratings which is always given is it’s clockspeed, this is expressed as GHz and is something a lot of people use to compare one processor over another.
The problem is that it is not an effective way to compare to chips at all.
If everything else on the chip was exactly the same, then yes, the one with the higher clockspeed would likely be faster, but, as you are probably guessing, there are a number of other factors that come into play when evaluating the speed of a CPU
For example, an Intel Core i5 7600K runs at 3.8GHz, a Core i5 8600K runs at 3.6GHz, the first chip’s clockspeed is roughly 5.5% faster, but the second chip would actually run roughly 5.5% faster in terms of it’s raw speed (or it’s single thread speed which I’ll get to in a minute).
How can this be?
Well, there are many other factors at play including (but not limited to), the IPC (instructions per clock) and the turbo speed.
If a CPU can process more instructions per clock (or cycle) then it could complete more tasks than another processor even if it runs slower.
Think about a bus versus a car. The car might go faster but if you needed to transport 20 people to a destination then a slightly slower bus would complete the task quicker as the car would need to make multiple journeys.
Many chips also now have a ‘turbo speed’ which is a faster clockspeed that the chip can achieve in certain workloads.
Going back to our two chips, if the one at 3.6Ghz has a faster turbo speed than the 3.8GHz chip (which it marginally does) then this might help push it to get a faster result in some workloads.
The one thing to take away from this is: Do not compare chips solely based on clockspeed (the GHz rating) as it doesn’t tell the full story.
If you want to evaluate exactly how fast a chip runs then you should look at the single thread speed.
Single Thread Speed
This Single Thread Speed is basically an evaluation of how fast a processor can complete a workload on just one of the processor threads.
What is a processor thread? For the purposes of this discussion imagine that a thread is the part of a processor than can actually compute data, kind of like a gate that accepts data and can perform an instruction on this data to produce a result.
The single thread speed is a ‘real world’ measure of the speed of a processor. Taking all the different elements of a CPU (clockspeed, IPC, turbo speed, etc…) and determining how they combine to effectively complete tasks.
You can find this number by running tests, it is not something that is published in the CPU marketing or technical specs.
Helpfully we publish these numbers for our trading processor tests, other online review sites also list these in their benchmark testing so generally, with a bit of research, you can usually find a rating for a CPU and then compare it to others.
We have found in our tests that this speed rating has the closest correlation with actual performance in the vast majority of trading programs, so as a generalisation (that holds true in pretty much all cases) the faster the single thread speed the quicker the CPU will run your trading software.
This means incoming data feeds from your broker are converted into charts faster and tickets are opened and then submitted back to your broker quicker, both these actions require some level of computation by your computer processor so the faster it can complete these tasks, the better it ends up being for your trading.
Whilst the single thread speed will determine how fast your trading platform will run, there is another important and often misunderstood aspect of modern processors, the core count.
Think of a core as an individual CPU, it processes a set of instructions (we call this a thread).
If a processor has four cores then its four threads can work simultaneously, obviously this can make a difference to how the CPU performs, but it’s not as straight forward as you may initially think, and this is down to how software works. (More of this in a moment).
There is also a technology called HyperThreading which some Intel chips have, this is a technology which allows one physical CPU core to have two threads, so in theory HyperThreading on a quad core CPU means it has eight processor threads available to use at the same time, the same as an eight core CPU without HyperThreading.
This isn’t a true apples to apples comparison as single threads on a physical core tend to be quicker / more efficiently than one of the threads on a HyperThreaded core, however it is important to understand that generally speaking HyperThreading can help some types of multi-threaded workloads complete faster.
Multi-Threaded Software & Workloads
As I hinted at above, your software will dictate how much benefit (if any) you will get from having a greater number of CPU cores.
Some programs are designed to scale up and use as many CPU cores as they can access, this tends to be software which needs to do a lot of intensive processing, CAD rendering and video editing / rendering are the prominent examples of this.
We call these programs and workloads multi-threaded.
For example, when you ask a computer to convert one video into another format, the computer needs to literally access every frame of video content, run some kind of process on it, and then move on to the next. With a common video using 60 frames per second, then converting a 10 minute video means having to process 36,000 frames of footage.
If your software can only use one thread at a time, and it takes 2 seconds to process each video frame then this job would take 20 hours to complete (36,000 frames x 2 seconds processing per frame).
If we ran the same job on a processor with four threads available then this job would drop down to 5 hours.
For someone doing this on a regular basis then investing in a faster CPU with a higher core count would really improve their life.
Shaving half a second off the processing time per frame and having 8 cores at their disposal could cut this 20 hour job down to under 2 hours.
That all sounds amazing, and if you are constantly running software that is multi-threaded then it is, the problem is most software is not multi-threaded.
Sure, some programs will use a couple of processing cores, but generally most programs do not have to process massive chunks of data like video rendering workloads so there is little point in developers making their software multi-threaded.
Multi-Threaded Trading Software
We are planning a deep dive into multi-threaded trading software very soon (and I’ll update this article with a link when we have it published) but virtually any trading software or platform you will use will not be multi-threaded.
There is no benefit at all in going for a really high number of processor cores to make your trading platform run quicker, they will have no effect if the software isn’t multi-threaded.
The only benefit of having extra processing cores which may or may not be useful depending on your own particular workflow is when discussing multi-tasking on computers.
Whilst it is true that most software (trading or otherwise) is not designed to scale up to use all the available processing threads that a system has to offer, Windows (the operating system) will use them, and will distribute your software across them as you use it.
This means that if you run a lot of software simultaneously then you will see a real world benefit from having a higher CPU core count in your trading computer.
Simplistically you can imagine it like this: if you run two trading platforms and each can use two processor threads, then on a 4 core CPU Windows would allocate the processing across the available threads ensuring there are no delays waiting for one task to complete before starting another one.
That is a massively oversimplified statement as you have to take into account that while you may be only running two programs, Windows itself has a lot of work to do in the background to keep everything running so it is constantly allocating work across your CPU cores.
That being said, the long and short of it is that having more CPU cores can help with keeping a machine running smoothly when you have more programs and charts up and running.
Putting This Knowledge to Use
Hopefully by now you should have a better idea of how processors can affect your trading computers performance, let’s have a quick recap:
- Clockspeed (GHz ratings) are not a great way to compare 2 CPUs
- Try and find a comparison of the single thread speed to effectively compare processors, this gives a better indication of the ‘raw speed’ of a CPU when it comes to running the vast majority of trading / charting platforms
- Higher CPU core counts will benefit you as far as multi-tasking (running multiple programs / platforms simultaneously) but they won’t make your trading software run faster per se.
Now let’s go through a few scenarios:
Scenario 1: The fastest possible trading PC for running 1 main trading platform
Here we want the fastest single core speed we can get, if money is no object then just go for the best which currently is (May, 2019) the Intel i9 9900K, it’s got the fastest single thread speed of anything on the market right now. It also comes with 8 CPU cores and HyperThreading which makes it pretty outstanding at multi-tasking, and also really strong with multi-threaded workloads.
For less money the i7 9700K is almost as fast in terms of single thread speed, it also has 8 physical cores but it does not have HyperThreading, it’s still an amazing processor for any trading computer.
Scenario 2: The fastest possible trading PC for running a multitude of trading platforms and software packages.
Again, we want a super high single thread speed to ensure lightening fast performance and we also want a high CPU core count to assist with multi-tasking.
This again points to the i9 9900K or the i7 9700K, these two chips really are strong for high performance trading computers.
Scenario 3: A budget friendly trading computer for 1 main platform
You are going to have to do some research here, the right choice really depends on your exact budget.
Remember that single thread speed is the key driver for performance so when you find some systems in your budget, make a note of the CPU options then look at our CPU reviews (or visit google) to work out what has the best speed rating here.
Scenario 4: A budget friendly trading PC for use with multiple trading platforms and software.
The same as above, you are going to need to do your research on CPU’s, here you are looking for a high core count and then the best single thread speed you can get.
Out of the two I’d say make sure you have 4 physical cores and then I’d lean towards high single thread speed as the more important aspect from there rather than just adding more cores.
Final Thoughts & A Bit of a Rant
If you have read more than a couple of the posts on this website, first of all I thank you!, but secondly you may have picked up on the idea that I have more than the odd issue with ‘certain other’ websites that claim to offer trading computers for sale.
A lot of these sites talk utter garbage when it comes to trading.
Two different sites at the moment are marketing their top end trading computers which are using AMD Ryzen Threadripper processors. Looking at the marketing and sales pages you’d think that these were the ultimate trading performance PC’s on the market.
Both make big claims about their machines having 8 cores and 16 threads but the reality is that the most important metric, the single thread speed of their CPU’s is slower than the lowest cost CPU we offer over at Multiple Monitors in any of our computers.
8 CPU cores and 16 threads are only useful if you have software that will use them.
So you can spend around £1,300 – £1,500 on a computer from them if you want, but one of ours priced less than £900 has a CPU which would run almost any individual trading platform faster.
For the same money one of our Trader Computers would blow them away in any type of trading workload whether you were running one platform or multiple ones.
At the other end of the scale you have one of these companies offering a ‘trading PC’ (and I use that term very loosely) for around £500, the processor in it is an old AMD chip which has one of the lowest single thread ratings I’ve seen in the past 5 – 6 years.
How anyone could put together a PC using one of those and claim it is a ‘trading PC’ is beyond me to be honest.
It would almost be funny but it does mislead people, I know because I spend a lot of time talking to potential customers about this kind of thing.
I’m genuinely not trying to put down any of our competitors, I’m not naming names, nor am I trying to turn this into a sales pitch for my company Multiple Monitors.
What I’m trying to get across is that if you are going to spend any amount of money (big or small) on a new trading computer, then do some research, don’t just take what you see online at face value (and yes I include myself in that!).
The information you need to compare processor speeds and performance levels is available on many independent review websites.
Use them, use our processor and graphics card reviews, and then make the best decision based on your needs, if you buy one of our machines great, if not, that’s also fine, just don’t fall into the trap of buying something that may look good value on the surface but actually isn’t a good fit for your trading requirements.
We had an enquiry recently where someone had seen a ‘trading computer’ on a competitors website which was priced pretty low based on the components inside the machine. The issue was the CPU had a lot of cores but was not particularly fast, it was not a great choice for any kind of trading workload.
We pointed this out, explained why it wasn’t the best fit, and then offered a lower priced system that would outperform the one they were looking at for any trading software.
Unfortunately we didn’t hear back from them, it’s likely that they spent somewhere in the region of £1,200 on a PC that will run their workload, but will do so slower than something we could have provided for £200 – £300 less. Or, if they had spent the same money on a different system setup they could be getting much better performance than they currently are.
Finally, if your budget is high end then don’t make the mistake of thinking that the most expensive computer or processor is going to be the fastest.
Some of the higher priced Intel chips from their ‘Enthusiast’ line can often lead people into making the wrong choices. Take an i9 9900X chip, it’s a 10 core processor which costs 4 times the price of an i5 8600K (roughly £600 more!), yet the i5 has the higher single thread count, so it would be a faster option in most cases for most traders.
For roughly half the price of the i9 9900X you could get the i9 9900K which as mentioned above is the fastest trading processor available on the market right now.
Hopefully you can see that doing some research, or talking with someone who is experienced in these things can both save you money and get you a faster trading setup.
Like always, fire any questions or comments at me below, I genuinely look forward to getting them!