Mining Bitcoins using a Heterogeneous Computer Architecture
Abstract
Recent years have seen the emergence of a new class of currencies, calledcryptocurrencies. These currencies use cryptography to provide securityand peer-to-peer networking to provide a decentralized system. Bitcoin isthe most popular of these currencies. It uses a two-passSHA-256 hash at its core. Producing new bitcoins is done through a processreferred to as "mining", which involves a brute-force search for a hash witha specific value. This process requires large amounts of computing power.
Current-generation hardware for bitcoin mining includes highly-optimizedASIC chips which provide huge amounts of performance. However, designers ofsuch chips are having problems with delivering enough power and coolingto the chips. To alleviate this problem, this thesis looks at the possibilitiesof using heterogeneous computing to reduce power consumption and produce a moreenergy-efficient mining solution.
A SHA-256 accelerator and a DMA module is developed and integrated into a tile forthe Single-ISA Heterogeneous MAny-core Computer, SHMAC, and a system withmultiple cores is used to exploit the thread-level parallelism provided bythe platform. The system is tested using a benchmark to find out what performanceand energy efficiency can be expected when using the system for bitcoin mining.
The results show a maximum performance of 175,7 kH/s when running the benchmarkapplication on 14 cores using the SHA-256 accelerator and the DMA module. The bestenergy efficiency was obtained when running on 14 cores without the DMA enabled,at 163,2 kH/J. The results does not compare well to specialized FPGA-basedbitcoin miners, but demonstrates the SHMAC platform's large degree of thread-level parallelismwhich can be better exploited in other applications.