Memory Type Range Registers are CPU registers which appeared in the Pentium Pro and Pentium II series of processors and remained in Intel processors since.
The registers are used for specifying the strategy in which the CPU communicates with external memory devices such as the video memory (the memory that resides in video adapters). Caching strategies include uncached, write-through, write-back, and write-combining.
Such control over caching is useful in a situation where memory is accessed across a device bus such as PCI, AGP, where caching will gain no benefit. Therefore, this allows for a more efficient memory mapped I/O. In the write-combined mode, which is conventionally used with video memory, bus write transfers are combined into a larger transfer
before bursting over the bus, thus allowing for greater performence in video applications.
Other processors brands also mimicked MTRRs. Cyrix processors (6x86, 6x86MX and M II) use Address Range Registers (ARRs) which are used to emulate Intel's MTRR's. AMD has 2 MTRRs, and Centaur C6 (WinChip) has 8 MCRs.