Certain events require the entire pipeline to be cleared and restarted from just after the last retired instruction. This metric measures three such events: memory ordering violations, self-modifying code, and certain loads to illegal address ranges. Machine Clears metric represents slots fraction the CPU has wasted due to Machine Clears. These slots are either wasted by uOps fetched prior to the clear, or stalls the out-of-order portion of the machine needs to recover its state after the clear.
A significant portion of execution time is spent handling machine clears.
Examine the MACHINE_CLEARS events to determine the specific cause. See the "Memory Disambiguation" section in the
Intel 64 and IA-32 Architectures Optimization Reference Manualfor more details.