Friday, April 24, 2009

Basics: CPU Tech

Before I continue, let me explain gigahertz, megabytes, etc:

Hertz is a measurement of speed, technically a unit of frequency that measures cycles per second.
Bytes is a measurement of the storage of digital information.

Mega is the prefix for a million hertz or bytes, aka Megahertz and Megabytes
Giga is the prefix for a thousand Megahertz or Megabytes, aka Gigahertz or Gigabytes
Tera is the prefix for a thousand Gigahertz or Mega . . . You get the point I hope.

As mentioned before the CPU is the powerhouse behind your computer. How fast you're programs operate depend a lot on the capability of this component. While there are a vast amount of processors, and pages of CPU architecture I could write about, I am only going to include the most pertinent information a System Builder should know and understand before purchase (as a matter of fact this will be applied to all of my information posted on computer components).

Today's Central Processing Units have several major factors in their architecture that is important to understand:
1. Core clock speed
2. Socket type
3. Memory cache
4. Manufacturing Process
5. Front Side Bus or Hyper Transport
6. Number of Cores

Core Clock Speed
The Core Clock Speed is the speed of the processors core. Average clock speeds in modern CPUs range from 2ghz to 3ghz at stock speeds. The speed, however, is actually not the "true" speed. Almost all processors have a 200mhz core clock, but a multiplier that multiplies (obviously) the 200mhz. For example, a 3ghz processor is actually 200mhz with a multiplier of 15x.

The Core Clock Speed is what everybody used to compare different CPUs by. Remember the old days of "3.2ghz Pentium 4s"? You would compare a "3.2ghz P4" with a "3.6ghz P4" and judge that the higher clock speed was more powerful, which it was. Intel at the time was a household name primarily because of all the commercials, and because it was supported by Dell, who at a time only offered Intel Desktop solutions. System Builders, however, knew of Intel's rival AMD, who offered very competitive CPUs. These CPUs however only had clock speeds of around 2ghz but offered performance that equaled or outperformed the 3ghz Pentium 4s. How can this be? Here is the simple answer: chip architecture, which is where the rest of the information comes into play.

Socket Type
Each CPU has a "socket type," which is crucial to know so you can select the proper motherboard. You must have a matching socket type on the motherboard so the CPU will fit. Pretty self explanatory.

Memory Cache
The more the better basically. Memory cache can get very technical, but essentially all you need to know is the more the better. Cache is essentially the CPUs memory, which is uses for a variety of processing tasks. The more cache a CPU has, the more headroom it will have thus better efficiency.

Manufacturing Process
The smaller the better. Yup, you heard me: less is better. Tiny equals good. AMD's current manufacturing process for their newest CPUs are 45nm (nanometer, or .001 of a meter). Several years ago it was 90nm. The smaller their process, the more energy efficient and less thermal output (heat). The less energy the CPU uses the more money you save on your electric bill. The less heat the CPU produces allows for more overclocking potential.

Front Side Bus or Hyper Transport
Intel uses a Front Side Bus and AMD calls it Hyper Transport. This is the connection speed between the CPU and the motherboard via the Northbridge (which you'll learn about when we discuss mobos). The more FSB or HT you have available, the less bottlenecking (again, I'll explain bottlenecking later if you still don't understand).

Number of Cores
Most modern CPUs, particularly high end and gaming rigs, have multiple cores. At the time of this article the most you can get is 4 cores on one die (CPU). Its almost like having multiple CPUs in your system. AMD delivered the first dual core CPU, which delivered huge performance increases as the technology in a single core at that point reached its maximum ability. Thus they're cramming multiple cores into the CPU. This allows the Operating System to put different programs into different cores to operate more efficiently in theory. For example, you're burning a DVD while listening to music. On a single core CPU, that one core has to perform both tasks. If the two programs are really pushing a lot of information, the core can bottleneck (this will be explained later) and performance will drop. On a dual-core, that is two cores on the CPU, the OS (Operating System) can have one core run one program and the other program on the second core, allowing much more efficiency in "multi-tasking" (running multiple programs at one time).

Please note: Most games DO NOT operate on multiple cores. While a dual core will be more efficient than a single core because the game can run on one core while the background programs and the OS can operate on the second core, having 3 or 4 cores won't help performance. However (this may get confusing so please stick with me), if the individual cores are faster on a 4 core CPU than a 2 core CPU, then the 4 core CPU will perform better in that case because the individual cores are more powerful. Thus, what is more important than multiple cores for gaming is whether or not the individual cores are faster, have access to a larger cache, or if the CPU has a better architecture altogether (the newest Quad Cores will perform better in gaming that the first ever Dual Cores because of advances in technology). I hope this didn't get too confusing, let me know if you aren't following.

It is important to note that some programs, particularly video games are more GPU dependent, but nevertheless require a good processor to augment the GPU.

Learn this key lesson: everything in your build must be balanced out! This is crucial for video gaming, because you must have a balance between your CPU and GPU (among other components as well, but these two are the most influential). If you have a super powerful CPU but low end graphics card, then the video game performance will bottleneck at the graphics card and the extra CPU power will do absolutely nothing for you. The same holds true for a super powerful GPU but slow CPU.

What do I mean by bottlenecking? Everything on your components will have a certain about of "bandwidth," and when you have too little bandwidth the information will take longer to process. Let me use this metaphor: think of bandwidth as an 8 lane expressway and the information going through it (in this case processor information) are the vehicles traveling down the road. If you have 200,000 cars (or megabytes of computer information) traveling through your highway (aka the CPU bandwidth), the 200,000 cars will reach their destination faster if they have more lanes. If you have less bandwidth, such as a 2 lane expressway rather than the 8 lane expressway, it will take much more time for the cars, or information, to reach their destination. So, if you have an "8 lane" CPU, but only a "2 lane" GPU, then the cars will bottleneck and traffic will slow down to a standstill and those 8 lanes in the CPU were for absolutely nothing.

The previous example holds true for every component in your system, but most people make the biggest mistake of getting a much more powerful CPU and not invest enough for a good GPU. Sure, you may have the most expensive Intel Extreme Processor, but that low end, bargain bin graphics card will tank any game performance you'll hope to achieve.

No comments:

Post a Comment