Hardware Specialization for Transaction Processing
Kangnyeon Kim · TSpace (University of Toronto) · 2019
Hardware specialization has been considered as a promising way to overcome the power wall, ushering in heterogeneous computing paradigm. Meanwhile, several trends, such as cloud computing and advanced reconfigurable computing technology (FPGA), are converging to eliminate the barriers to custom hardware deployment, allowing it to be both technologically and economically feasible. In this thesis, we report a case of hardware specialization for OLTP databases and present a fast and power-efficient transaction processing system, called BionicDB. We first discuss the main challenges of modern software OLTP systems on general-purpose CPUs: frequent memory stalls from indexing and unscalable inter-worker communication. We then design and implement several hardware acceleration techniques to address the problems. Also, we develop a custom processor to deal with heavy control-flow, such as dynamic loops and conditional branches, in transaction logic and tightly integrate it with the acceleration fabric, comprising a hybrid processor-accelerator (software-hardware) architecture. We build BionicDB on FPGA and show that it performs faster or comparable to state-of-the-art software OLTP systems with an order of magnitude higher power-efficiency inherently offered by FPGA.