37th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'04)
Dataflow Mini-Graphs: Amplifying Superscalar Capacity and Bandwidth
Portland,Oregon
December 04-December 08
ISBN: 0-7695-2126-6
DOI Bookmark:
http://doi.ieeecomputersociety.org/10.1109/MICRO.2004.15
A mini-graph is a dataflow graph that has an arbitrary internal size and shape but the interface of a singleton instruction: two register inputs, one register output, a maximum of one memory operation, and a maximum of one (terminal) control transfer. Previous work has exploited dataflow sub-graphs whose execution latency can be reduced via programmable FPGA-style hardware. In this paper we show that mini-graphs can improve performance by amplifying the bandwidths of a superscalar processor's stages and the capacities of many of its structures without custom latency-reduction hardware. Amplification is achieved because the processor deals with a complete mini-graph via a single quasi-instruction, the handle. By constraining mini-graph structure and forcing handles to behave as much like singleton instructions as possible, the number and scope of the modifications over a conventional superscalar microarchitecture is kept to a minimum. This paper describes mini-graphs, a simple algorithm for extracting them from basic block frequency profiles, and a microarchitecture for exploiting them. Cycle-level simulation of several benchmark suites shows that mini-graphs can provide average performance gains of 2-12% over an aggressive baseline, with peak gains exceeding 40%. Alternatively, they can compensate for substantial reductions in register file and scheduler size, and in pipeline bandwidth.
Citation:
Anne Bracy, Prashant Prahlad, Amir Roth, "Dataflow Mini-Graphs: Amplifying Superscalar Capacity and Bandwidth," micro, pp.18-29, 37th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'04), 2004
Usage of this product signifies your acceptance of the
Terms of Use.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||