Skip to content

Commit c78ad70

Browse files
committed
chore(fast-inbox): refresh l1 gas benchmarks after the submit-path header dedupe (A-1373)
Regenerates gas_benchmark.md, gas_benchmark_results.json and gas_report.json at the top of the stack so the committed numbers reflect the deduped checkpoint-header verification on submitEpochRootProof, the explicit end inbox rolling-hash check, and the packing of the inbox consumption counts into the checkpoint log's slot-number slot. Benchmark averages (no L1-to-L2 messages consumed in this scenario): - No validators: propose 203,758 -> 199,557; submitEpochRootProof 1,137,731 -> 994,378. - Validators: propose 332,170 -> 327,969; submitEpochRootProof 1,719,902 -> 1,575,427. The gas report, whose Rollup suite does consume messages, moves further on propose: 289,076 -> 266,918 average.
1 parent 1bd1802 commit c78ad70

3 files changed

Lines changed: 66 additions & 66 deletions

File tree

l1-contracts/gas_benchmark.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,24 @@
1212

1313
## No Validators
1414

15-
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
16-
|----------------------|-----------|-----------|---------------|--------------|
17-
| propose | 203,758 | 229,942 | 996 | 15,936 |
18-
| submitEpochRootProof | 1,137,731 | 1,172,632 | 14,148 | 226,368 |
19-
| setupEpoch | 32,042 | 113,837 | - | - |
15+
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
16+
|----------------------|---------|-----------|---------------|--------------|
17+
| propose | 199,557 | 225,741 | 996 | 15,936 |
18+
| submitEpochRootProof | 994,378 | 1,032,871 | 14,148 | 226,368 |
19+
| setupEpoch | 32,042 | 113,837 | - | - |
2020

21-
**Avg Gas Cost per Second**: 3,831.5 gas/second
21+
**Avg Gas Cost per Second**: 3,648.7 gas/second
2222
*Epoch duration*: 0h 38m 24s
2323

2424
## Validators
2525

2626
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
2727
|----------------------|-----------|-----------|---------------|--------------|
28-
| propose | 332,170 | 359,988 | 4,516 | 72,256 |
29-
| submitEpochRootProof | 1,719,902 | 1,814,124 | 16,644 | 266,304 |
30-
| aggregate3 | 380,770 | 394,144 | - | - |
28+
| propose | 327,969 | 355,787 | 4,516 | 72,256 |
29+
| submitEpochRootProof | 1,575,427 | 1,673,267 | 16,644 | 266,304 |
30+
| aggregate3 | 376,569 | 389,943 | - | - |
3131
| setupEpoch | 46,504 | 547,670 | - | - |
3232

33-
**Avg Gas Cost per Second**: 6,126.6 gas/second
33+
**Avg Gas Cost per Second**: 5,942.9 gas/second
3434
*Epoch duration*: 0h 38m 24s
3535

l1-contracts/gas_benchmark_results.json

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
"no_validators": {
33
"propose": {
44
"calls": 150,
5-
"min": 190114,
6-
"mean": 203758,
7-
"median": 199503,
8-
"max": 229942,
5+
"min": 185913,
6+
"mean": 199557,
7+
"median": 195302,
8+
"max": 225741,
99
"calldata_size": 996,
1010
"calldata_gas": 15936
1111
},
@@ -18,21 +18,21 @@
1818
},
1919
"submitEpochRootProof": {
2020
"calls": 4,
21-
"min": 1120225,
22-
"mean": 1137731,
23-
"median": 1129034,
24-
"max": 1172632,
21+
"min": 975675,
22+
"mean": 994378,
23+
"median": 984484,
24+
"max": 1032871,
2525
"calldata_size": 14148,
2626
"calldata_gas": 226368
2727
}
2828
},
2929
"validators": {
3030
"propose": {
3131
"calls": 150,
32-
"min": 309831,
33-
"mean": 332170,
34-
"median": 331624,
35-
"max": 359988,
32+
"min": 305630,
33+
"mean": 327969,
34+
"median": 327423,
35+
"max": 355787,
3636
"calldata_size": 4516,
3737
"calldata_gas": 72256
3838
},
@@ -45,19 +45,19 @@
4545
},
4646
"submitEpochRootProof": {
4747
"calls": 4,
48-
"min": 1609349,
49-
"mean": 1719902,
50-
"median": 1728067,
51-
"max": 1814124,
48+
"min": 1463669,
49+
"mean": 1575427,
50+
"median": 1582387,
51+
"max": 1673267,
5252
"calldata_size": 16644,
5353
"calldata_gas": 266304
5454
},
5555
"aggregate3": {
5656
"calls": 55,
57-
"min": 369652,
58-
"mean": 380770,
59-
"median": 380454,
60-
"max": 394144
57+
"min": 365451,
58+
"mean": 376569,
59+
"median": 376253,
60+
"max": 389943
6161
}
6262
}
6363
}

