checkpoint postgres: add a shallow checkpointer #1310
Triggered via pull request
December 19, 2024 23:31
Status
Success
Total duration
45m 45s
Artifacts
–
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: 60.3 ms +- 1.2 ms
.........................................
fanout_to_subgraph_10x_sync: Mean +- std dev: 51.6 ms +- 0.6 ms
.........................................
fanout_to_subgraph_10x_checkpoint: Mean +- std dev: 73.2 ms +- 1.2 ms
.........................................
fanout_to_subgraph_10x_checkpoint_sync: Mean +- std dev: 93.4 ms +- 1.4 ms
.........................................
fanout_to_subgraph_100x: Mean +- std dev: 611 ms +- 29 ms
.........................................
fanout_to_subgraph_100x_sync: Mean +- std dev: 505 ms +- 7 ms
.........................................
fanout_to_subgraph_100x_checkpoint: Mean +- std dev: 766 ms +- 26 ms
.........................................
fanout_to_subgraph_100x_checkpoint_sync: Mean +- std dev: 933 ms +- 18 ms
.........................................
react_agent_10x: Mean +- std dev: 30.4 ms +- 0.6 ms
.........................................
react_agent_10x_sync: Mean +- std dev: 22.6 ms +- 0.3 ms
.........................................
react_agent_10x_checkpoint: Mean +- std dev: 37.6 ms +- 0.8 ms
.........................................
react_agent_10x_checkpoint_sync: Mean +- std dev: 36.6 ms +- 0.4 ms
.........................................
react_agent_100x: Mean +- std dev: 337 ms +- 7 ms
.........................................
react_agent_100x_sync: Mean +- std dev: 272 ms +- 2 ms
.........................................
react_agent_100x_checkpoint: Mean +- std dev: 840 ms +- 6 ms
.........................................
react_agent_100x_checkpoint_sync: Mean +- std dev: 838 ms +- 9 ms
.........................................
wide_state_25x300: Mean +- std dev: 22.6 ms +- 0.5 ms
.........................................
wide_state_25x300_sync: Mean +- std dev: 14.7 ms +- 0.2 ms
.........................................
wide_state_25x300_checkpoint: Mean +- std dev: 274 ms +- 14 ms
.........................................
wide_state_25x300_checkpoint_sync: Mean +- std dev: 273 ms +- 13 ms
.........................................
wide_state_15x600: Mean +- std dev: 26.4 ms +- 0.5 ms
.........................................
wide_state_15x600_sync: Mean +- std dev: 17.0 ms +- 0.3 ms
.........................................
wide_state_15x600_checkpoint: Mean +- std dev: 471 ms +- 13 ms
.........................................
wide_state_15x600_checkpoint_sync: Mean +- std dev: 471 ms +- 14 ms
.........................................
wide_state_9x1200: Mean +- std dev: 26.3 ms +- 0.5 ms
.........................................
wide_state_9x1200_sync: Mean +- std dev: 17.0 ms +- 0.2 ms
.........................................
wide_state_9x1200_checkpoint: Mean +- std dev: 308 ms +- 13 ms
.........................................
wide_state_9x1200_checkpoint_sync: Mean +- std dev: 309 ms +- 16 ms
|
Comparison against main:
libs/checkpoint-postgres/langgraph/checkpoint/postgres/__init__.py#L1
+-----------------------------------------+---------+-----------------------+
| Benchmark | main | changes |
+=========================================+=========+=======================+
| fanout_to_subgraph_10x_checkpoint_sync | 97.0 ms | 93.4 ms: 1.04x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_100x_checkpoint | 791 ms | 766 ms: 1.03x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_10x_checkpoint | 75.3 ms | 73.2 ms: 1.03x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_9x1200 | 27.0 ms | 26.3 ms: 1.03x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_100x_checkpoint | 858 ms | 840 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_10x_sync | 52.6 ms | 51.6 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_10x_sync | 23.0 ms | 22.6 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_10x | 61.3 ms | 60.3 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_10x_checkpoint | 38.2 ms | 37.6 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_10x_checkpoint_sync | 37.1 ms | 36.6 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_100x_checkpoint_sync | 948 ms | 933 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_9x1200_sync | 17.3 ms | 17.0 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_10x | 30.9 ms | 30.4 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_100x_sync | 513 ms | 505 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_100x | 619 ms | 611 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_15x600 | 26.7 ms | 26.4 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_100x | 341 ms | 337 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_25x300 | 22.8 ms | 22.6 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_15x600_sync | 17.1 ms | 17.0 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_100x_sync | 273 ms | 272 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| Geometric mean | (ref) | 1.01x faster |
+-----------------------------------------+---------+-----------------------+
Benchmark hidden because not significant (8): wide_state_25x300_checkpoint, wide_state_9x1200_checkpoint, react_agent_100x_checkpoint_sync, wide_state_25x300_sync, wide_state_15x600_checkpoint, wide_state_25x300_checkpoint_sync, wide_state_15x600_checkpoint_sync, wide_state_9x1200_checkpoint_sync
|