Best Writing in College
The following is the best writing of my college career.
What CPU do you need?
Shopping for a computer is not as easy as one might think. You have to think about battery life, operating system, weight, screen size, hard drive space, and more! Once these decisions are made, you're often forced to deal with decisions such as:
Fig 1: Apple Configuration for 16" MacBook Pro
Fig 2: Lenovo Configuration for X1 Carbon
GHz, i8, quad-core, Turbo Boost, Cache, what is all this stuff?
We're going to break these options down into generations and speeds, cores and caches, and turboboosts.
Overview: What CPU do you need?
In a nutshell, here are some guidelines that apply to most PC devices.
|Usage Style||Recommended Processor Type (macOS)||Recommended Processor Type (Windows/Linux)|
|High||at least 4 cores at 3.0GHz or higher||at least 4 cores at 2.0GHz or higher|
|Medium||at least 2 cores at 3.5GHz or higher||at least 2 cores at 1.8GHz or higher|
|Low||at least 3.0GHz or higher||at least 1.6GHz or higher|
High refers to video/music/photo editors, software developers, scientists working with 3D models.
Medium refers to CAD, users who prefer to have 100+ browser tabs open, occasional photo editing.
Low refers to web browsing, document writing, and researching.
Generations and Speeds
Every year the makers of computer processors release new chips which they refer to as generations. The most popular chipmaker, Intel has chosen to separate their chip offerings into "i" - categories. These categories are a way of grouping the performance of chips (Higher is better). For example in the above chart, i7, i5, and i3 categories would match well to high, medium, and low users respectively.
Intel CPU taken by Slejven Djurakovic
The Gigahertz (GHz) is a unit of measurement which is used to estimate the amount of computation a computer can perform at a time (also known as it's clock speed). Computers with high clock speeds will have better performance but also use more battery power. If you use websites that are resource intensive, higher clock speed processors will be able to handle them better. Websites with a lot of advertisements have been known to cause excessive CPU usage. Photo editing software like Photoshop will also see improved performance with higher clock speeds.
Cores and Caches
Very intensive workloads, things like 4K photo editing, video editing, and software development all benefit from having multiple cores. Take for example changing the saturation of a photo. The simplest way to do this would be to go through every pixel in the photo applying the adjustment of saturation and then re-painting it to the screen. Take for example a computer with four cores, the cores can coordinate to split the photo into 4 quadrants and work on applying the filter at the same time. This would make the filter take 1/4 of the time! The actual algorithm for applying filters is much more complicated, but the performance boosts are the same when splitting across multiple cores. Unfortunately, a lot of software does not take advantage of having more than one core and there is no easy way to check.
A processor's cache is incredibly important for computers to feel fast. The cache is basically a shortcut for data. Instead of having to retrieve information from a hard drive, it can pull from the cache (if the data is in there). It takes 0.5 nanoseconds to retrieve data stored in the cache versus from a hard drive it takes 20 million nanoseconds (Fig 3).
Fig 3: Latencies of various computer systems: source
That's 10 million times faster! This is roughly the difference in time between a single heartbeat and the time it takes for a baby to come to term. Clearly more cache is better, but caches are very expensive to produce. This is why they're usually smaller than even a single Word document. Unless you're doing incredibly intense processing you can ignore the differences between cache sizes across processors.
TurboBoost is a feature specific to Intel processors which will increase the clock speed of a processor by 1.5x-2x for a very short amount of time. This is helpful in cases where a website or app may be very resource intensive to load, but once loaded requires less power. Often browsers themselves act in this manner. As helpful as TurboBoosting is, it should not factor into purchasing decisions.
Choosing the CPU right for your use case can seem daunting at first. Once you break down the descriptions into the generations, series, GHz speeds, caches, and turbo boosting capabilities it becomes much easier to see the key aspects to focus on. When in doubt, just focus on the clock speed (in GHz) and the number of cores.