data dependency
Let an agent explain data dependencies and their kinds, analyse dependencies in code or workflows, describe how processors and compilers handle them, and support parallelisation.
Research draft, second pass
A second pass drafted this model: the structure a model of this thing needs, and what is known about it in the world. The line under this one says how the second half was obtained - researched against sources, or recalled without web access, in which case nothing here was read anywhere and every claim is a lead to verify. Unreviewed either way.
Researched by: Claude
Bundle → Layer → Finding → Questions Filled
4 bundles · 8 layers · 8 findings · 16 questions
Define Kinds of dependency.
Kinds
True, anti, output.
Kinds
Kinds.
- What are true, anti and output data dependencies, and how do they differ from control dependencies? definition
- What is a loop-carried dependency? definition
Analyse
Analysing code.
Analyse
Analysis.
- Which data dependencies exist in this code or loop, and which prevent reordering or parallel execution? action
- How are dependencies represented in graphs? definition
Hardware Processors.
Hazards
Pipeline hazards.
Hazards
Hazards.
- How do processors detect and resolve data hazards with forwarding, stalls and register renaming? definition
- What is out-of-order execution? definition
Memory
Memory dependencies.
Memory
Memory.
- How are memory dependencies handled, and what are memory disambiguation and consistency models? definition
- Which entry fits processor architecture? action
Software Compilers and parallelism.
Compilers
Compiler analysis.
Compilers
Compilers.
- How do compilers use dependence analysis for scheduling, vectorisation and loop transformations? definition
- How can anti and output dependencies be removed by renaming? action
Parallel
Parallel programming.
Parallel
Parallel programming.
- How can this computation be parallelised safely given its dependencies? action
- Which tools detect races? provenance
Workflows Tasks and datasets.
Pipelines
Data pipelines.
Pipelines
Pipelines.
- How are data dependencies expressed in workflow and build systems, and how do they drive scheduling? definition
- How is lineage tracked? provenance
Teach
Teaching.
Teach
Teaching.
- How can data dependencies be taught with examples? action
- Which misconceptions arise? provenance
Classifiers Filled
- Family
- Thing Registry
- Category
- Cross-cutting context
- Entry kind
- thing
- Plane
- XCT
- Domain
- XCT.REL
What it is Filled
A situation in computing in which an instruction, statement or task refers to data produced or modified by a preceding one, so that their order of execution matters, classified as true, anti and output dependencies and analysed to enable safe instruction scheduling, pipelining, parallelisation and compiler optimisation; data dependencies also arise between tasks in workflows and between datasets.
Why it exists Filled
Let an agent explain data dependencies and their kinds, analyse dependencies in code or workflows, describe how processors and compilers handle them, and support parallelisation.
Distinguishing features Filled
- Data-driven ordering
- Three classic kinds
- Limits parallelism
- Analysable
What robots and AI may and may not do Filled
Must not
- Reorder or parallelise operations in a way that breaks a dependency and silently changes results.
- Report code as safe to run concurrently without checking its shared data.
- Remove synchronisation that protects a dependency to gain speed without the maintainer's agreement.
- Hide a detected race condition from the people responsible for the code.
Only with a human decision
- Deploying a parallelised change to systems where wrong results affect money, safety or health.
May
- Analyse code it is authorized to change and report true, anti and output dependencies between statements.
- Preserve the order of dependent operations when reordering, parallelising or optimising code.
Moral aspects Filled
- Ignored dependencies produce wrong results that look correct, which is worse than a visible crash.
- Systems that control machines or records can harm people when ordering bugs slip through.
Who is affected
- Users of the software
- Developers and maintainers
- People affected by its outputs
Owners Filled
Steward
Nobody owns the concept; the maintainers of each program answer for the dependencies in it.
Links to other meta-models Filled
parent
- Q1191527 - registry parent class
related
- dependency - category
- calculation - computation ordering
- data set - dataset dependencies
- routing - ordering in networks contrast
What else AI and robots need to interact with it Filled
Identity and identifiers required Filled
- Vercy registry: vr.tr.data-dependency
- Wikidata: Q334630 (https://www.wikidata.org/wiki/Q334630)
Direct properties not applicable Not applicable
Not applicable
Plane XCT: no invented physical properties.
Recognition optional Filled
- Later operation uses earlier data
- True, anti or output dependency
- Control dependency concerns branching, not data
- Not physical; relations between instructions or tasks.
Capabilities and actions required Filled
- explain kinds of data dependency
- analyse dependencies in code or workflows
- describe hardware and compiler handling
- support parallelisation
Hazards and failure modes required Filled
- Race conditions from ignored dependencies
- Pipeline hazards
- Incorrect parallelisation
Standards and interfaces required Filled
- Compiler and processor design conventions
- Workflow specification standards
Context of use required Filled
- Ordering constraints from data use.
- true or flow dependencies
- anti dependencies
- output dependencies
- loop-carried dependencies
- task and dataset dependencies in workflows
Sources Filled
- Wikidata item Q334630: data dependency - identity and sense of the item
- Wikipedia: Data dependency - general description of the item
Open questions
- Should control dependency be a paired entry?
- How should compiler references be linked?
- How should workflow tools be linked?
Machine files
Provenance
thing registry research (pass 2) · unreviewed
Built from: models/things/publications/thing-q334630/spec.json