Skip to content

feat: add standalone infinirt graph bridge - #1351

Merged
voltjia merged 11 commits into
issue/1373from
feat/standalone-infinirt-graph-bridge
Jul 13, 2026
Merged

feat: add standalone infinirt graph bridge#1351
voltjia merged 11 commits into
issue/1373from
feat/standalone-infinirt-graph-bridge

Conversation

@gongchensu

Copy link
Copy Markdown
Collaborator

Route graph capture and replay through a dlopen-based standalone InfiniRT bridge when enabled.

Package the standalone InfiniRT runtime as libinfiniops_infinirt.so and ensure libinfiniops.so records that private dependency.

@gongchensugongchensu self-assigned this Jun 30, 2026
@gongchensu
gongchensu requested a review from a teamJune 30, 2026 06:59
@voltjia
voltjiaforce-pushed the feat/standalone-infinirt-graph-bridge branch from 8687b05 to 0b447d0CompareJuly 3, 2026 09:45
@gongchensu
gongchensuforce-pushed the feat/standalone-infinirt-graph-bridge branch from 82310d0 to 8fc2af0CompareJuly 7, 2026 07:15
@gongchensu
gongchensuforce-pushed the feat/standalone-infinirt-graph-bridge branch from a555546 to 1e5e8a7CompareJuly 9, 2026 01:43
@gongchensu
gongchensu changed the base branch from main to issue/1373July 9, 2026 01:45
gongchensuand others added 6 commits July 10, 2026 17:24
Route graph capture and replay through a dlopen-based standalone InfiniRT bridge when enabled.
Package the standalone InfiniRT runtime as libinfiniops_infinirt.so and ensure libinfiniops.so records that private dependency.
Synchronize RoPE cache copies before the cache is consumed by Ascend kernels.
Rename paged attention block_idx locals to page_block_idx to avoid AscendC kernel symbol conflicts while preserving the same block table address calculation.
Detect common Ascend driver library layouts before linking libascend_hal.so instead of relying on one hard-coded driver path.
The standalone bridge now calls the InfiniRT C++ runtime API directly, so remove the old loaded-library marker and keep the runtime log aligned with the actual path.
Use --infinirt-root or INFINI_RT_ROOT as the installed InfiniRT prefix for Core targets, install the runtime handle header with Core, and remove stale dependencies on the old in-tree infinirt target.
The standalone graph build switch is removed because graph capture is now controlled by USE_INFINIRT_GRAPH and routed through the InfiniRT runtime API directly.
@gongchensu
gongchensuforce-pushed the feat/standalone-infinirt-graph-bridge branch from 3dd3a92 to 71dd75dCompareJuly 13, 2026 01:52
Extend the Core-to-InfiniRT device translation table for Ascend and the other runtime-backed devices.
Add explicit stream conversion helpers because Core still stores streams as infinirtStream_t while the InfiniRT C++ runtime API takes infini::rt::runtime::Stream. Include infinirt.h here so the bridge sees the runtime handle typedefs.
Use those conversions for stream creation, async allocation, memcpy, memset, event recording, and stream wait calls.
Use the InfiniRT C++ runtime graph API directly for begin/end capture, instantiate, launch, and graph destruction.
Drop the old standalone bridge and environment-variable-gated path so graph mode uses the installed InfiniRT runtime whenever USE_INFINIRT_GRAPH is enabled.
@gongchensu
gongchensuforce-pushed the feat/standalone-infinirt-graph-bridge branch from 71dd75d to 5f399eeCompareJuly 13, 2026 03:01
Comment threadsrc/bridge/infini/rt.hpp Outdated
Comment threadsrc/infinicore/graph/graph.cc
Comment threadsrc/infinicore/nn/rope.cc Outdated
Comment threadsrc/infinicore/context/context_impl.cc
@voltjia
voltjia merged commit ed3ca71 into issue/1373Jul 13, 2026
2 of 10 checks passed
@voltjia
voltjia deleted the feat/standalone-infinirt-graph-bridge branch July 13, 2026 09:01
Sign up for freeto 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.

2 participants

@gongchensu@voltjia