srdatalog.ir¶
srdatalog.ir — the IR pyramid.
ir.core — generic dialect machinery (Op, Dialect, strategies, pattern matchers, verifier). ir.hir — high-level IR (Program, Rule, Atom). The user-facing datalog representation that the front-end produces. ir.mir — mid-level IR (Pipeline, ColumnJoin, Scan, CartesianJoin, InsertInto). The join-shape representation that HIR lowering produces. ir.dialects — emission-level IR. Each sub-package is a dialect: iir.cf control-flow scaffold parallel.data.block_group block-group strategy relation.d2l 2-level index relation.sorted_array single-array index target.cuda CUDA emission target
The compile pipeline flows top-to-bottom:
HIR (Program) -> MIR (Pipeline) -> IIR (Block, Bind, …) -> C++ source
via srdatalog.compile.compile_pipeline / compile_runner.
Subpackages¶
srdatalog.ir.codegensrdatalog.ir.codegen.cudasrdatalog.ir.codegen.cuda.buildsrdatalog.ir.codegen.cuda.rendersrdatalog.ir.codegen.cuda.apisrdatalog.ir.codegen.cuda.batchfilesrdatalog.ir.codegen.cuda.complete_runnersrdatalog.ir.codegen.cuda.contextsrdatalog.ir.codegen.cuda.emitsrdatalog.ir.codegen.cuda.envelopesrdatalog.ir.codegen.cuda.helperssrdatalog.ir.codegen.cuda.main_filesrdatalog.ir.codegen.cuda.materializedsrdatalog.ir.codegen.cuda.orchestratorsrdatalog.ir.codegen.cuda.pipeline_utilssrdatalog.ir.codegen.cuda.pluginsrdatalog.ir.codegen.cuda.runnersrdatalog.ir.codegen.cuda.schemasrdatalog.ir.codegen.cuda.view_slots
srdatalog.ir.coresrdatalog.ir.dialectssrdatalog.ir.hirsrdatalog.ir.mir