SIMD extensions for ethereum virtual machine - Bozkurt, Aykut. (Thesis (M.S.) - Bogazici University. Institute for Graduate Studies in Science and Engineering, 2022., 2022)
Ethereum and its smart contracts have been growing their popularity. Therefore, there is a need for higher transaction throughput in every other day. Ethereum Virtual Machine is a Turing-complete computer which executes Ethereum bytecode encoded instructions of smart contracts. Every instruction uses 256-bit wide stack items as input and output operands. They pop required inputs from the stack and push the result into it after an execution. A gas consumption cost is assigned to them relative to the complexity of the instruction as it prevents halting problem. Consumed gas multiplied by gas price is charged as transaction fee by the transaction sender, so that Denial of Service (DoS) attacks can be avoided. Current supported instruction set has some weaknesses. Firstly, transactions containing large size of vector operations require excessive amount of gas cost. Secondly, transaction throughput is limited because of no parallelism in execution. Therefore, we extend the instruction set by Single Instruction Multiple Data (SIMD) operations to benefit from data level parallelism. We show how EVM can benefit from the SIMD instructions by lowering gas consumption and increasing transaction throughput.
Keywords: Ethereum (Distributed computing platform); SIMD (Computer architecture)