Skip to content

checkpoint postgres: add a shallow checkpointer #1303

checkpoint postgres: add a shallow checkpointer

checkpoint postgres: add a shallow checkpointer #1303

Triggered via pull request December 19, 2024 17:06
Status Success
Total duration 46m 47s
Artifacts

bench.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

1 warning and 2 notices
benchmark
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Benchmark results: libs/checkpoint-postgres/langgraph/checkpoint/postgres/__init__.py#L1
......................................... fanout_to_subgraph_10x: Mean +- std dev: 62.5 ms +- 1.4 ms ......................................... fanout_to_subgraph_10x_sync: Mean +- std dev: 53.2 ms +- 1.2 ms ......................................... fanout_to_subgraph_10x_checkpoint: Mean +- std dev: 75.3 ms +- 2.9 ms ......................................... fanout_to_subgraph_10x_checkpoint_sync: Mean +- std dev: 95.4 ms +- 2.2 ms ......................................... fanout_to_subgraph_100x: Mean +- std dev: 630 ms +- 35 ms ......................................... fanout_to_subgraph_100x_sync: Mean +- std dev: 518 ms +- 12 ms ......................................... fanout_to_subgraph_100x_checkpoint: Mean +- std dev: 806 ms +- 32 ms ......................................... fanout_to_subgraph_100x_checkpoint_sync: Mean +- std dev: 954 ms +- 21 ms ......................................... react_agent_10x: Mean +- std dev: 30.6 ms +- 0.7 ms ......................................... react_agent_10x_sync: Mean +- std dev: 22.8 ms +- 0.4 ms ......................................... react_agent_10x_checkpoint: Mean +- std dev: 38.0 ms +- 1.1 ms ......................................... react_agent_10x_checkpoint_sync: Mean +- std dev: 37.1 ms +- 0.6 ms ......................................... react_agent_100x: Mean +- std dev: 340 ms +- 6 ms ......................................... react_agent_100x_sync: Mean +- std dev: 274 ms +- 3 ms ......................................... react_agent_100x_checkpoint: Mean +- std dev: 853 ms +- 9 ms ......................................... react_agent_100x_checkpoint_sync: Mean +- std dev: 843 ms +- 10 ms ......................................... wide_state_25x300: Mean +- std dev: 22.8 ms +- 0.4 ms ......................................... wide_state_25x300_sync: Mean +- std dev: 14.7 ms +- 0.1 ms ......................................... wide_state_25x300_checkpoint: Mean +- std dev: 276 ms +- 16 ms ......................................... wide_state_25x300_checkpoint_sync: Mean +- std dev: 274 ms +- 13 ms ......................................... wide_state_15x600: Mean +- std dev: 26.7 ms +- 0.6 ms ......................................... wide_state_15x600_sync: Mean +- std dev: 17.1 ms +- 0.1 ms ......................................... wide_state_15x600_checkpoint: Mean +- std dev: 474 ms +- 15 ms ......................................... wide_state_15x600_checkpoint_sync: Mean +- std dev: 472 ms +- 15 ms ......................................... wide_state_9x1200: Mean +- std dev: 26.7 ms +- 0.6 ms ......................................... wide_state_9x1200_sync: Mean +- std dev: 17.1 ms +- 0.1 ms ......................................... wide_state_9x1200_checkpoint: Mean +- std dev: 309 ms +- 14 ms ......................................... wide_state_9x1200_checkpoint_sync: Mean +- std dev: 306 ms +- 14 ms
Comparison against main: libs/checkpoint-postgres/langgraph/checkpoint/postgres/__init__.py#L1
+-----------------------------------------+---------+-----------------------+ | Benchmark | main | changes | +=========================================+=========+=======================+ | wide_state_25x300_sync | 14.7 ms | 14.7 ms: 1.00x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_100x_sync | 273 ms | 274 ms: 1.00x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_10x | 30.5 ms | 30.6 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_100x | 338 ms | 340 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x_checkpoint_sync | 94.8 ms | 95.4 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | wide_state_9x1200 | 26.5 ms | 26.7 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | wide_state_15x600 | 26.5 ms | 26.7 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x_sync | 512 ms | 518 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_10x_checkpoint_sync | 36.7 ms | 37.1 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_10x_sync | 22.5 ms | 22.8 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x_checkpoint_sync | 943 ms | 954 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x_checkpoint | 74.4 ms | 75.3 ms: 1.01x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_10x_checkpoint | 37.5 ms | 38.0 ms: 1.02x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_100x_checkpoint_sync | 828 ms | 843 ms: 1.02x slower | +-----------------------------------------+---------+-----------------------+ | react_agent_100x_checkpoint | 835 ms | 853 ms: 1.02x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x_sync | 51.8 ms | 53.2 ms: 1.03x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_10x | 60.6 ms | 62.5 ms: 1.03x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x | 608 ms | 630 ms: 1.04x slower | +-----------------------------------------+---------+-----------------------+ | fanout_to_subgraph_100x_checkpoint | 758 ms | 806 ms: 1.06x slower | +-----------------------------------------+---------+-----------------------+ | Geometric mean | (ref) | 1.01x slower | +-----------------------------------------+---------+-----------------------+ Benchmark hidden because not significant (9): wide_state_15x600_checkpoint_sync, wide_state_25x300, wide_state_15x600_sync, wide_state_9x1200_sync, wide_state_15x600_checkpoint, wide_state_25x300_checkpoint_sync, wide_state_9x1200_checkpoint_sync, wide_state_9x1200_checkpoint, wide_state_25x300_checkpoint