-
Notifications
You must be signed in to change notification settings - Fork 385
Description
Is it possible to rerun the benchmark with the latest release? Since January 2024, the llrt binaries have grown 2+ MB. I've been doing some coldstart benchmarking to compare LLRT standard sdk with Node 22. My test using arm in us-east-2 instantiates a STS client and invokes get-caller-identity. It isn't quite the same as a ddb put, but it's similar enough that I'd expect the http and λ times to be close to yours on coldstarts. In the table below http means time recorded from the client and λ is time from the invocation logs like yours. Overhead means http - λ. I'm noticing that the overhead in the cold start is higher for LLRT than when using the Node 22 runtime by about 50 ms. I also notice that my p50 for http is ~40 ms higher than your benchmark, but λ is ~17 ms higher. I suspect the increase in binary size is the main contributor, but if you can rerun the benchmarks that will help narrow down what is causing the deltas.
| Test | memory | samples | p0(http) | p50(http) | p99(http) | p50(overhead) | p0(λ) | p50(λ) | p99(λ) |
|---|---|---|---|---|---|---|---|---|---|
| LLRT v.0.7.0-beta | 128 | 140 | 186 | 275 | 357 | 193 | 61 | 81 | 128 |
| Node 22 AwsLite | 512 | 140 | 344 | 409 | 492 | 144 | 208 | 260 | 326 |
| Node 22 v3 SDK w/optimizations | 512 | 140 | 369 | 447 | 543 | 144 | 248 | 300 | 363 |
| Node 22 v3 SDK minified | 512 | 140 | 460 | 547 | 640 | 151 | 320 | 393 | 464 |
| Node 22 v3 SDK from disk | 512 | 140 | 557 | 681 | 788 | 145 | 444 | 535 | 633 |