You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: EIPS/eip-4844.md
+13-13Lines changed: 13 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,7 +49,7 @@ Compared to full data sharding, this EIP has a reduced cap on the number of thes
49
49
|`POINT_EVALUATION_PRECOMPILE_GAS`|`50000`|
50
50
|`MAX_BLOB_GAS_PER_BLOCK`|`786432`|
51
51
|`TARGET_BLOB_GAS_PER_BLOCK`|`393216`|
52
-
|`MIN_BLOB_BASE_FEE`|`1`|
52
+
|`MIN_BLOB_BASE_FEE_PER_GAS`|`1`|
53
53
|`BLOB_BASE_FEE_UPDATE_FRACTION`|`3338477`|
54
54
|`GAS_PER_BLOB`|`2**17`|
55
55
|`HASH_OPCODE_BYTE`|`Bytes1(0x49)`|
@@ -168,23 +168,23 @@ We introduce blob gas as a new type of gas. It is independent of normal gas and
168
168
We use the `excess_blob_gas` header field to store persistent data needed to compute the blob gas base fee. For now, only blobs are priced in blob gas.
The block validity conditions are modified to include blob gas checks (see the [Execution layer validation](#execution-layer-validation) section below).
186
186
187
-
The actual `data_fee` as calculated via `calc_data_fee` is deducted from the sender balance before transaction execution and burned, and is not refunded in case of transaction failure.
187
+
The actual `blob_fee` as calculated via `calc_blob_fee` is deducted from the sender balance before transaction execution and burned, and is not refunded in case of transaction failure.
@@ -383,18 +383,18 @@ However, the point evaluation happens inside a finite field, and it is only well
383
383
384
384
In the interest of not adding another precompile, we return the modulus and the polynomial degree directly from the point evaluation precompile. It can then be used by the caller. It is also "free" in that the caller can just ignore this part of the return value without incurring an extra cost -- systems that remain upgradable for the foreseeable future will likely use this route for now.
385
385
386
-
### Blob base fee update rule
386
+
### Blob base fee per gas update rule
387
387
388
-
The blob base fee update rule is intended to approximate the formula `blob_base_fee = MIN_BLOB_BASE_FEE * e**(excess_blob_gas / BLOB_BASE_FEE_UPDATE_FRACTION)`,
388
+
The blob base fee per gas update rule is intended to approximate the formula `blob_base_fee_per_gas = MIN_BLOB_BASE_FEE_PER_GAS * e**(excess_blob_gas / BLOB_BASE_FEE_UPDATE_FRACTION)`,
389
389
where `excess_blob_gas` is the total "extra" amount of blob gas that the chain has consumed relative to the "targeted" number (`TARGET_BLOB_GAS_PER_BLOCK` per block).
390
-
Like EIP-1559, it's a self-correcting formula: as the excess goes higher, the `blob_base_fee` increases exponentially, reducing usage and eventually forcing the excess back down.
390
+
Like EIP-1559, it's a self-correcting formula: as the excess goes higher, the `blob_base_fee_per_gas` increases exponentially, reducing usage and eventually forcing the excess back down.
391
391
392
392
The block-by-block behavior is roughly as follows.
393
393
If block `N` consumes `X` blob gas, then in block `N+1``excess_blob_gas` increases by `X - TARGET_BLOB_GAS_PER_BLOCK`,
394
-
and so the `blob_base_fee` of block `N+1` increases by a factor of `e**((X - TARGET_BLOB_GAS_PER_BLOCK) / BLOB_BASE_FEE_UPDATE_FRACTION)`.
394
+
and so the `blob_base_fee_per_gas` of block `N+1` increases by a factor of `e**((X - TARGET_BLOB_GAS_PER_BLOCK) / BLOB_BASE_FEE_UPDATE_FRACTION)`.
395
395
Hence, it has a similar effect to the existing EIP-1559, but is more "stable" in the sense that it responds in the same way to the same total usage regardless of how it's distributed.
396
396
397
-
The parameter `BLOB_BASE_FEE_UPDATE_FRACTION` controls the maximum rate of change of the blob base fee. It is chosen to target a maximum change rate of `e**(TARGET_BLOB_GAS_PER_BLOCK / BLOB_BASE_FEE_UPDATE_FRACTION) ≈ 1.125` per block.
397
+
The parameter `BLOB_BASE_FEE_UPDATE_FRACTION` controls the maximum rate of change of the blob base fee per gas. It is chosen to target a maximum change rate of `e**(TARGET_BLOB_GAS_PER_BLOCK / BLOB_BASE_FEE_UPDATE_FRACTION) ≈ 1.125` per block.
398
398
399
399
### Throughput
400
400
@@ -417,7 +417,7 @@ By only broadcasting announcements for blob transactions, receiving nodes will h
417
417
allowing them to throttle throughput to an acceptable level.
418
418
[EIP-5793](./eip-5793.md) will give further fine-grained control to nodes by extending the `NewPooledTransactionHashes` announcement messages to include the transaction type and size.
419
419
420
-
In addition, we recommend including a 1.1x blob base fee bump requirement to the mempool transaction replacement rules.
420
+
In addition, we recommend including a 1.1x blob base fee per gas bump requirement to the mempool transaction replacement rules.
0 commit comments