Overview

Traditional instruction caches store raw instructions as they appear in memory. A trace cache stores instructions after they have been decoded into micro-ops and in the order they were actually executed, including across branches.

Benefits

  • Saves Decoding Time: The CPU doesn't have to re-decode the same instructions every time a loop runs.
  • Higher Bandwidth: Can provide multiple instructions per cycle even if they are not contiguous in memory.

Notable Usage

Most famously used in the Intel Pentium 4 (NetBurst) architecture. While not used in exactly the same way today, modern CPUs use similar 'Micro-op Caches' to achieve similar benefits.