Implementing and Evaluating an Heterogeneous, Scalable, Tridiagonal Linear System Solver with OpenCL to Target FPGAs, GPUs, and CPUs

Joint Authors

Macintosh, Hamish J.
Banks, Jasmine E.
Kelson, Neil A.

Source

International Journal of Reconfigurable Computing

Issue

Vol. 2019, Issue 2019 (31 Dec. 2019), pp.1-13, 13 p.

Publisher

Hindawi Publishing Corporation

Publication Date

2019-10-13

Country of Publication

Egypt

No. of Pages

13

Main Subjects

Information Technology and Computer Science

Abstract EN

Solving diagonally dominant tridiagonal linear systems is a common problem in scientific high-performance computing (HPC).

Furthermore, it is becoming more commonplace for HPC platforms to utilise a heterogeneous combination of computing devices.

Whilst it is desirable to design faster implementations of parallel linear system solvers, power consumption concerns are increasing in priority.

This work presents the oclspkt routine.

The oclspkt routine is a heterogeneous OpenCL implementation of the truncated SPIKE algorithm that can use FPGAs, GPUs, and CPUs to concurrently accelerate the solving of diagonally dominant tridiagonal linear systems.

The routine is designed to solve tridiagonal systems of any size and can dynamically allocate optimised workloads to each accelerator in a heterogeneous environment depending on the accelerator’s compute performance.

The truncated SPIKE FPGA solver is developed first for optimising OpenCL device kernel performance, global memory bandwidth, and interleaved host to device memory transactions.

The FPGA OpenCL kernel code is then refactored and optimised to best exploit the underlying architecture of the CPU and GPU.

An optimised TDMA OpenCL kernel is also developed to act as a serial baseline performance comparison for the parallel truncated SPIKE kernel since no FPGA tridiagonal solver capable of solving large tridiagonal systems was available at the time of development.

The individual GPU, CPU, and FPGA solvers of the oclspkt routine are 110%, 150%, and 170% faster, respectively, than comparable device-optimised third-party solvers and applicable baselines.

Assessing heterogeneous combinations of compute devices, the GPU + FPGA combination is found to have the best compute performance and the FPGA-only configuration is found to have the best overall estimated energy efficiency.

American Psychological Association (APA)

Macintosh, Hamish J.& Banks, Jasmine E.& Kelson, Neil A.. 2019. Implementing and Evaluating an Heterogeneous, Scalable, Tridiagonal Linear System Solver with OpenCL to Target FPGAs, GPUs, and CPUs. International Journal of Reconfigurable Computing،Vol. 2019, no. 2019, pp.1-13.
https://search.emarefa.net/detail/BIM-1168485

Modern Language Association (MLA)

Macintosh, Hamish J.…[et al.]. Implementing and Evaluating an Heterogeneous, Scalable, Tridiagonal Linear System Solver with OpenCL to Target FPGAs, GPUs, and CPUs. International Journal of Reconfigurable Computing No. 2019 (2019), pp.1-13.
https://search.emarefa.net/detail/BIM-1168485

American Medical Association (AMA)

Macintosh, Hamish J.& Banks, Jasmine E.& Kelson, Neil A.. Implementing and Evaluating an Heterogeneous, Scalable, Tridiagonal Linear System Solver with OpenCL to Target FPGAs, GPUs, and CPUs. International Journal of Reconfigurable Computing. 2019. Vol. 2019, no. 2019, pp.1-13.
https://search.emarefa.net/detail/BIM-1168485

Data Type

Journal Articles

Language

English

Notes

Includes bibliographical references

Record ID

BIM-1168485