CPUs Explained - Part I

     Hello readers and computer enthusiasts. This post is supposed to explain everything you need to know about CPUs based on both x86 and ARM instruction sets. If you don't know what that meant, this post is for you. Keep reading to find out more...


What is a CPU?

    If you ask a random person, they might tell you that CPUs are the Central Processing Units of each computer where all calculations of the computer take place. Though that is not a wrong statement, it is a severe understatement of what they are actually capable of.

A Central Processing Unit (CPU) is an electronic circuitry composed of silicon conductors and transistors that perform logical, arithmetic and Input/Output (I/O) operations through computer programs that are designed to take advantage of it.

A CPU is the most important part of the computer. A conventional circuit made out of wires can take up the space of an entire building and output as much heat as an Iron Works. CPUs are incredibly efficient circuits that reduce all that circuitry into the size of our palm. Now let us look at some architechtures of CPUs and learn about the different CPU architechtures, starting with x86.

CPU Architechtures:

The x86 Architechture:

The x86 instruction set was invented by Intel in the late 1970's with the first x86 instruction set CPUs coming out in 1978, namely the Intel 8086 and 8088. The instruction set is proprietary and only Intel has the patents for it, with AMD licensing it from them. They 16-bit processors. The 'bit' here refers to how much work these could theoretically do and how much data they could work with at once. at 16 bits, they could only handle 256MB of data, hence the limit on how much RAM they can take. The need for more computing grew in the 80's and 90's and soon the entire lineup was filled with 32-bit processors from both Intel and AMD, who licensed the x86 instruction set from Intel.

But soon, 32-bit processors reached their limits as to what they could do, as they had a 4GB RAM limit. Before Intel could do it, AMD invented the 64-bit version of the x86 instruction set and now cross-licenses it to Intel. The CPU market for x86 is a duopoly with only two players, Intel and AMD, despite it being very powerful. Here are examples of what they have in offer:

Intel:

Entry level, not very powerful, power efficient devices: Pentium series
Desktop level, lightly powerful devices: Core series
Workstation level, very powerful devices: Intel extreme edition
Server level, realiable, power efficient and powerful machines that run the internet: Xeon Series

Intel


AMD:

Entry level, not very powerful, power efficient devices: Athlon series
Desktop level, lightly powerful devices: Ryzen series
Workstation level, very powerful devices: Threadripper Series
Server level, realiable, power efficient and powerful machines that run the internet: EPYC Series

AMD

We will learn more about these in a future post. You can click here to view it if that post is out.

To give a real world comparison of what x86 can do, here's an example:

Let's say your friend is moving to a new house and has called you for help. You would expect him/her to have neatly arranged his stuff to be loaded for transport. But unfortunately, he has all his dishes very dirty and to be washed, packed and loaded at once. This is the scale of work x86 does to accomplish a task and hence, comsumes a lot of energy and output tons of heat. But what ARM, another CPU architechture does is in the same example, your friend has to have everything arranged neatly for you to transport. The advantages of this approach are that ARM CPUs consume less power and output less heat. But their performance was unapproachable to the levels of x86. Let's see how that has changed.

The ARM Architechture:

The ARM architechture is a fairly recent development compared to x86, developed in the 1990's to it's current form. The ARM(Advanced RISC Machines Ltd.) architechture is not used by the company, but licensed to several others. Hence why there are no ARM-branded CPUs. ARM licenses CPU designs to Qualcomm with their Snapdragon mobile processors, Samsung with their Exynos mobile processors, Apple with M and A series mobile processors etc. With 180 billion chips produced, ARM is the most popular CPU architechture among electronic devices. 

ARM

In fact, ARM is so powerful that people think it might replace x86 and this is no joke. x86 is showing it's age in both how it performs and how much power it takes. ARM designed CPUs, being the most popular, are eating into x86 market share quite significantly, even finding their place in supercomputers by becoming more performant.

But, ARM has one leap to make. ARM processors require a lot of software arrangements to work properly and to take full advantage of it. That is why servers still use x86, despite ARM's advantages over it. Server software is really not optimised for use with ARM. Now let us look at some of the terms to look out for when buying CPUs.


Cores, threads and clock speeds:

All these terms will seem like greek and latin if the only time you use a computer is with your phone on social media. Let's clear any confusion and actually understand these terms:

Cores:

A core is essentially a processing unit inside the CPU and is the actual part of the CPU that does processing. Each core in a CPU has a cache that is a very small amount of really fast memory that holds data that the CPU is currently processing. CPU cache can usually move 100s of Gigabytes of data per second, depending on the CPU. A typical desktop CPU contains anywhere from 2 to 12 CPU cores, depending on what CPU you buy. More cores means that the CPU can process more information at once, in parallel. Such a CPU will require large amounts of memory or RAM to hold all the data it requires. More on that in another post.

A thread is a part of a CPU core, which is also a 'CPU core' in terms of processing, but many elements of it are shared between two or more threads.

AMD Threadripper CPU layout
Clock Speeds:


A clock speed of a CPU, usually measured in MHz (1,000,000 Hertz) or GHz (1,000,000,000 Hertz) can be comparable to the rpm of a car engine. It shows how many clocks it has in 1 second. The higher the clock speed, the more a core can do in that 1 second. What is also important is the generation of that CPU, which will determine what the CPU can do in 1 clock, usually called IPC or Instructions per clock. Unfortunately, there is no direct way to measure it. Just remember the newer the CPU, the higher IPC it will have.

Thank you for reading this post, I will come back after a while for Part - II, which will include CPU offerings from different companies, CPU transistors and a CPU buying and overclocking guide.
Until then, stay tuned. Once again, Thanks for Reading.

Comments