Friday, 12 April 2013

Understanding Processors & The Mhz/Ghz Myth

There are lots of comments and people on the internet who, and I don't mean to be rude, think they understand processors when they, well, don't. People often think that more cores = more power when in reality that is far from the case. A good while ago I wrote a pretty long processor explanation. It is far from perfect in terms of actual writing quality, and I have barely edited it in this blog, however all the facts are correct and still valid. It might not be grammatically perfect but it saves me writing an entirely new article on processors and does a better job of explaining it than I could do now. 

I have trimmed it up a bit, however some things may not make perfect sense as the context that they were used in, in the original article, made more sense. So be gentle with your judgment on it.

 Oh and by the way, I apologise for the borderline hypnotic art below.


Original article with minimal editing:

A common 'processor' misconception is that more cores = more power. However people rarely take into consideration all of the other factors that determine how good a processor really is.

For the sake of example I will be using the recently released Google Nexus 7 and Kindle Fire HD 7inch later on in the article.

I'm going to start this off bluntly: more cores does not change the fact that 1.2Ghz is 1.2Ghz. Extra cores provide more available multitasking space, so if you have a dual core, your computer can do more and multiple things without slowing up, compared to a single core. This means that if you have 1 core running at 1.2Ghz and you are running 5 tasks, your computer will slow up because it only has enough time and space to run 1 task at a time. The 1.2Ghz itself will slow up. 2 cores will allow your computer to use the same 1.2Ghz but simply space out and be able to run 2 of the 5 tasks easily. In other words the more cores = the more your computer optimises the use of the 1.2 or whatever Ghz it runs at.


Now different brands have different manufacturing standards and it is important to remember that the amount of cores will only work depending on how the processor optimises the cores as much as it makes the cores themselves optimise the use of the Ghz. In a fair amount of example an intel i3 will come out faster than an AMD Quad Core, despite having 2 cores less. The technology used in each device (like the motherboard chip) that optimises the use of the cores and the cores use of the Ghz as well as boosting performance, is far better in an intel processor than the cheaper, more affordable (but still capable) AMD processor. 

One thing that contributes to a processor being better than another is clock speed vs cores. 2.0Ghz quad core may sound faster than a 2.5 or even a 2.3Ghz dual core processor but higher clock speed = more thing it can do per second = more that each core can make it do per second. A quad core does not change the fact that 2.0Ghz can still only do 2 billion basic operations a second. It can only optimise this amount. Whereas 2.3Ghz dual core has an extra 300Mhz to work with, meaning it can technically make it do more than the quad core can, because no matter how many more cores you have, the cores can still only use the Ghz at their own disposal. 1.0Ghz Quad core would suck, compared to a 1.2Ghz dual core because 1.0Ghz = 1 Billions basic operations a second and all the Quad Core does is optimise the use of those 1 billion basic operations. And to be honest 1.0Ghz isn't enough power to use up an entire 4 cores. 1.2Ghz dual core offers more basic operations per second for the dual core to work with and optimises this gaining more speed (not meaning to be patronising, but unless you understand that vital point I just made, you will not understand how Cores really work).

Using, as an example, the Kindle Fire HD 7inch processor vs Nexus 7 processor, to put it in a basic format: the Kindle Fire's processor is better than the Nexus 7's despite having less cores. This is because it optimises the use of its 1.2Ghz with the 2 cores better than the Tegra 3 in the Nexus 7 does with its 4 cores. It's commonly known the Tegra isn't the most efficient processor, although it has a lot of graphical and gaming capabilities.

Another point is clock speed for clock for speed. Yep. I just said that. Imagine you have clock speed for clock speed. The processor runs at 1.2Ghz but the 1.2Ghz has it's OWN clock speed. So although 1.2Ghz can perform 1.2 billion operations a second, the ability and "speed' of these operations is partly decided by the clock speed of the clock speed itself.
1.2Ghz can still only hold out and speed around as much as 1.2Ghz can. If you are running 20 tasks and have a quad core under the bonnet it will be just as slow/fast (in a general sense - forgetting boosts and motherboard chip quality) as a dual core of the same Ghz because the amount of cores simply spaces out the tasks, so none of the cores get clogged up with tasks thus slowing down - HOWEVER, with something as little as 1.2Ghz the effects will be limited and no better (really) than the dual core 1.2Ghz because the amount of Ghz is too small to be optimised for those cores meaning it will only really use half, maybe a little more, of the quad core space to multitask.
The internal workings of the motherboard, clock speed for the clock speed, how the processor optimises each core, how each core optimises each Ghz to better perform tasks, the amount of Ghz vs how much the cores need and can use to actually gain an advantage, the cache, the boost - it ALL effects the performance.

I guess I also forgot to mention threads and RAM. 

Threads also affect the way the CPU runs. The thread is pretty much the chain or line of commands the CPU receives. A one core CPU can typically RUN 1 thread at a time, however it can spawn or for better term 'put on hold' tons of threads. The thread may run for as long or short as a few milliseconds before going onto the next one. The amount it spawns is pretty unlimited (to a certain extent). The spawned or waiting threads are just on hold, waiting to be executed.
As standard 1 core can run 1 thread (unless you have a Hyper Threading CPU in which case you can run up to 2 threads per core). A quad core can run 4 at the same time just like a dual core can run 2 at a time or an 8 core can run 8 simultaneously. A thread is pretty much the road the information has to travel up to reach it's destination or "execution".

RAM is a key part of computer processing too. Each program you run takes up RAM. RAM itself is made up of memory - like MB's and GB's. Each program will take up more MB and GB room of the RAM. The more you run and try to do, the more your RAM will get clogged up and the slower your CPU will. Big tasks like playing a video game will take up a ton of RAM. The CPU and RAM run together and link. A faster, larger RAM = the CPU having to wait less time for data.

If you play a lot of games then the type of Graphics Processing Unit (GPU) is also key for a good performance. Everything in the device links ups, and if 1 thing isn't as up to scratch as the other things you may be looking at a poor running device.

Internal architecture is absolutely KEY. It's one of the main points that separates an intel from an AMD from a Tegra 3 and greatly affects performance. (I'm not gonna explain about internal architecture as it isn't really necessary to knowing about processors. If you really want to know Google it).

Overclocking is also important to note. It is where the CPU has the ability to run faster than what it normally does. Overclocking is often natural, with it built into the device, however sometimes CPUs (often ones with less sturdy internal architecture) can unnaturally overclock and pretty much die. Overclocking is a simple as, for instance, a 2.0Ghz processor overclocking and running at 2.4Ghz. Overclocking, whether natural or unnatural, is never good for the processor and will shorten lifespan.

It's so easy to say that a 2.0Ghz dual core AMD can run this really fast etc. etc. but when you take into account RAM, cache and GPU you might find only basic tasks are manageable. In the end, if other key things aren't up to scratch then a 2.0Ghz dual core is useless. It's always important to look at the bigger picture when looking into new computers or other devices.

2 comments:

  1. what is ddr? is a 1.2ghz dual core with 512ddr good enough for a 7inch tablet? can you help analyse the MT701 7inch tablet? thanks.

    ReplyDelete
    Replies
    1. Hi, could you please comment your e-mail address as there are not enough characters available in the comment box for me to reply to you properly! Thank you.

      Michael.

      Delete

Your Thought Box. Leave Your Thoughts Here.