Skip to content

fix(debug): self-referencing checkpoints when resuming streaming mid-thread #490

fix(debug): self-referencing checkpoints when resuming streaming mid-thread

fix(debug): self-referencing checkpoints when resuming streaming mid-thread #490

Triggered via pull request October 10, 2024 09:16
Status Success
Total duration 41m 15s
Artifacts

bench.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

1 warning and 2 notices
benchmark
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Benchmark results: libs/langgraph/langgraph/pregel/loop.py#L1
......................................... fanout_to_subgraph_10x: Mean +- std dev: 45.8 ms +- 1.2 ms ......................................... fanout_to_subgraph_10x_sync: Mean +- std dev: 40.6 ms +- 1.0 ms ......................................... fanout_to_subgraph_10x_checkpoint: Mean +- std dev: 66.1 ms +- 1.8 ms ......................................... fanout_to_subgraph_10x_checkpoint_sync: Mean +- std dev: 67.8 ms +- 1.5 ms ......................................... fanout_to_subgraph_100x: Mean +- std dev: 442 ms +- 13 ms ......................................... fanout_to_subgraph_100x_sync: Mean +- std dev: 396 ms +- 7 ms ......................................... fanout_to_subgraph_100x_checkpoint: Mean +- std dev: 642 ms +- 22 ms ......................................... fanout_to_subgraph_100x_checkpoint_sync: Mean +- std dev: 646 ms +- 9 ms ......................................... react_agent_10x: Mean +- std dev: 26.7 ms +- 0.9 ms ......................................... react_agent_10x_sync: Mean +- std dev: 18.9 ms +- 0.3 ms ......................................... react_agent_10x_checkpoint: Mean +- std dev: 40.9 ms +- 3.0 ms ......................................... react_agent_10x_checkpoint_sync: Mean +- std dev: 30.9 ms +- 2.8 ms ......................................... react_agent_100x: Mean +- std dev: 294 ms +- 8 ms ......................................... react_agent_100x_sync: Mean +- std dev: 231 ms +- 5 ms ......................................... react_agent_100x_checkpoint: Mean +- std dev: 825 ms +- 15 ms ......................................... react_agent_100x_checkpoint_sync: Mean +- std dev: 743 ms +- 8 ms ......................................... wide_state_25x300: Mean +- std dev: 17.6 ms +- 0.4 ms ......................................... wide_state_25x300_sync: Mean +- std dev: 10.3 ms +- 0.2 ms ......................................... wide_state_25x300_checkpoint: Mean +- std dev: 230 ms +- 8 ms ......................................... wide_state_25x300_checkpoint_sync: Mean +- std dev: 230 ms +- 14 ms ......................................... wide_state_15x600: Mean +- std dev: 20.2 ms +- 0.5 ms ......................................... wide_state_15x600_sync: Mean +- std dev: 11.8 ms +- 0.2 ms ......................................... wide_state_15x600_checkpoint: Mean +- std dev: 396 ms +- 15 ms ......................................... wide_state_15x600_checkpoint_sync: Mean +- std dev: 393 ms +- 16 ms ......................................... wide_state_9x1200: Mean +- std dev: 20.1 ms +- 0.5 ms ......................................... wide_state_9x1200_sync: Mean +- std dev: 11.8 ms +- 0.3 ms ......................................... wide_state_9x1200_checkpoint: Mean +- std dev: 254 ms +- 8 ms ......................................... wide_state_9x1200_checkpoint_sync: Mean +- std dev: 254 ms +- 13 ms
Comparison against main: libs/langgraph/langgraph/pregel/loop.py#L1
+-----------------------------------------+---------+-----------------------+ | Benchmark | main | changes | +=========================================+=========+=======================+ | fanout_to_subgraph_100x_checkpoint | 730 ms | 642 ms: 1.14x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_10x_checkpoint | 45.4 ms | 40.9 ms: 1.11x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_10x_checkpoint_sync | 34.2 ms | 30.9 ms: 1.11x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x_checkpoint_sync | 711 ms | 646 ms: 1.10x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x | 485 ms | 442 ms: 1.10x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x_checkpoint_sync | 73.9 ms | 67.8 ms: 1.09x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_10x_sync | 20.5 ms | 18.9 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x_sync | 44.0 ms | 40.6 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_15x600 | 21.8 ms | 20.2 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_9x1200 | 21.7 ms | 20.1 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_10x | 28.7 ms | 26.7 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_25x300 | 18.9 ms | 17.6 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_100x_sync | 248 ms | 231 ms: 1.08x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x_sync | 425 ms | 396 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_100x | 315 ms | 294 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x_checkpoint | 70.8 ms | 66.1 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_15x600_sync | 12.6 ms | 11.8 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x | 49.0 ms | 45.8 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_100x_checkpoint | 881 ms | 825 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_9x1200_sync | 12.6 ms | 11.8 ms: 1.07x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_9x1200_checkpoint_sync | 270 ms | 254 ms: 1.06x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_25x300_sync | 10.9 ms | 10.3 ms: 1.06x faster | +-----------------------------------------+---------+-----------------------+ | react_agent_100x_checkpoint_sync | 789 ms | 743 ms: 1.06x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_9x1200_checkpoint | 268 ms | 254 ms: 1.06x faster | +-----------------------------------------+---------+-----------------------+ | wide_state_15x600_checkpoint_sync | 414 ms | 393 ms: 1.05x faster | +---------------------------------------