Resource constrained and speculative scheduling of an algorithm class with run-time dependent conditionals

We present a significant extension of the quantified equation based algorithm class of piecewise regular algorithms. The main contributions of the following paper are: the class of piecewise regular algorithms are extended by allowing run-time dependent conditionals; a mixed integer linear program is given to derive optimal schedules of the novel class we call dynamic piecewise regular algorithms; and in order to achieve highest performance, we present a speculative scheduling approach. The results are applied to an illustrative example.

[1]  Chuan-Lin Wu,et al.  Interconnection Networks for Parallel and Distributed Processing , 1984 .

[2]  Bart Kienhuis MatParser: An array dataflow analysis compiler , 2000 .

[3]  Sanjay V. Rajopadhye,et al.  An optimal algo-tech-cuit for the knapsack problem , 1993, Proceedings of International Conference on Application Specific Array Processors (ASAP '93).

[4]  Jürgen Teich,et al.  Automatic Synthesis of FPGA Processor Arrays from Loop Algorithms , 2004, The Journal of Supercomputing.

[5]  Jürgen Teich,et al.  Dynamic Piecewise Linear/Regular Algorithms , 2004, Parallel Computing in Electrical Engineering, 2004. International Conference on.

[6]  Doran Wilde,et al.  Regular array synthesis using ALPHA , 1994, Proceedings of IEEE International Conference on Application Specific Array Processors (ASSAP'94).

[7]  B. Ramakrishna Rau,et al.  PICO: Automatically Designing Custom Computers , 2002, Computer.

[8]  Graham M. Megson Mapping a class of run-time dependencies onto regular arrays , 1993, [1993] Proceedings Seventh International Parallel Processing Symposium.

[9]  Paul Feautrier,et al.  Automatic Parallelization in the Polytope Model , 1996, The Data Parallel Programming Model.

[10]  Frank Hannig,et al.  Resource Constrained and Speculative Scheduling of Dynamic Piecewise Regular Algorithms , 2004 .

[11]  Jürgen Teich,et al.  Regular mapping for coarse-grained reconfigurable architectures , 2004, 2004 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[12]  Martin Griebl,et al.  The loop parallelizer LooPo , 1996 .

[13]  Thomas Kailath,et al.  Regular iterative algorithms and their implementation on processor arrays , 1988, Proc. IEEE.

[14]  Scott A. Mahlke,et al.  High-level synthesis of nonprogrammable hardware accelerators , 2000, Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors.

[15]  Lothar Thiele,et al.  Resource constrained scheduling of uniform algorithms , 1993, J. VLSI Signal Process..

[16]  Paul Feautrier,et al.  Fuzzy Array Dataflow Analysis , 1997, J. Parallel Distributed Comput..

[17]  Ed F. Deprettere,et al.  Deriving process networks from weakly dynamic applications in system-level design , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[18]  E. Rijpkema,et al.  Compaan: deriving process networks from Matlab for embedded signal processing architectures , 2000, Proceedings of the Eighth International Workshop on Hardware/Software Codesign. CODES 2000 (IEEE Cat. No.00TH8518).

[19]  Richard M. Karp,et al.  The Organization of Computations for Uniform Recurrence Equations , 1967, JACM.

[20]  Nikil D. Dutt,et al.  SPARK: a high-level synthesis framework for applying parallelizing compiler transformations , 2003, 16th International Conference on VLSI Design, 2003. Proceedings..

[21]  D.I. Moldovan,et al.  On the design of algorithms for VLSI systolic arrays , 1983, Proceedings of the IEEE.

[22]  Uwe Eckhardt,et al.  Hierarchical algorithm partitioning at system level for an improved utilization of memory structures , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[23]  Jürgen Teich A compiler for application specific processor arrays , 1993 .

[24]  Sailesh K. Rao,et al.  Regular interactive algorithms and their implementations on processor arrays , 1986 .