Forwardflow: Scalable, RAM-Based Dataflow Execution

File(s)
Date
2009Author
Gibson, Dan
Wood, David
Publisher
University of Wisconsin-Madison Department of Computer Sciences
Metadata
Show full item recordAbstract
Power (and thermal) limits have forced an industry-wide shift from increasingly complex uniprocessors to multicore chips with 4, 8, and even 16 simpler processor cores. Yet Amdahl's Law suggests that these cores should not be too simple, lest they exacerbate even a parallel application's sequential bottlenecks. Furthermore, running all cores at full speed will soon exceed the chip's power envelope. Ideally, future CMPs should use cores that trade-off power and performance, allowing the system to scale up a core's instruction-level parallelism (ILP) and memory-level parallelism (MLP) to improve sequential performance.
This work presents the Forwardflow microarchitecture, which executes instructions out-of-order using RAM-based structures in lieu of non-scalable CAM- or matrix-based mechanisms. Forwardflow dynamically builds an explicit internal dataflow representation from a conventional ISA, using forward dependence pointers to guide instruction wakeup, selection, and issue. Because all of Forwardflow's major data structures are RAM-based, the instruction window scales large enough to tolerate long memory access times.
Permanent Link
http://digital.library.wisc.edu/1793/60676Type
Technical Report
Citation
TR1656