Extending the PCIe Interface with Parallel Compression/Decompression Hardware for Energy and Performance Optimization

Main Article Content

Mohd Amiruddin Zainol, Jose Luis Nunez-Yanez

Abstract

PCIe is a high-performing interface used to move data from a central host PC to an accelerator such as Field Programmable Gate Arrays (FPGA). This interface allows a system to perform fast data transfers in High-Performance Computing (HPC) and provide a performance boost. However, HPC systems normally require large datasets, and in these situations PCIe can become a bottleneck. To address this issue, we propose an open-source hardware compression/decompression system that can be used to adapt with continuously-streamed data with low latency and high throughput. We implement a compressor and decompressor engines on FPGA, scale up with multiple engines working in parallel, and evaluate the energy reduction and performance with different numbers of multiple engines. To alleviate the performance bottleneck in the processor acting as a controller, we propose a hardware scheduler to fairly distribute the datasets among the engines. Our design reduces the transmission time in PCIe, and the results show an energy reduction of up to 48% in the PCIe transfers, thanks to the decrease in the number of bits that have to be transmitted. The overhead in terms of latency is maintained to a minimum and user selectable depending on the tolerances of the intended application.

Article Details

How to Cite
, M. A. Z. J. L. N.-Y. (2018). Extending the PCIe Interface with Parallel Compression/Decompression Hardware for Energy and Performance Optimization. International Journal on Future Revolution in Computer Science &Amp; Communication Engineering, 4(2), 405–419. Retrieved from http://www.ijfrcsce.org/index.php/ijfrcsce/article/view/1233
Section
Articles