Technical report detail

Polynomial-Time Subgraph Enumeration for Automated Instruction Set Extension

by Bonzini, Paolo and Pozzi, Laura

This paper proposes a novel algorithm that, given a data-flow graph and an input/output constraint, enumerates all convex subgraphs under the given constraint in polynomial time with respect to the size of the graph. These subgraphs have been shown to represent efficient Instruction Set Extensions for customizable processors. The search space for this problem is inherently polynomial but, to our knowledge, this is the first paper to prove this and to present a practical algorithm for this problem with polynomial complexity. Our algorithm is based on properties of convex subgraphs that link them to the concept of multiple-vertex dominators. We discuss several pruning techniques that, without sacrificing the optimality of the algorithm, make it practical for data-flow graphs of a thousands nodes or more.

Technical report 2006/07, December 2006

BibTex entry

@techreport{06polynomialtime, author = {Bonzini, Paolo and Pozzi, Laura}, title = {Polynomial-Time Subgraph Enumeration for Automated Instruction Set Extension}, institution = {University of Lugano}, number = {2006/07}, year = 2006, month = dec }