3DNow!

Don't forget the '!', 3DNow! is AMD's 3D enhancing instruction set. What exactly does 3DNow! do? Basically, 3DNow is FPU MMX. 3DNow provides SIMD (Single Instruction, Multiple Data) replacements for common FPU instructions, such as adding, multiplying, subtracting, loading, etc. 3DNow also provides various other functions used heavily in 3D applications, such as a 3 cycle division (albeit only 14bits accurate), a very fast inverse square root function, and more.

What exactly is SIMD, and what is it helpful for? SIMD, stands for Single Instruction, Multiple Data as mentioned above. This means that a SIMD instruction can operate on multiple data items at the same time. For example, a SIMD addition can take 4 pairs of values (32bit, (single precision) floating point values, in the case of 3DNow!) and add each of the pairs up AT THE SAME TIME. What does this have to do with 3D?, you may ask. Well, it so happens that the matrix multiplication used in 3D games (to perform transformations) involve multiplying a 4x4 transformation matrix (which performs the transformation) by a 4x1 vertex matrix, vector, for the math people out there ;).

The following example will show how powerful SIMD is.

K7's FPU

When it comes to FPU power, it looks like Intel won't be alone in the x86 market. The K7 features 3 floating point units (Load, Add, Multiply) each fully pipelined and superscalar. The latencies on the Add and Multiply are both 4 cycles, higher add latency than the PII (PII has 3 cycle), but lower multiply (PII has 5 cycle). The pipelined FPU should help give AMD a high throughput rate in intense FPU applications, especially when combined with the already advanced K7 core. (Out-of-order execution especially helps maintain high throughput (it tries to keep the pipelines full by executing instructions "out of order") Will the K7's FPU be faster than Intel's? It's hard to tell right now, but find out what I think later in the article.

Index Cache

Log in

Don't have an account? Sign up now