More performance improvements in checkpointing and channels #61
Triggered via pull request
September 13, 2024 00:18
Status
Success
Total duration
32m 22s
Artifacts
–
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/checkpoint-postgres/langgraph/checkpoint/postgres/base.py#L1
.........................................
fanout_to_subgraph_10x: Mean +- std dev: 58.5 ms +- 1.5 ms
.........................................
fanout_to_subgraph_10x_checkpoint: Mean +- std dev: 96.2 ms +- 7.4 ms
.........................................
fanout_to_subgraph_100x: Mean +- std dev: 591 ms +- 21 ms
.........................................
fanout_to_subgraph_100x_checkpoint: Mean +- std dev: 948 ms +- 23 ms
.........................................
react_agent_10x: Mean +- std dev: 44.2 ms +- 0.9 ms
.........................................
react_agent_10x_checkpoint: Mean +- std dev: 78.3 ms +- 1.5 ms
.........................................
react_agent_100x: Mean +- std dev: 792 ms +- 12 ms
.........................................
react_agent_100x_checkpoint: Mean +- std dev: 2.80 sec +- 0.10 sec
.........................................
wide_state_25x300: Mean +- std dev: 21.0 ms +- 0.2 ms
.........................................
wide_state_25x300_checkpoint: Mean +- std dev: 577 ms +- 15 ms
.........................................
wide_state_15x600: Mean +- std dev: 24.4 ms +- 0.3 ms
.........................................
wide_state_15x600_checkpoint: Mean +- std dev: 1.04 sec +- 0.03 sec
.........................................
wide_state_9x1200: Mean +- std dev: 24.4 ms +- 0.4 ms
.........................................
wide_state_9x1200_checkpoint: Mean +- std dev: 663 ms +- 18 ms
|
Comparison against main:
libs/checkpoint-postgres/langgraph/checkpoint/postgres/base.py#L1
+------------------------------------+----------+-----------------------+
| Benchmark | main | changes |
+====================================+==========+=======================+
| fanout_to_subgraph_100x_checkpoint | 1.15 sec | 948 ms: 1.21x faster |
+------------------------------------+----------+-----------------------+
| fanout_to_subgraph_10x_checkpoint | 107 ms | 96.2 ms: 1.11x faster |
+------------------------------------+----------+-----------------------+
| fanout_to_subgraph_100x | 636 ms | 591 ms: 1.08x faster |
+------------------------------------+----------+-----------------------+
| fanout_to_subgraph_10x | 61.4 ms | 58.5 ms: 1.05x faster |
+------------------------------------+----------+-----------------------+
| Geometric mean | (ref) | 1.11x faster |
+------------------------------------+----------+-----------------------+
Ignored benchmarks (10) of out/changes.json: react_agent_100x, react_agent_100x_checkpoint, react_agent_10x, react_agent_10x_checkpoint, wide_state_15x600, wide_state_15x600_checkpoint, wide_state_25x300, wide_state_25x300_checkpoint, wide_state_9x1200, wide_state_9x1200_checkpoint
|