Skip to content

feat(cpp_kernel): stabilize CAPI and introduce real BettiRDLCompute with recursive event processing#1

Open
cto-new[bot] wants to merge 1 commit intomainfrom
betti-rdl-test-product-report
Open

feat(cpp_kernel): stabilize CAPI and introduce real BettiRDLCompute with recursive event processing#1
cto-new[bot] wants to merge 1 commit intomainfrom
betti-rdl-test-product-report

Conversation

@cto-new
Copy link
Copy Markdown

@cto-new cto-new Bot commented Dec 15, 2025

Summary

Implement a real BettiRDLCompute kernel with recursive event processing and fix core C API to enable Linux builds. Introduce batching-friendly demos and scaffolding for Python/Node bindings, plus a product report skeleton.

Details

  • Stabilize C API: include , fix Linux build path.
  • Add BettiRDLCompute: event queue, per-process state, support for recursion.
  • Update mega_demo/stress_test to exercise new semantics with batching.
  • Add Python (pybind11) and Node.js (N-API) binding scaffolding and tests.
  • Create product report skeleton summarizing bench results and bindings.

Note: This PR introduces a breaking change in the run API semantics; see BREAKING CHANGE footer in the commit for details.

Warning: Task VM test is not passing, cto.new will perform much better if you fix the setup

…with recursive event processing

Reason: enable reproducible benchmarks and end-to-end runtime validation.

What changed:
- Implemented BettiRDLCompute with a real compute kernel, including a priority-queue based event system, per-process state, and support for recursive event chaining.
- Fixed C API header to include <cstddef> and addressed Linux build compatibility; updated CMake configuration for Release builds.
- Updated core demos (mega_demo, stress_test) to batch events and exercise recursion semantics; added improved timing/memory reporting.
- Added Python (pybind11) and Node.js (N-API) binding scaffolding and basic smoke tests; prepared packaging pointers.
- Added a product report skeleton summarizing benchmarks and the binding status.

Impact:
- BREAKING CHANGE: BettiRDLCompute.run now processes up to max_events additional events (not until the queue is drained); deep recursion semantics updated accordingly.
- Memory accounting and threading considerations are now exposed via the new API.

Migration notes:
- Update callers to call run with the number of additional events to process; re-run existing benchmarks to observe updated results.
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.

0 participants