Skip to content

Commit 7e0b229

Browse files
authored
chore: alter number of blocks for alpha (#16587)
Had to update the number of blocks that we loop over for the gas benchmarks, as when running with the `GAS_REPORT` flags it will be more expensive and use all the gas. To fix, simply altered to use 150 blocks for alpha and 200 for ignition.
2 parents 2640bfe + 7c4f2cb commit 7e0b229

File tree

3 files changed

+91
-82
lines changed

3 files changed

+91
-82
lines changed

l1-contracts/gas_benchmark.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@
1616

1717
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
1818
|----------------------|---------|---------|---------------|--------------|
19-
| propose | 142,569 | 157,723 | 1,060 | 16,960 |
20-
| submitEpochRootProof | 567,842 | 591,073 | 3,812 | 60,992 |
21-
| setupEpoch | 31,585 | 108,397 | - | - |
19+
| propose | 141,065 | 157,701 | 1,060 | 16,960 |
20+
| submitEpochRootProof | 556,226 | 591,073 | 3,812 | 60,992 |
21+
| setupEpoch | 31,172 | 110,940 | - | - |
2222

23-
**Avg Gas Cost per Second**: 869.2 gas/second
23+
**Avg Gas Cost per Second**: 858.8 gas/second
2424
*Epoch duration*: 2h 33m 36s
2525

2626
### Validators (IGNITION)
2727

2828
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
2929
|----------------------|---------|---------|---------------|--------------|
30-
| propose | 207,888 | 227,249 | 2,852 | 45,632 |
31-
| submitEpochRootProof | 679,690 | 701,700 | 5,092 | 81,472 |
32-
| aggregate3 | 245,657 | 265,021 | - | - |
33-
| setupEpoch | 38,145 | 327,074 | - | - |
30+
| propose | 208,357 | 227,227 | 2,852 | 45,632 |
31+
| submitEpochRootProof | 668,084 | 701,700 | 5,092 | 81,472 |
32+
| aggregate3 | 266,755 | 282,020 | - | - |
33+
| setupEpoch | 36,638 | 329,613 | - | - |
3434

35-
**Avg Gas Cost per Second**: 1,234.4 gas/second
35+
**Avg Gas Cost per Second**: 1,234.2 gas/second
3636
*Epoch duration*: 2h 33m 36s
3737

3838

@@ -52,22 +52,22 @@
5252

5353
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
5454
|----------------------|---------|---------|---------------|--------------|
55-
| propose | 219,926 | 235,984 | 1,060 | 16,960 |
56-
| submitEpochRootProof | 687,107 | 726,001 | 3,812 | 60,992 |
57-
| setupEpoch | 32,376 | 108,397 | - | - |
55+
| propose | 219,686 | 235,962 | 1,060 | 16,960 |
56+
| submitEpochRootProof | 682,260 | 726,001 | 3,812 | 60,992 |
57+
| setupEpoch | 31,832 | 110,940 | - | - |
5858

59-
**Avg Gas Cost per Second**: 7,330.1 gas/second
59+
**Avg Gas Cost per Second**: 7,314.5 gas/second
6060
*Epoch duration*: 0h 19m 12s
6161

6262
### Validators (Alpha)
6363

6464
| Function | Avg Gas | Max Gas | Calldata Size | Calldata Gas |
6565
|----------------------|---------|---------|---------------|--------------|
66-
| propose | 334,960 | 352,320 | 4,580 | 73,280 |
67-
| submitEpochRootProof | 895,025 | 933,081 | 6,308 | 100,928 |
68-
| aggregate3 | 373,092 | 390,455 | - | - |
69-
| setupEpoch | 49,728 | 542,190 | - | - |
66+
| propose | 335,463 | 352,298 | 4,580 | 73,280 |
67+
| submitEpochRootProof | 890,592 | 933,081 | 6,308 | 100,928 |
68+
| aggregate3 | 393,732 | 406,787 | - | - |
69+
| setupEpoch | 46,292 | 544,725 | - | - |
7070

71-
**Avg Gas Cost per Second**: 10,901.5 gas/second
71+
**Avg Gas Cost per Second**: 10,904.8 gas/second
7272
*Epoch duration*: 0h 19m 12s
7373

l1-contracts/gas_benchmark_results.json

Lines changed: 63 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -2,126 +2,126 @@
22
"ignition": {
33
"no_validators": {
44
"propose": {
5-
"calls": 100,
6-
"min": 139463,
7-
"mean": 142569,
8-
"median": 142433,
9-
"max": 157723,
5+
"calls": 200,
6+
"min": 137813,
7+
"mean": 141065,
8+
"median": 139813,
9+
"max": 157701,
1010
"calldata_size": 1060,
1111
"calldata_gas": 16960
1212
},
1313
"setupEpoch": {
14-
"calls": 100,
15-
"min": 29235,
16-
"mean": 31585,
17-
"median": 29235,
18-
"max": 108397
14+
"calls": 200,
15+
"min": 29191,
16+
"mean": 31172,
17+
"median": 29191,
18+
"max": 110940
1919
},
2020
"submitEpochRootProof": {
21-
"calls": 2,
21+
"calls": 4,
2222
"min": 544611,
23-
"mean": 567842,
24-
"median": 567842,
23+
"mean": 556226,
24+
"median": 544611,
2525
"max": 591073,
2626
"calldata_size": 3812,
2727
"calldata_gas": 60992
2828
}
2929
},
3030
"validators": {
3131
"propose": {
32-
"calls": 100,
33-
"min": 201617,
34-
"mean": 207888,
35-
"median": 208237,
36-
"max": 227249,
32+
"calls": 200,
33+
"min": 201595,
34+
"mean": 208357,
35+
"median": 208245,
36+
"max": 227227,
3737
"calldata_size": 2852,
3838
"calldata_gas": 45632
3939
},
4040
"setupEpoch": {
41-
"calls": 100,
42-
"min": 29235,
43-
"mean": 38145,
44-
"median": 29235,
45-
"max": 327074
41+
"calls": 200,
42+
"min": 29191,
43+
"mean": 36638,
44+
"median": 29191,
45+
"max": 329613
4646
},
4747
"submitEpochRootProof": {
48-
"calls": 2,
49-
"min": 657681,
50-
"mean": 679690,
51-
"median": 679690,
48+
"calls": 4,
49+
"min": 655226,
50+
"mean": 668084,
51+
"median": 657706,
5252
"max": 701700,
5353
"calldata_size": 5092,
5454
"calldata_gas": 81472
5555
},
5656
"aggregate3": {
57-
"calls": 100,
58-
"min": 239377,
59-
"mean": 245657,
60-
"median": 245997,
61-
"max": 265021
57+
"calls": 57,
58+
"min": 259989,
59+
"mean": 266755,
60+
"median": 266907,
61+
"max": 282020
6262
}
6363
}
6464
},
6565
"alpha": {
6666
"no_validators": {
6767
"propose": {
68-
"calls": 100,
69-
"min": 212503,
70-
"mean": 219926,
71-
"median": 219136,
72-
"max": 235984,
68+
"calls": 150,
69+
"min": 212481,
70+
"mean": 219686,
71+
"median": 218499,
72+
"max": 235962,
7373
"calldata_size": 1060,
7474
"calldata_gas": 16960
7575
},
7676
"setupEpoch": {
77-
"calls": 100,
78-
"min": 29235,
79-
"mean": 32376,
80-
"median": 29235,
81-
"max": 108397
77+
"calls": 150,
78+
"min": 29191,
79+
"mean": 31832,
80+
"median": 29191,
81+
"max": 110940
8282
},
8383
"submitEpochRootProof": {
84-
"calls": 3,
84+
"calls": 4,
8585
"min": 667612,
86-
"mean": 687107,
87-
"median": 667708,
86+
"mean": 682260,
87+
"median": 667714,
8888
"max": 726001,
8989
"calldata_size": 3812,
9090
"calldata_gas": 60992
9191
}
9292
},
9393
"validators": {
9494
"propose": {
95-
"calls": 100,
96-
"min": 319383,
97-
"mean": 334960,
98-
"median": 335406,
99-
"max": 352320,
95+
"calls": 150,
96+
"min": 319361,
97+
"mean": 335463,
98+
"median": 335702,
99+
"max": 352298,
100100
"calldata_size": 4580,
101101
"calldata_gas": 73280
102102
},
103103
"setupEpoch": {
104-
"calls": 100,
105-
"min": 29235,
106-
"mean": 49728,
107-
"median": 29235,
108-
"max": 542190
104+
"calls": 150,
105+
"min": 29191,
106+
"mean": 46292,
107+
"median": 29191,
108+
"max": 544725
109109
},
110110
"submitEpochRootProof": {
111-
"calls": 3,
111+
"calls": 4,
112112
"min": 874800,
113-
"mean": 895025,
114-
"median": 877195,
113+
"mean": 890592,
114+
"median": 877244,
115115
"max": 933081,
116116
"calldata_size": 6308,
117117
"calldata_gas": 100928
118118
},
119119
"aggregate3": {
120-
"calls": 100,
121-
"min": 357518,
122-
"mean": 373092,
123-
"median": 373541,
124-
"max": 390455
120+
"calls": 55,
121+
"min": 382167,
122+
"mean": 393732,
123+
"median": 393570,
124+
"max": 406787
125125
}
126126
}
127127
}

l1-contracts/test/benchmark/happy.t.sol

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,8 @@ contract BenchmarkRollupTest is FeeModelTestPoints, DecoderBase {
132132
uint256 internal PROOFS_PER_EPOCH; // given as e2, for simple decimals, e.g., 200 = 2.00
133133
uint256 internal VOTING_ROUND_SIZE = 500;
134134

135+
bool internal IS_IGNITION;
136+
135137
Rollup internal rollup;
136138

137139
address internal coinbase = address(bytes20("MONEY MAKER"));
@@ -216,6 +218,8 @@ contract BenchmarkRollupTest is FeeModelTestPoints, DecoderBase {
216218
MANA_TARGET = 0;
217219
TARGET_COMMITTEE_SIZE = 24;
218220
PROOFS_PER_EPOCH = 200; // 2.00
221+
222+
IS_IGNITION = true;
219223
} else {
220224
full = load("single_tx_block_1");
221225

@@ -224,6 +228,8 @@ contract BenchmarkRollupTest is FeeModelTestPoints, DecoderBase {
224228
MANA_TARGET = 1e8;
225229
TARGET_COMMITTEE_SIZE = 48;
226230
PROOFS_PER_EPOCH = 200; // 2.00
231+
232+
IS_IGNITION = false;
227233
}
228234

229235
FeeLib.initialize(MANA_TARGET, EthValue.wrap(100));
@@ -460,9 +466,12 @@ contract BenchmarkRollupTest is FeeModelTestPoints, DecoderBase {
460466
Slot nextSlot = Slot.wrap(EPOCH_DURATION * 3 + 1);
461467
Epoch nextEpoch = Epoch.wrap(4);
462468
bool warmedUp = false;
469+
470+
uint256 stopAtBlock = IS_IGNITION ? 200 : 150;
471+
463472
// Loop through all of the L1 metadata
464473
for (uint256 i = 0; i < l1Metadata.length; i++) {
465-
if (rollup.getPendingBlockNumber() >= 200) {
474+
if (rollup.getPendingBlockNumber() >= stopAtBlock) {
466475
break;
467476
}
468477

0 commit comments

Comments
 (0)