l1-contracts/gas_report.json

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -7,28 +7,28 @@
77
},
88
"functions": {
99
"getBucket(uint256)": {
10-
"calls": 4665,
10+
"calls": 4667,
1111
"min": 7414,
1212
"mean": 7414,
1313
"median": 7414,
1414
"max": 7414
1515
},
1616
"getCurrentBucketSeq()": {
17-
"calls": 4665,
17+
"calls": 4667,
1818
"min": 408,
1919
"mean": 1407,
2020
"median": 408,
2121
"max": 2408
2222
},
2323
"getFeeAssetPortal()": {
24-
"calls": 2585,
24+
"calls": 2586,
2525
"min": 212,
2626
"mean": 212,
2727
"median": 212,
2828
"max": 212
2929
},
3030
"sendL2Message((bytes32,uint256),bytes32,bytes32)": {
31-
"calls": 37312,
31+
"calls": 37328,
3232
"min": 41480,
3333
"mean": 44796,
3434
"median": 41480,
@@ -60,7 +60,7 @@
6060
},
6161
"functions": {
6262
"owner()": {
63-
"calls": 5170,
63+
"calls": 5172,
6464
"min": 397,
6565
"mean": 397,
6666
"median": 397,
@@ -83,14 +83,14 @@
8383
"max": 7073
8484
},
8585
"getRewardDistributor()": {
86-
"calls": 2585,
86+
"calls": 2586,
8787
"min": 420,
8888
"mean": 420,
8989
"median": 420,
9090
"max": 420
9191
},
9292
"owner()": {
93-
"calls": 7755,
93+
"calls": 7758,
9494
"min": 353,
9595
"mean": 353,
9696
"median": 353,
@@ -118,11 +118,11 @@
118118
"contract": "test/RollupWithPreheating.sol:RollupWithPreheating",
119119
"deployment": {
120120
"gas": 0,
121-
"size": 42780
121+
"size": 42877
122122
},
123123
"functions": {
124124
"archive()": {
125-
"calls": 2332,
125+
"calls": 2333,
126126
"min": 4641,
127127
"mean": 4641,
128128
"median": 4641,
@@ -136,14 +136,14 @@
136136
"max": 2509
137137
},
138138
"getCheckpoint(uint256)": {
139-
"calls": 878,
140-
"min": 29387,
141-
"mean": 29387,
142-
"median": 29387,
143-
"max": 29387
139+
"calls": 879,
140+
"min": 27343,
141+
"mean": 27343,
142+
"median": 27343,
143+
"max": 27343
144144
},
145145
"getCheckpointReward()": {
146-
"calls": 2588,
146+
"calls": 2589,
147147
"min": 1128,
148148
"mean": 1133,
149149
"median": 1128,
@@ -178,11 +178,11 @@
178178
"max": 2486
179179
},
180180
"getEpochProofPublicInputs(uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],bytes)": {
181-
"calls": 3,
182-
"min": 18139,
183-
"mean": 37732,
184-
"median": 24756,
185-
"max": 70301
181+
"calls": 4,
182+
"min": 16751,
183+
"mean": 35891,
184+
"median": 26547,
185+
"max": 73720
186186
},
187187
"getEthPerFeeAsset()": {
188188
"calls": 2,
@@ -192,14 +192,14 @@
192192
"max": 11043
193193
},
194194
"getFeeAssetPortal()": {
195-
"calls": 4658,
195+
"calls": 4660,
196196
"min": 566,
197197
"mean": 1456,
198198
"median": 566,
199199
"max": 2566
200200
},
201201
"getInbox()": {
202-
"calls": 9069,
202+
"calls": 9073,
203203
"min": 2543,
204204
"mean": 2543,
205205
"median": 2543,
@@ -213,9 +213,9 @@
213213
"max": 9086
214214
},
215215
"getManaMinFeeAt(uint256,bool)": {
216-
"calls": 2335,
216+
"calls": 2336,
217217
"min": 27032,
218-
"mean": 28690,
218+
"mean": 28689,
219219
"median": 27032,
220220
"max": 32050
221221
},
@@ -269,32 +269,32 @@
269269
"max": 5981
270270
},
271271
"getTimestampForSlot(uint256)": {
272-
"calls": 2441,
272+
"calls": 2442,
273273
"min": 2808,
274274
"mean": 2808,
275275
"median": 2808,
276276
"max": 2808
277277
},
278278
"getVersion()": {
279-
"calls": 4917,
279+
"calls": 4919,
280280
"min": 499,
281281
"mean": 1447,
282282
"median": 499,
283283
"max": 2499
284284
},
285285
"owner()": {
286-
"calls": 5171,
286+
"calls": 5173,
287287
"min": 533,
288288
"mean": 533,
289289
"median": 533,
290290
"max": 2533
291291
},
292292
"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)": {
293-
"calls": 2338,
293+
"calls": 2339,
294294
"min": 0,
295-
"mean": 289076,
296-
"median": 305737,
297-
"max": 349647
295+
"mean": 266918,
296+
"median": 284436,
297+
"max": 325546
298298
},
299299
"prune()": {
300300
"calls": 6,
@@ -313,14 +313,14 @@
313313
"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))": {
314314
"calls": 876,
315315
"min": 58286,
316-
"mean": 380240,
317-
"median": 384326,
318-
"max": 427471
316+
"mean": 376918,
317+
"median": 382965,
318+
"max": 421657
319319
},
320320
"updateManaTarget(uint256)": {
321321
"calls": 512,
322322
"min": 26051,
323-
"mean": 28651,
323+
"mean": 28652,
324324
"median": 27293,
325325
"max": 31299
326326
}
@@ -334,7 +334,7 @@
334334
},
335335
"functions": {
336336
"isAllBeneficiariesAllowed()": {
337-
"calls": 2585,
337+
"calls": 2586,
338338
"min": 404,
339339
"mean": 404,
340340
"median": 404,

0 commit comments

Comments
 (0)