Parallelization in co-compilation for configurable accelerators-a host/accelerator partitioning compilation method

The paper introduces a novel co-compiler and its "vertical" parallelization method, including a general model for co-operating host/accelerator platforms and a new parallelizing compilation technique derived from it. Small examples are used for illustration. It explains the exploitation of different levels of parallelism to achieve optimized speed ups and hardware resource utilization. Section II introduces novel vertical parallelization techniques involving parallelism exploitation at four different levels (task, loop, statement, and operation level) is explained, achieved by for configurable accelerators. Finally the results are illustrated by a simple application example. But first the paper summarizes the fundamentally new dynamically reconfigurable hardware platform underlying the co-compilation method.

[1]  Reiner W. Hartenstein,et al.  Parallelization in Co-Compilation for Configurable Accelerators. , 1998 .

[2]  David B. Loveman,et al.  Program Improvement by Source-to-Source Transformation , 1977, J. ACM.

[3]  Alice C. Parker,et al.  Sehwa: a software package for synthesis of pipelines from behavioral specifications , 1988, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  N. Tredennick Technology and business: forces driving microprocessor evolution , 1995 .

[5]  R. W. Hartenstein,et al.  Performance-Evaluation in Xputer-based Accelerators , 1998 .

[6]  Jürgen Becker,et al.  A novel sequencer hardware for application specific computing , 1997, Proceedings IEEE International Conference on Application-Specific Systems, Architectures and Processors.

[7]  Sandro K. Lindner,et al.  The Software Gap , 2000 .

[8]  Jürgen Becker,et al.  Custom Computing Machines vs. Hardware/Software Codesign: From a globalized point of view , 1996, FPL.

[9]  Reiner W. Hartenstein,et al.  A general approach in system design integrating reconfigurable accelerators , 1996, 1996 Proceedings. Eighth Annual IEEE International Conference on Innovative Systems in Silicon.

[10]  Leslie Lamport,et al.  The parallel execution of DO loops , 1974, CACM.

[11]  Nicolai Petkov,et al.  Systolic Parallel Processing , 1992 .

[12]  Rainer Kress,et al.  A fast reconfigurable ALU for Xputers , 1996 .

[13]  Reiner W. Hartenstein,et al.  A Novel Paradigm of Parallel Computation and its Use to Implement Simple High Performance Hardware , 1990, CONPAR.

[14]  Ken Kennedy,et al.  Automatic translation of FORTRAN programs to vector form , 1987, TOPL.

[15]  Reiner W. Hartenstein,et al.  Field-Programmable Logic Smart Applications, New Paradigms and Compilers , 1996, Lecture Notes in Computer Science.

[16]  Jürgen Becker,et al.  Data-Procedural Languages for FPL-based Machines , 1994, FPL.

[17]  Jürgen Becker,et al.  A two-level co-design framework for Xputer-based data-driven reconfigurable accelerators , 1997, Proceedings of the Thirtieth Hawaii International Conference on System Sciences.

[18]  Karin Schmidt A program partitioning, restructuring, and mapping method for Xputers , 1995 .

[19]  André DeHon,et al.  Reconfigurable architectures for general-purpose computing , 1996 .

[20]  Jürgen Becker A partitioning compiler for computers with Xputer-based accelerators , 1997 .

[21]  Nicolai Petkov Systolische Algorithmen und Arrays , 1989 .

[22]  Reiner W. Hartenstein,et al.  High Performance Computing: über Szenen und Krisen , 2000 .

[23]  Reiner W. Hartenstein,et al.  A datapath synthesis system for the reconfigurable datapath architecture , 1995, ASP-DAC '95.

[24]  Reiner W. Hartenstein,et al.  The microprocessor is no longer general purpose: why future reconfigurable platforms will win , 1997, 1997 Proceedings Second Annual IEEE International Conference on Innovative Systems in Silicon.

[25]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[26]  Tsugio Makimoto,et al.  Living with the chip , 1995 .

[27]  Rajesh Gupta,et al.  Hardware/software co-design , 1996, Proc. IEEE.