mirror of https://github.com/status-im/EIPs.git
Update eip-616.md
This commit is contained in:
parent
d31597eaa1
commit
07b0caea58
|
@ -127,7 +127,7 @@ subtract | 12 _N_ + 3 |27 | 51 | 99
|
|||
multiply | 28 _N_**2 + 11 _N_ + 3 | 137 | 495 |1883
|
||||
divide | 15 _N_**2 + 119 _N_ + 111 | 409 | 827 | 2023
|
||||
|
||||
The remaining operations are of about the same complexity as addition and subtraction, or less. Given that JUMPDEST is a no-op, and is assigned a gas price of 1, this can be taken as the overhead of the interpreter. All of the arithmetic operations are assigned the same gas price of 5, for a remaining runtime of 4. The interpreter loop itself takes about 6 to 8 C instructions, so ADD and SUB are reasonably priced, but MUL is some 5 to 21 times slower than ADD or SUB, and DIV is some 18 to 35 times slower, so they are clearly mispriced.
|
||||
The remaining operations are of about the same complexity as addition and subtraction, or less. Given that JUMPDEST is a no-op, and is assigned a gas price of 1, this can be taken as the overhead of the interpreter. All of the arithmetic operations are assigned the same gas price of 5, for a remaining runtime of 4. The interpreter loop itself takes about 6 to 8 C instructions, so ADD and SUB are reasonably priced, but MUL is some 5 to 21 times slower than ADD or SUB, and DIV is some 15 to 23 times slower, so they are clearly mispriced.
|
||||
|
||||
By comparison, on most [Intel](https://software.intel.com/sites/landingpage/IntrinsicsGuide) and [ARM](https://developer.arm.com/docs/100166_0001/latest/programmers-model/instruction-set-summary/table-of-processor-instructions) SIMD units instructions take approximately the following cycle counts, independent of register width.
|
||||
|
||||
|
|
Loading…
Reference in New Issue