Matches in SemOpenAlex for { <https://semopenalex.org/work/W1537318052> ?p ?o ?g. }
Showing items 1 to 85 of
85
with 100 items per page.
- W1537318052 abstract "Program analysis plays a major role in advanced compilers, yet traditional approaches to data flow analysis are quite time consuming. Prior techniques for speeding up data flow analysis have either exploited program structure or have used alternate dependence representations to avoid performing unnecessary work. No general method exploiting both program structure and sparsity has emerged.We present a new framework for program analysis using dependence flow graphs (DFGs), an intermediate representation derived from dataflow machine graphs. DFGs integrate data and control dependences in a way that supports general and efficient program analysis while avoiding the problems of previous dependence representations. In particular, our approach simultaneously exploits program structure, sparsity of data flow systems, and data structure reuse to speed up analysis.At the heart of our method is a new program decomposition based on identifying single-entry single-exit (SESE) regions of the control flow graph (CFG). We show that finding SESE regions is equivalent to the problem of finding control dependence regions, and we develop optimal linear-time algorithms for these problems. The nesting relationship of SESE regions is recorded in a data structure called the program structure tree (PST). Since each SESE region is a control flow graph in its own right, we can speed up many CFG algorithms by applying them independently to each SESE region in a divide-and-conquer manner. Additionally, SESE regions can be categorized according to their local structure (e.g. as if-then-else or loop regions), and this local structure may be exploited by applying simple syntactic methods according to the region kind.Hierarchical program structure is used in solving global data flow problems by first solving local problems within progressively larger SESE regions. The global solution is then propagated to enclosed regions in a top-down pass over the PST. Sparsity is exploited within each data flow problem by avoiding propagation of data flow values through SESE regions that do not effect the data flow solution. We show that the sparsity found in common scalar optimizations is captured precisely by dependence flow graphs; the DFG is then viewed as a reusable basis set of sparse graphs. Since sparsity is based on SESE regions of the PST, we may exploit structure and sparsity simultaneously.By solving data flow systems using the DFG, we avoid the cost of rediscovering structure and sparsity for each problem instance. In this case, the cost of building the dependence flow graph is amortized over many related data flow problems. Such data structure reuse is essential to realizing the full potential of sparse data flow methods. However, reuse adds the additional burden of maintaining the DFG as the program is transformed during optimization. Using the PST, we derive practical incremental algorithms for updating both the DFG and the PST itself.We demonstrate the value of our approach through measurements taken from an optimizing FORTRAN compiler that uses the program structure tree and dependence flow graph as its internal representation. From our experiments, we conclude that sparse methods hold great potential for speeding up data flow analysis, but that reusing and incrementally updating a sparse representation is the key to realizing this potential." @default.
- W1537318052 created "2016-06-24" @default.
- W1537318052 creator A5081886925 @default.
- W1537318052 date "1995-11-20" @default.
- W1537318052 modified "2023-09-26" @default.
- W1537318052 title "Efficient program analysis using dependence flow graphs" @default.
- W1537318052 hasPublicationYear "1995" @default.
- W1537318052 type Work @default.
- W1537318052 sameAs 1537318052 @default.
- W1537318052 citedByCount "5" @default.
- W1537318052 countsByYear W15373180522014 @default.
- W1537318052 countsByYear W15373180522017 @default.
- W1537318052 crossrefType "journal-article" @default.
- W1537318052 hasAuthorship W1537318052A5081886925 @default.
- W1537318052 hasConcept C11413529 @default.
- W1537318052 hasConcept C160191386 @default.
- W1537318052 hasConcept C162319229 @default.
- W1537318052 hasConcept C163797641 @default.
- W1537318052 hasConcept C169590947 @default.
- W1537318052 hasConcept C17744445 @default.
- W1537318052 hasConcept C199360897 @default.
- W1537318052 hasConcept C199539241 @default.
- W1537318052 hasConcept C2524010 @default.
- W1537318052 hasConcept C27390822 @default.
- W1537318052 hasConcept C27458966 @default.
- W1537318052 hasConcept C2776359362 @default.
- W1537318052 hasConcept C33923547 @default.
- W1537318052 hasConcept C38349280 @default.
- W1537318052 hasConcept C41008148 @default.
- W1537318052 hasConcept C489000 @default.
- W1537318052 hasConcept C77088390 @default.
- W1537318052 hasConcept C80444323 @default.
- W1537318052 hasConcept C88468194 @default.
- W1537318052 hasConcept C94625758 @default.
- W1537318052 hasConcept C96324660 @default.
- W1537318052 hasConcept C98183937 @default.
- W1537318052 hasConceptScore W1537318052C11413529 @default.
- W1537318052 hasConceptScore W1537318052C160191386 @default.
- W1537318052 hasConceptScore W1537318052C162319229 @default.
- W1537318052 hasConceptScore W1537318052C163797641 @default.
- W1537318052 hasConceptScore W1537318052C169590947 @default.
- W1537318052 hasConceptScore W1537318052C17744445 @default.
- W1537318052 hasConceptScore W1537318052C199360897 @default.
- W1537318052 hasConceptScore W1537318052C199539241 @default.
- W1537318052 hasConceptScore W1537318052C2524010 @default.
- W1537318052 hasConceptScore W1537318052C27390822 @default.
- W1537318052 hasConceptScore W1537318052C27458966 @default.
- W1537318052 hasConceptScore W1537318052C2776359362 @default.
- W1537318052 hasConceptScore W1537318052C33923547 @default.
- W1537318052 hasConceptScore W1537318052C38349280 @default.
- W1537318052 hasConceptScore W1537318052C41008148 @default.
- W1537318052 hasConceptScore W1537318052C489000 @default.
- W1537318052 hasConceptScore W1537318052C77088390 @default.
- W1537318052 hasConceptScore W1537318052C80444323 @default.
- W1537318052 hasConceptScore W1537318052C88468194 @default.
- W1537318052 hasConceptScore W1537318052C94625758 @default.
- W1537318052 hasConceptScore W1537318052C96324660 @default.
- W1537318052 hasConceptScore W1537318052C98183937 @default.
- W1537318052 hasLocation W15373180521 @default.
- W1537318052 hasOpenAccess W1537318052 @default.
- W1537318052 hasPrimaryLocation W15373180521 @default.
- W1537318052 hasRelatedWork W110849379 @default.
- W1537318052 hasRelatedWork W1500477099 @default.
- W1537318052 hasRelatedWork W1527879496 @default.
- W1537318052 hasRelatedWork W1534309112 @default.
- W1537318052 hasRelatedWork W1552117776 @default.
- W1537318052 hasRelatedWork W1982205631 @default.
- W1537318052 hasRelatedWork W1991733014 @default.
- W1537318052 hasRelatedWork W1994556169 @default.
- W1537318052 hasRelatedWork W2007845800 @default.
- W1537318052 hasRelatedWork W2017398884 @default.
- W1537318052 hasRelatedWork W2026352419 @default.
- W1537318052 hasRelatedWork W2096193885 @default.
- W1537318052 hasRelatedWork W2114067856 @default.
- W1537318052 hasRelatedWork W2185252592 @default.
- W1537318052 hasRelatedWork W2186528809 @default.
- W1537318052 hasRelatedWork W2412465557 @default.
- W1537318052 hasRelatedWork W2417628481 @default.
- W1537318052 hasRelatedWork W2928052000 @default.
- W1537318052 hasRelatedWork W3152674419 @default.
- W1537318052 hasRelatedWork W42385993 @default.
- W1537318052 isParatext "false" @default.
- W1537318052 isRetracted "false" @default.
- W1537318052 magId "1537318052" @default.
- W1537318052 workType "article" @default.