Abstract

A/D GRAPHS|A DATA STRUCTURE FORDATA DEPENDENCEANALYSIS INPROGRAMS WITHPOINTERSW. AMME, E. ZEHENDNERComputer Science Department,Friedrich-Schil ler-University,D-07740 Jena, GermanyWedescrib e anewmetho d todetermine datadep endences inprograms withp ointers|a mandatory step in parallelization.The use of A/D graphs for datadep endence analysis promises a signi cant improvement on other known metho ds.We p erform a single-pass data dep endence analysis by solving a monotone dataow system for a class of restricted imp erative languages. Based on an intrapro-cedural analysis with A/D graphs that is optimal with resp ect to static analysis,we develop a metho d to derive a safe approximation of the data dep endences byemploying k-b ounded A/D graphs. Using this metho d we can p erform interpro ce-dural data dep endence analysis with storage quadratic in the numb er of programstatements. Our metho d is fast, uses storage more economical than others, and isable to check the mo dules of a program separately.1Intro duction and state of the artDetermination ofdatadep endencesisamandatory stepwhenrestructuringprograms, and is particularly imp ortant for parallelization:themore precisetheresultsof data dep endenceanalysis, thehigherdegreeof exploitableparallelism.A program statementS2has a data dep endenceon a statemen1if thefollowing four conditions hold [3]:1.Both statements access a common storage cellloc.2.At least one of them writes toloc.3.StatementS2can b e reached after the execution of statemen1.4.There is no third statementS3on the path b etween1and2that alsowrites toloc.Such a data dep endence is called atrue dependenceifS1writes tolocwhereasS2reads fromloc.It is called ananti dependenceif1andwrites toloc.It is called anoutput dependenceif b oth statements write toThere are well-known matured techniques for the data dep endence analysisof programs that are exclusively based on lo ops and storage arrays.Some of1

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call