【Author】
Aldweesh, Amjad; Alharby, Maher; Mehrnezhad, Maryam; Van Moorsel, Aad
【Source】2019 IEEE INTERNATIONAL CONFERENCE ON BLOCKCHAIN (BLOCKCHAIN 2019)
【Abstract】Ethereum and other blockchains rely on miners contributing computational power to execute tasks such as the proof of work consensus mechanism and the execution and validation of smart contracts. Miners receive a fee, and for the correct operation of the blockchain, rewards should be proportional to the required investment (equipment, energy use, etc.). In Ethereum, the reward obtained for executing smart contracts is set statically, associating a fee with each operation code (opcode) in the smart contract. To determine whether fees are aligned with investments made, we propose OpBench, a platform-independent benchmarking approach. OpBench measures the CPU time required to execute opcodes in the Ethereum Virtual Machine. We implemented OpBench for the PyEthApp and Go-Ethereum clients, and present results for both platforms on three different machines and operating systems. The results show that the static fees set by Ethereum are not always proportional to the invested CPU time, with up to an order of magnitude difference across opcodes. The results also show a markable difference in performance between clients, with the Go client outperforming the Python client across machines.
【Keywords】Blockchain; Ethereum; Smart Contract; Benchmark; Performance
评论