facebook rss twitter

AMD retires 3DNow! instruction set

by Pete Mason on 23 August 2010, 12:14

Tags: AMD (NYSE:AMD)

Quick Link: HEXUS.net/qazop

Add to My Vault: x

3DNow! was introduced in 1998 as a part of AMD's K6-2 family of processors to help boost the performance of certain intensive applications.  However, the company has announced that it will be retiring the instruction set and excluding it from certain upcoming processors.

The instructions were designed to handle Single Instruction Multiple Data (SIMD) operations and could boost performance of properly-coded programs by several times.  Specifically, 3DNow! could help with graphics-intensive applications and complex audio-processing tasks.

It also was a major part of the brand image for AMD's K6-II and K6-III range of processors in a similar way to Intel's use of the MMX logo on Pentium CPUs.

However, as a result of limited continuing use by developers AMD no longer sees any need to support the instruction set.  In the past decade, several other SIMD instructions have been developed that offer a greater number of more advanced features, including the numerous versions of SSE.

There are two commands that will survive the retirement, though, and those are PREFETCH and PREFETCHW.  AMD is integrating these commands into a class of their own and will continue to include them in future CPUs.

Of course, it's unlikely that this will affect many developers, as the instructions were relatively unpopular and offered few features that weren't available in other, more modern instruction sets.  Nonetheless, AMD is warning that programmers will need to ensure compatibility with processors that don't support the instructions, especially in virtualised environments.



HEXUS Forums :: 6 Comments

Login with Forum Account

Don't have an account? Register today!
*sniffle* bye bye 3Dnotnow. :(
I've never looked at the 3DNow! instruction set, but I'd imagine it's very similar to SSE/MMX, so surely it wouldn't be that hard to patch compilers/assemblers to just translate 3DNow instructions into equivalent SSE instructions (or series of them for cases where there's no 1-1 mapping).
There's a set of guidelines for porting to SSE here (pdf) see appendix A:
http://support.amd.com/us/Processor_TechDocs/26569.pdf
kalniel
There's a set of guidelines for porting to SSE here (pdf) see appendix A:
http://support.amd.com/us/Processor_TechDocs/26569.pdf
Most of those could be dealt with quite easily at assembler level with instruction substitution, but a few would need extra instructions to deal with different rounding/truncating/numeric representation if they are to guarantee 3DNow-like behavour even in corner cases.
Or they just run the Intel code path.

As Intel have never used 3DNow! I can't see there being any software that is heavily reliant on 3DNow! for performance - why cut off 80% of the market?