Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Ever since the original Pentium, both AMD and Intel have been releasing competing multimedia extensions to their architectures, mmx, 3DNOW!, SSE, SSE2, SSE3, SSSE3, SSE4, AVX, XOP... So many, that I have barely kept track. I remember back in the days of the original pentium, there were games and programs that required a pentium MMX to run, but I haven't encountered anything similar since.

The matrix of which CPU supports which extension is extensive and complicated (doubly so, because some extensions like sse4 were only half implemented in some architectures...). This is also not to mention some other secondary instructions added on (and then subsequently removed) by either company over the years.

How widely used are these extensions anyway? It seems that for compiled software that is meant to be widely distributed, since support is so non-uniform, going beyond the standard op set (and maybe mmx) would be impractical. I know that you can specify the exact cpu when compiling software, but do optimizing compilers like gcc make extensive use of these extensions?

share|improve this question

closed as not constructive by Ƭᴇcʜιᴇ007, random Aug 11 '11 at 13:45

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

+1 Nice question. I think GPUs are being used more and more for what these instructions were meant for. I certainly recall on a Gentoo box I had, that I couldn't properly play back video with mplayer until I recompiled with mmx support enabled - so it mattered back then, but indeed, not sure about today. – Doc Aug 10 '11 at 20:26
@Doc Thanks. All the wikipedia articles on the extensions describe the new op-codes and the implementation details beautifully, but not one mention of who actually uses this stuff. MMX is one of those that has been around long enough that I'm sure you can assume everyone has it.. – crasic Aug 10 '11 at 20:30