DOI: 10.1145/3859372 ISSN: 1544-3566

JumpStart: Alleviating the Front-End Bottleneck in Modern x86 Processors

Logan Moody, Bhargav Godala, Gilles Pokam, Ashish Venkat

With the stagnation of single-threaded performance, the need for optimizations targeting sequential code performance is greater than ever before. Modern workloads have also been growing in code footprint, exposing a bottleneck in the processor front-end, specifically its inability to maintain a sufficiently high fetch throughput to saturate available execution units. To address them, two optimizations exist in modern processors: (1) Fetch-Directed Instruction Prefetching (FDIP) and (2) the micro-op cache ( μ op cache), both of which improve fetch throughput leading to improved overall performance. However, since they target the same code regions, in the presence of FDIP, the μ op cache becomes mostly redundant as a performance optimization. This work proposes JumpStart : a novel and lightweight mechanism that synergistically exploits hints from FDIP to early-detect a μ op cache miss and wake up the decode pipeline ahead of time, alleviating a key front-end bottleneck.

More from our Archive