The OpBench Ethereum opcode benchmark framework: Design, implementation, validation and experiments
【Author】 Aldweesh, Amjad; Alharby, Maher; Mehrnezhad, Maryam; van Moorsel, Aad
【Source】PERFORMANCE EVALUATION
【影响因子】2.205
【Abstract】Ethereum is a public, permissionless blockchain, with Ether as cryptocurrency, and with Turing-complete smart contracts to implement arbitrarily complex distributed applications. Correct operation of Ethereum relies on appropriately rewarding participating nodes (called miners) for the resources used to run the blockchain. In Ethereum the Used Gas determines the reward miners receive for executing a smart contract. If the Used Gas is proportional to the cost of executing a smart contract, irrespective of the platform used, then all miners are incentivized identically. In this paper we propose OpBench, a platform-independent benchmark framework for Ethereum, as a lightweight approach to determine if for operational code (opcodes) the rewarded Used Gas is proportional to the invested CPU time. We implement OpBench for PyEthApp (in Python), Go-Ethereum (in GoLang) and Parity (in Rust). From the experiments we conclude that Used Gas is not always proportional to the required CPU, with up to an order of magnitude difference between opcodes. We also conclude that for most opcodes Parity performs the best of the three clients and that preference for Linux or Windows depends on the chosen Ethereum client software. (C) 2020 Elsevier B.V. All rights reserved.
【Keywords】Blockchain; Ethereum; Smart contract; Benchmark; Performance evaluation
【发表时间】2021 MAR
【收录时间】2022-01-02
【文献类型】
【主题类别】
--
评论