2003 · 49 citations · 19 references
EngineeringComputer EngineeringComputer ScienceCompilersComputer ArchitectureSchedulingInstruction SchedulingInstruction-level ParallelismOut-of-order ExecutionSpeculative ExecutionFunctional Unit SchedulingHigh PerformanceInstruction Scheduling AlgorithmsPipeline SchedulingScheduling Algorithms
Ensuring back-to-back execution of dependent instructions in a conventional out-of-order processor requires scheduling logic that wakes up and selects instructions at the same rate as they are executed. To sustain high performance, integer ALU instructions typically have singlecycle latency, consequently requiring scheduling logic with the same single-cycle latency. Prior proposals have advocated the use of speculation in either the wakeup or select phases to enable pipelining of scheduling logic to achieve higher clock frequency. In contrast, this paper proposes macro-op scheduling, which systematically removes instructions with single-cycle latency from the machine by combining them into macro-ops, and performs nonspeculative pipelined scheduling of multi-cycle operations. Macroop
19
The SimpleScalar tool set, version 2.0
Doug Burger, Todd Austin · ACM SIGARCH Computer Architecture News · 1997 · 3.1K citations · Full text
Complexity-effective superscalar processors
Subbarao Palacharla, Norman P. Jouppi, James E. Smith · 1997 · 839 citations
The microarchitecture of the Pentium 4 processor
G. Hinton · Medical Entomology and Zoology · 2001 · 592 citations