Will AMD’s Ryzen finally bring SHA extensions to Intel’s CPUs?

If you have any skin invested in the high-performance computing game, you’ve almost certainly heard of the likes of MMX and SSE, the original “extensions” to the x86 assembly instruction set that provided task-specific performance-optimized instructions that let developers take advantage of specific hardware extensions to quickly perform tasks that previously required extra steps in software to compute. If you haven’t, here’s a quick briefer.

The “basic” instructions supported by PCs are known as the “x86 assembly language” and is the lowest level of code available for writing software that runs on a “regular PC,” originally developed by Intel and adopted by other players in the CPU game (including AMD and the now-defunct Via CPUs). All PCs from the original Intel 8086 way back in 1978 to modern, multi-core behemoths support this language, and code written in or compiled for x86 can (in theory) run on any machine from 1978 onwards.

Continue reading

The ARM, the PPC, the x86, and the iPad…

Hot on the heels of the iPad release comes news that Apple has just (very likely) purchased another processor design firm (via EDN).  Intrinsity, the chip design company in question, is a designer of RISC-based CPUs and is rumored to have had something to do with the design of Apple’s new A4 processor. The A4 is Apple’s key ingredient for a smooth user experience in the much-hyped iPad.

Those keeping track of Apple’s purchases will remember that, almost exactly 2 years ago to the day, Apple bought California-based CPU designer PA Semiconductors. However, PA Semi specializes in PowerPC-based designs – a platform that Apple abandoned almost 5 years ago now. But Apple’s most recent acquisition is directly applicable to its current needs in the hardware market, and in particular, its forays into the ARM market. In the official iPad video, Apple engineers and executives discuss their need for a custom CPU in order to let them dictate where the ooomph and power will go, and to what purposes the transistors will be biased.

With all these buyouts and different chipsets in question, it’s easy to get confused. So what is the difference between the ARM, the PPC, and the x86, and where does it matter?

Continue reading

Overclocking the Conroe

So you Want to Overclock that Conroe?

Intel [[INTC]] finally has its new line of Conroe processors out, and no matter who or where you ask, they’ve done quite a good job with them. On the other side of the court AMD is readying its own AM2 line for release, with the FX-64 promising quite a punch.. While we haven’t been lucky enough to receive prototypes of either of these two product lines, our product analysts have been hard at work studying the reviews conducted by other big names in the hardware review industry. As such, this isn’t a review, rather it’s more of an analysis of these next generation CPUs, the technology behind them, and what it means for overclockers and bleeding-edge enthusiasts today.

Continue reading

Hyper-Threading: The Most Useful CPU Innovation

HT stands for Hyper-Threading, and does not stand for hyper transport (something entirely different by AMD)

Hyper-Threading (HT) is a technology developed by Intel that makes a single processor show up as two different processors to the Operating System. In reality there is only one core, but the unused processor cycles represent a ‘logical processor.’ In an HT CPU, a single process (not HT optimized) can at most use up 99% of the resources, thus always leaving a 1% gap for all other applications. Its not as small as it sounds, since, the OS sees TWO CPUs, it thinks that you have a 100% used CPU and a 0% used CPU, no matter what the number really is (Windows will show 50%). In this way, other applications that only need a bit of CPU are not too adversely affected.

If you are running an HT optimized thread, like Adobe Photoshop CS2, there are certain commands that need to be done as soon as possible on the same priority.

For example, I tell you to find out if 1+1 is equal to 2+1. You need to evaluate 1+1 and 2+1, one after the other normally, then execute a compare. A HT optimized app will tell one ‘CPU’ to do 1+1, and the other to do ‘2+1’, then compare.

The scenario above is useless, because each of those commands only takes picoseconds to evaluate. But if they were more and more complex expressions, then functions, then algorithms, you can see the benefit.

Most apps are not HT optimized. Therefore, you can think of HT optimized apps as working in the same way as two non-HT optimized CPU-intensive apps running simultaneously.