Skip to content

Add native physical dispatch for planned GFQL routes - #1448

Merged
lmeyerov merged 4 commits into
masterfrom
fix/native-physical-dispatch-1441
May 15, 2026
Merged

lmeyerov merged 4 commits into
masterfrom
fix/native-physical-dispatch-1441

Conversation

@lmeyerov

@lmeyerov lmeyerov commented May 15, 2026 •

Copy link
Copy Markdown
Contributor

Closes #1441.

Summary

  • route planned SamePathExecutorWrapper and RowPipelineExecutorWrapper through a native chain-dispatch helper instead of _execute_compiled_query_compat_non_union
  • keep the compatibility wrapper for unplanned compiled queries and CALL-backed planner gaps
  • add runtime cutover guards for natural same-path and row-pipeline Cypher queries
  • harden RAPIDS 25.02 GFQL crash lanes found by full GFQL DGX validation:
    • mixed pandas/cuDF row projection now bridges through Arrow instead of cuDF to_pandas()
    • radial layout GPU trig on RAPIDS 25.02 uses a host trig bridge instead of cuDF to_cupy()

Validation

  • python3 -m pytest -q graphistry/tests/compute/gfql/test_runtime_physical_cutover.py graphistry/tests/compute/gfql/test_physical_planner.py -> 13 passed
  • python3 -m pytest -q graphistry/tests/compute/gfql/layouts/test_call_layout_radial.py graphistry/tests/compute/gfql/test_runtime_physical_cutover.py graphistry/tests/compute/gfql/test_physical_planner.py -> 22 passed
  • python3 -m pytest -q graphistry/tests/compute/gfql/cypher/test_lowering.py -k "not cudf" -> 930 passed, 12 skipped, 108 deselected
  • python3 -m pytest -q graphistry/tests/compute/gfql/test_row_pipeline_ops.py -k "not cudf" -> 182 passed, 16 deselected
  • ./bin/ruff.sh graphistry/layout/ring/util.py graphistry/compute/gfql/row/pipeline.py graphistry/compute/gfql_unified.py graphistry/tests/compute/gfql/test_runtime_physical_cutover.py -> passed
  • DGX RAPIDS 25.02 full GFQL directory:
    RAPIDS_VERSION=25.02 PROFILE=gfql WITH_IMAGE_BUILD=0 IMAGE_TAG=graphistry/test-rapids-official:25.02-cuda12-gfql TEST_FILES='graphistry/tests/compute/gfql' docker/test-rapids-official-local.sh
    -> 2249 passed, 22 skipped, 15 xfailed
  • DGX RAPIDS 26.02 full GFQL directory:
    RAPIDS_VERSION=26.02 PROFILE=gfql WITH_IMAGE_BUILD=0 IMAGE_TAG=graphistry/test-rapids-official:26.02-cuda12-gfql TEST_FILES='graphistry/tests/compute/gfql' docker/test-rapids-official-local.sh
    -> 2249 passed, 22 skipped, 15 xfailed

Notes

  • local full cuDF suites still cannot start on this host because cuDF imports but there is no CUDA device (cudaErrorNoDevice); DGX covers those lanes.

@lmeyerov
lmeyerov force-pushed the fix/native-physical-dispatch-1441 branch from 89445f2 to 7bca921 Compare May 15, 2026 19:58
@lmeyerov
lmeyerov merged commit afc02c7 into master May 15, 2026
269 of 271 checks passed
@lmeyerov
lmeyerov deleted the fix/native-physical-dispatch-1441 branch May 15, 2026 20:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

D4 prep: native physical dispatch coverage needed to retire GFQL compat executor

1 participant