Skip to content

Add UMBP standalone process mode#460

Draft
maning00 wants to merge 3 commits into
mainfrom
feat/umbp-standalone-process-mode
Draft

Add UMBP standalone process mode#460
maning00 wants to merge 3 commits into
mainfrom
feat/umbp-standalone-process-mode

Conversation

@maning00

@maning00 maning00 commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds UMBP standalone process mode so worker processes can access a shared UMBP server over gRPC/UDS with shm fd handoff, instead of embedding all local storage state in each worker.

Key changes:

  • Add standalone-process config, client factory wiring, pybind exports, and Python package exposure.
  • Add umbp_standalone_server, StandaloneProcessClient, standalone protobuf service, and raw UDS fd-passing IPC.
  • Add AnonymousShm host-buffer backing and registry support for zero-copy worker buffer registration.
  • Add backend-mode reporting and distributed-backed server support via CreateUMBPClient.
  • Add per-worker ExternalKvIdentityClient support for distributed-backed external-KV identity forwarding.
  • Document the standalone-process design, distributed-backed extension, lifecycle ordering, and accepted lifecycle-lock tradeoff.
  • Add standalone shm IPC coverage and CopyPipeline drain coverage.

Testing

  • pre-commit run
  • cmake --build build --target umbp_standalone_server test_standalone_shm_ipc mori_pybinds -j$(nproc)
  • ./src/umbp/tests/test_standalone_shm_ipc --gtest_color=no
  • cd build/src/umbp/tests && ctest --output-on-failure (174/174 passed)

@maning00 maning00 force-pushed the feat/umbp-standalone-process-mode branch from eb9d086 to 4b4204f Compare July 10, 2026 03:10
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.

1 participant