High-level Synthesis Software for Multi-chip Reconfigurable Computing Systems

Authors

  • Alexey I. Dordopulo Supercomputers and Neurocomputers Research Center http://orcid.org/0000-0001-7666-9841
  • Ilya I. Levin Southern Federal University Supercomputers and Neurocomputers Research Center http://orcid.org/0000-0002-1704-5016
  • Vyacheslav A. Gudkov Southern Federal University Supercomputers and Neurocomputers Research Center
  • Andrey A. Gulenok Supercomputers and Neurocomputers Research Center

DOI:

https://doi.org/10.14529/cmse220301

Keywords:

high-level synthesis, program translation, C language, performance reduction, reconfigurable computing systems, programming of multiprocessor computing systems

Abstract

The article describes an original complex of high-level synthesis that converts sequential programs into a circuit configuration of specialized hardware for reconfigurable computing systems. An absolutely parallel form, an information graph, is constructed from the original sequential program. Further, the graph is transformed into a resource-independent parallel–pipeline form — a personnel structure that can be adapted to various hardware resources. The transformation of the personnel structure into an information-equivalent structure, but occupying a smaller hardware resource, is performed using formalized methods of performance reduction, which allows you to automatically obtain a rational solution for a given multi-chip reconfigurable computing system. Unlike the known means of high-level synthesis, the result of the transformation is not the IP core of a computationally time-consuming fragment, but an automatically synchronized solution of an applied problem for all FPGA crystals of a reconfigurable computing system. Compared with parallelizing compilers, the number of analyzed variants of the synthesis of a rational solution is significantly less, which is a distinctive feature of the described complex. The application of high-level synthesis software is considered by the example of the problem of solving a system of linear algebraic equations by the Gauss method containing information-interdependent computational fragments with significantly different degrees of parallelism.

Author Biographies

Alexey I. Dordopulo, Supercomputers and Neurocomputers Research Center

нач. отдела математического и алгоритмического обеспечения

Ilya I. Levin, Southern Federal University Supercomputers and Neurocomputers Research Center

зав. кафедрой интеллектуальных и многопроцессорных систем

Vyacheslav A. Gudkov, Southern Federal University Supercomputers and Neurocomputers Research Center

доцент кафедры интеллектуальных и многопроцессорных систем

Andrey A. Gulenok, Supercomputers and Neurocomputers Research Center

нач. сектора отдела математического и алгоритмического обеспечения

References

Voevodin V.V., Voevodin Vl.V. Parallel computing. BHV-Petersburg, 2002. 608 p. (in Russian).

Antonov A.S., Afanasyev I.V., Voevodin Vl.V. High-performance computing platforms: current status and development trends. Num. Meth. Prog. 2021. Vol. 22, no. 2. P. 135–177. DOI: 10.26089/NumMet.v22r210 (in Russian).

Guzik V.F., Kalyaev I.A., Levin I.I. Reconfigurable computer systems. Taganrog: SFEDU Publishing, 2016. 472 p. (in Russian).

Levin I., Dordopulo A., Fedorov A., Kalyaev I. Reconfigurable computer systems: from the first FPGAs towards liquid cooling systems. Supercomputing Frontiers and Innovations. 2016. Vol. 3, no. 1. P. 22–40. DOI: 10.14529/jsfi160102.

Nane R., Sima V.-M., Pilato C., et al. A Survey and Evaluation of FPGA High-Level Synthesis Tools. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. 2016. Vol. 35, no. 10. P. 1591–1604. DOI: 10.1109/TCAD.2015.2513673.

Numan M.W., Phillips B.J., Puddy G.S., Falkner K. Towards Automatic High-Level Code Deployment on Reconfigurable Platforms: A Survey of High-Level Synthesis Tools and Toolchains. IEEE Access. 2020. Vol. 8. P. 174692–174722. DOI: 10.1109/ACCESS.2020.3024098.

Nane R., Sima V.-M., Olivier B., et. al. DWARV 2.0: A CoSy-based C-to-VHDL Hardware Compiler. 22nd International Conference on Field Programmable Logic and Applications (FPL), Oslo, Norway, August 29-31, 2012. IEEE, 2012. P. 619–622. DOI: 10.1109/FPL.2012.6339221.

Pilato C., Ferrandi F. Bambu: A Modular Framework for the High Level Synthesis of Memory-intensive Applications. 23rd International Conference on Field programmable Logic and Applications, FPL 2013, Porto, Portugal, September 2-4, 2013. IEEE, 2013. P. 1–4. DOI: 10.1109/FPL.2013.6645550.

Canis A., Choi J., Aldham M., et. al. LegUp: High-Level Synthesis for FPGA-based Processor/Accelerator Systems. Proceedings of the ACM/SIGDA 19th International Symposium on Field Programmable Gate Arrays, FPGA 2011, Monterey, California, USA, February 27 - March 1, 2011. ACM, 2011. P. 33–36. DOI: 10.1145/1950413.1950423.

Make Slow Software Run Fast with Vivado HLS. URL: https://www.xilinx.com/publications/xcellonline/run-fast-with-Vivado-HLS.pdf (accessed: 10.03.2021).

Vitis Unified Software Platform Documentation. Application Acceleration Development. URL: https://www.xilinx.com/support/documentation/sw_manuals/xilinx2019_2/ug1393-vitis-application-acceleration.pdf (accessed: 10.03.2021).

Tarasov I. Designing for Xilinx FPGAs using high-level languages in Vivado HLS environment. Components and Technologies. 2013. No. 12(149). P. 40–48 (in Russian).

Kolganov A.S. An experience of applying the parallelization regions for the step-by-step parallelization of software packages using the SAPFOR system. Numerical methods and programming. 2020. Vol. 21, no. 66. P. 388–404. DOI: 10.26089/NumMet.v21r432.

Levin I., Dordopulo A., Gudkov V., et al. Software Development Tools for FPGA-Based Reconfigurable Systems Programming. Russian Supercomputing Days. Vol. 1129 / ed. by Vl. Voevodin, S. Sobolev. Cham: Springer, 2019. P. 625–640. Communications in Computer and Information Science. DOI: 10.1007/978-3-030-36592-9_51.

Dordopulo A.I., Levin I.I. Performance Reduction For Automatic Development of Parallel Applications For Reconfigurable Computer Systems. Supercomputing Frontiers and Innovations. 2020. Vol. 7, no. 2. P. 4–23. DOI: 10.14529/jsfi200201.

Levin I.I., Dordopulo A.I., Gudkov V.A., et al. A set of programming tools for reconfigurable computing systems based on FPGA. Parallel Computational Technologies (PaVT’2020): Short articles and posters, Perm, March 31 - April 2, 2020. Chelyabinsk: SUSU Publishing Center, 2020. P. 163–173. DOI: 10.14529/cmse150202 (in Russian).

Levin I.I., Dordopulo A.I., Gudkov V.A., et al. Programming tools for reconfigurable and hybrid computing systems based on FPGA. Parallel Computational Technologies (PaVT’2019): Short articles and posters, Kaliningrad, April 2-4, 2019. Chelyabinsk: SUSU Publishing Center, 2019. P. 299–312 (in Russian).

Published

2022-10-03

Issue

Section

Informatics, Computers and Control