Everything about Loop dependence analysis
Process to determine relationships among statements
In computer science, loop dependence analysis is a process which can be used to find dependencies within iterations of a loop with the goal of determining different relationships between statements. These dependent relationships are tied to the order in which different statements access memory locations. Using the analysis of these relationships, execution of the loop can be organized to allow multiple processors to work on different portions of the loop in parallel. This is known as parallel processing. In general, loops can consume a lot of processing time when executed as serial code. Through parallel processing, it is possible to reduce the total execution time of a program through sharing the processing load among multiple processors. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Loop dependence analysisA 5-minute orientation
- Pick up a classic book: Bioinformatics Research and ApplicationsThe most-reprinted book on the subject
- Read the landmark paper: A Sequence-Independent Analysis of the Loop Length Dependence of Intramolecular RNA G-Quadruplex Stability and TopologyCited 147 times
- Go sideways: Loop-level parallelismA closely related topic
- Go sideways: Data dependencyA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🏆 Landmark papers (most cited)
A Sequence-Independent Analysis of the Loop Length Dependence of Intramolecular RNA G-Quadruplex Stability and Topology
Analysis of a fiber-optic passive loop-resonator gyroscope: Dependence on resonator parameters and light-source coherence
Improving Loop Dependence Analysis
Dependence analysis for outer loop parallelization of existing Fortran‐77 programs
📚 Books worth reading
Bioinformatics Research and ApplicationsZhipeng Cai · 2013
Eloquent JavascriptMarijn Haverbeke · 2009
Probabilistic transmission system planningWenyuan Li · 2011
The Conspirators HierarchyJohn Coleman · 1992
Parallel Programming in C with MPI and OpenMPMichael J. Quinn · 2003
An introduction to data structures with applicationsJean-Paul Tremblay, Paul Gordon Sorenson · 1976
Foundations of Parallel ProgrammingT. G. Lewis · 1993
Frontiers of blood pressure and heart rate analysisM. Di Rienzo · 1997
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Loop-level parallelism Loop-level parallelism is a form of parallelism in software programming that is concerned with extracting parallel tasks from loops. The opportunity for…
- Data dependency A data dependency in computer science is a situation in which a program statement (instruction) refers to the data of a preceding statement. In compiler…
- GCD test In compiler theory, a greatest common divisor test (GCD test) is the test used in study of loop optimization and loop dependence analysis to test the dependency…
- Dependence analysis In compiler theory, dependence analysis produces execution-order constraints between statements/instructions. Broadly speaking, a statement S2 depends…
- Control dependency Control dependency is a situation in which a program instruction executes if the previous instruction evaluates in a way that allows its execution. An…
- Instruction scheduling In computer science, instruction scheduling is a compiler optimization used to improve instruction-level parallelism, which improves performance on machines…
- Automatic vectorization Automatic vectorization, in parallel computing, is a special case of automatic parallelization, where a computer program is converted from a scalar implementati…
- Frameworks supporting the polyhedral model Use of the polyhedral model (also called the polytope model) within a compiler requires software to represent the objects of this framework (sets of integer-val…