MMXMMXEXT - Intel's original multimedia extensions added eight new 64-bit registers that could be used to help accelerate certain multimedia functions through a SIMD (single instruction, multiple data) instruction set, as long as they involved integers.
MTRR - Memory Type Range Registers provide registers for operating systems to control how cached memory ranges by the CPU are used. This is a core part of how video card memory on your GPU and memory on any PCI devices is managed. MTRRs are superseded by PAT (Page Attribute Tables) on 64-bit CPUs.
NX - the No Execute feature allows the CPU to support an operating system allocating a range of memory as non-executable by refusing to run code within a given memory range. It was implemented to help prevent malicious software executing its own code by taking advantage of buffer overflows, whereby programs injected with new code can be exploited to run code outside the original program.
PAE - Physical Address Extensions provides the ability to map memory to a 36-bit address space and thereby see up to 64GB of memory on a 32-bit architecture. For more on this see last month's X-Ray on 64-bit CPUs.
PAT - Page Attribute Tables are an improved method for managing cached memory ranges over MTRR. Where MTRRs only provide for a fixed number of physical address ranges, Page Attribute Tables allow for managing cached ranges on a per-page basis. Which, in short, is more efficient for the operating system.
SSESSE2 - Intel's Streaming SIMD Extensions were the successor to MMX and added 70 new SIMD instructions including floating point operations using 128-bit registers. The humble Pentium III first included SSE, while the Pentium 4 sported SSE2 as well, which added a further 144 SIMD instructions. SSE is what MMX should have been, and was a response to AMD's 3DNOW! extensions that, unlike MMX, worked with floating point operations as well. AMD's processors would also come to support SSE and SSE2, starting with the Athlon 64.
SSE3SSSE3 - Streaming SIMD Extensions 3 added an extra 13 instructions while SSSE3 (Supplemental Streaming SIMD Extensions) added a further 16 new instructions, all with the goal of accelerating multimedia and rendering tasks - as long as the software makes use of them. SSE3 can be found on Intel CPUs starting with the Core 2 Duo processors, while AMD has yet to implement the instructions.
SSE4/NNISSE4_1/SSE4_2 - Streaming SIMD Extensions 4 can be found on CPUs starting with the Core i7 aka Nehalem (where NNI - Nehalem New Instructions comes from). SSE4 adds a further 54 new SIMD instructions for the purposes of accelerating all that is good and media based, but also adds non-multimedia functions. A subset of SSE4 called SSE4.1 contains 47 of the 54 new instructions, and can be found on later 45nm Penryn Core 2 Duo CPUs, while the remaining 7 instructions can be found on Core i7 CPUS as SSE4.2. Just to confuse things further, AMD has hand-picked some SSE4 instructions, added a few more of their own, and called it SSE4a and which can be found in Phenom CPUs.
SVM - Secure Virtual Machine, and if you have this you've got an AMD CPU with AMD's hardware virtualisation support technology AMD-V. Exceedingly handy when it comes to playing with virtual machines. AMD-V debuted with later versions of the Athlon 64.
TMTM2 - Thermal Monitoring provides for inserting idle cylces at high temperature, and thus lowering CPU load and in turn power. TM2 goes a step further and can reduce the multiplier, thereby directly reducing CPU speed, and voltage in order to prevent the CPU overheating.
TSCCONSTANT_TSC - The Time Stamp Counter is a 64-bit register that acts as a counter since the last reset. It used to be used as a means to get an accurate high-resolution timer, but is affected by clock speed variations that might occur through functions like power saving. In response to this, newer Intel CPUs will sport a Constant TSC that clocks at the processors maximum speed irrespective of frequency changes. AMD CPUs increment the TSC every cycle, which with power saving modes can cause the TSC to drift between dual-core CPUs. This is what the famous Dual-Core Optimiser program provided by AMD fixes, by periodically sycnhronising the TSCs on each core.
VMX - Intel's equivalent of AMD-V, this flag represents Intel's 'Vanderpool' VT hardware virtualisation technology and can be found in Intel CPUs starting with the later model 662 and 672 Pentium 4s and onwards.
Finding your flagsUnder Windows any good system information program will detail the associated flags for a CPU - Everest, Sandra, and even 3DMark's system information utility among other will show what flags your CPU has, however depending on the program the entire set may not always be listed.
Under Linux you can view all your CPUs flags with a simple command:
cat /proc/cpuinfo
Issue: 111 | April, 2010