RUS  ENG
Full version
JOURNALS // Program Systems: Theory and Applications // Archive

Program Systems: Theory and Applications, 2017 Volume 8, Issue 3, Pages 189–218 (Mi ps267)

This article is cited in 2 papers

Hardware, software and distributed supercomputer systems

Classification of loops with one statement for executing on the processor with programmable accelerator

B. Ya. Steinberg, O. B. Shteinberg, Yu. V. Mikhailuts, A. P. Bagliy, D. V. Dubrov, R. B. Steinberg

Institute of Mathematics, Mechanics and Computer Sciences, Southern Federal University

Abstract: The classification of program cycles for an optimizing compiler for a processor with a programmable accelerator is considered. Such a processor can be a system on a crystal that contains both computational cores and a programmable circuit. The programmable accelerator is tuned to the architecture of the reconfigurable pipeline.
The classification according to regular information dependencies is specified. For each class of cycles, the possibility of pipelining is considered. If immediate pipelining is impossible, then the question discussed about transformations of such a cycle to a pipeline-type view using OPC (Optimizing the parallelizing system). Information dependencies in the loop affect the architecture of the pipeline that implements the loop.
The compiler differs from conventional by the presence of converter from a high level programming language to hardware description language. It should also have a library jf drivers for data transfer from the CPU to FPGA and back. Numerical experiment for one of the loop classes demonstrated a double acceleration. (In Russian).

Key words and phrases: Loop classification, data dependencies, reconfigurable architecture, pipeline computations, parallelizing compiler, high-level internal representation, FPGA, HDL.

UDC: 519.685.3

Received: 04.09.2017
Accepted: 28.09.2017

DOI: 10.25209/2079-3316-2017-8-3-189-218



© Steklov Math. Inst. of RAS, 2024