3

Although MMX techology, introduced in 1997, is long superseded by SSE series of extensions, it's still included in every modern x86 CPU for backwards compatibility.

What are some examples of programs which did use MMX when available, and did gain substantial acceleration from it? Were there maybe some games which were MMX-capable?

7
  • Voted as too broad; from experience though: in the review I read of the original Unreal, the author commented that it did such a good job with his MMX CPU that he hadn't initially realised that it hadn't recognised his 3DFX.
    – Tommy
    Jul 30, 2017 at 13:44
  • This is a list-type question. We've had some good ones, but also some bad ones. I'll pre-emptively protect this question so we don't get as many duplicate answers in the event that the question is deemed narrow enough.
    – wizzwizz4
    Jul 30, 2017 at 15:03
  • 1
    Answerers: Community Wiki would be a good idea.
    – wizzwizz4
    Jul 30, 2017 at 15:03
  • 4
    MMX-specific optimizations were added to Direct3D, so yes, I imagine there are a number of games that were optimized for the MMX. There also video decoder libraries that use MMX optimizations—a great number of them, in fact, too many to list here. While MMX never really took the world by storm, it was used by some software. Its limited acceptance was mostly due to the fact that it was a pain in the butt to use from a programmer's perspective and did not interoperate with the x87 FPU. It was fairly quickly superseded by SSE, which was way easier to use and caught on much more quickly.
    – Cody Gray
    Jul 30, 2017 at 15:35
  • 1
    mp3 encoders / decoders often had MMX support, even open-source ones. So did many early video codecs. x264 (and ffmpeg's h.264 decoder) still have quite a lot of MMX code that still actually runs on modern CPUs, and hasn't been replaced with SSE/AVX, for functions that work with 4x4 or 8x8 blocks of pixels. (And thus would only be using half of a 16-byte XMM register). Some very recent CPUs (e.g. Skylake) have less throughput for the MMX versions of some instructions, so this should eventually change. Dec 15, 2017 at 3:33

0

Browse other questions tagged .