pygraphistry
pygraphistry copied to clipboard
feat: cudf same-path executor
Summary
- add shared same-path AST metadata + plan toggles
- wire GFQL Chain/JSON to accept
whereclauses and plan them - scaffold cuDF executor + forward pass with early pruning and parity tests
Testing
- python3 -m pytest tests/gfql/ref/test_cudf_executor_inputs.py graphistry/tests/compute/test_chain_where.py tests/gfql/ref/test_same_path_plan.py tests/gfql/ref/test_ref_enumerator.py
- python3 -m ruff check graphistry/compute/gfql/cudf_executor.py graphistry/gfql/same_path_types.py graphistry/gfql/same_path_plan.py graphistry/tests/compute/test_chain_where.py tests/gfql/ref/test_same_path_plan.py tests/gfql/ref/test_cudf_executor_inputs.py
Status update
- ✅ Phase 1.C.2 (forward pass) completed: cuDF executor now captures alias frames and prunes early using same-path clauses; parity vs the oracle’s tags is covered in .
- 🚧 Phase 1.C.3 (backward pass) next: implement summary propagation (ineq + equality bitsets) and final F/B/F glue, then add oracle parity tests for the full executor per plan steps.
- 📝 Working plan mirrored at for context + checkpoints.
Status update
- ✅ Phase 1.C.2 (forward pass) completed: cuDF executor now captures alias frames and prunes early using same-path clauses; parity vs the oracle’s tags is covered in
tests/gfql/ref/test_cudf_executor_inputs.py. - 🚧 Phase 1.C.3 (backward pass) next: implement summary propagation (ineq + equality bitsets) and final F/B/F glue, then add oracle parity tests for the full executor per plan steps.
- 📝 Working plan mirrored at
graphistry/compute/gfql/plan_issue_837_cudf_executor.mdfor context + checkpoints.