Abstract
In this paper we develop compilation techniques for the realization of applications described in a High Level Language (HLL) onto a Runtime Reconfigurable Architecture. The compiler determines Hyper Operations (HyperOps) that are subgraphs of a data flow graph (of an application) and comprise elementary operations that have strong producer-consumer relationship. These HyperOps are hosted on computation structures that are provisioned on demand at runtime. We also report compiler optimizations that collectively reduce the overheads of data-driven computations in runtime reconfigurable architectures. On an average, HyperOps offer a 44% reduction in total execution time and a 18% reduction in management overheads as compared to using basic blocks as coarse grained operations. We show that HyperOps formed using our compiler are suitable to support data flow software pipelining.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Alle, M., Varadarajan, K., Joseph, N., Reddy, C.R., Fell, A., Nandy, S.K., Narayan, R.: Synthesis of Application Accelerators on Runtime Reconfigurable Hardware. In: ASAP 2008: Proceedings of the 19th IEEE International Conference on Application specific Systems, Architectures and Processors (2008)
Beck, M., Johnson, R., Pingali, K.: From Control Flow to Data Flow. Journal of Parallel and Distributed Computing 12(2), 118–129 (1991)
Lattner, C., Adve, V.: LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation. In: CGO 2004: Proceedings of the international symposium on Code generation and optimization, Washington, DC, USA (2004)
Cytron, R., Ferrante, J., Rosen, B.K., Wegman, M.N., Zadeck, F.K.: Efficiently Computing Static Single Assignment Form and the Control Dependence Graph. ACM Transactions on Programming Languages and Systems 13(4), 451–490 (1991)
Dennis, J.B., Gao, G.R.: An efficient pipelined dataflow processor architecture. In: Supercomputing 1988: Proceedings of the 1988 ACM/IEEE conference on Supercomputing, Los Alamitos, CA, USA (1988)
Gao, G.R.: Algorithmic aspects of balancing techniques for pipelined data flow code generation. J. Parallel Distrib. Comput. 6(1), 39–61 (1989)
Goossens, K., Dielissen, J., Radulescu, A.: Æthereal Network on Chip: Concepts, Architectures and Implementations. IEEE Design & Test of Computers 22(5), 414–421 (2005)
Gupta, S., Dutt, N., Gupta, R., Nicolau, A.: Spark: A high-level synthesis framework for applying parallelizing compiler transformations. In: Proceedings of 16th International Conference on VLSI Design, pp. 461–466 (2003)
Inagami, Y., Foley, J.F.: The specification of a new Manchester Dataflow Machine. In: ICS 1989: Proceedings of the 3rd International Conference on Supercomputing, New York, NY, USA (1989)
Joseph, N., Ramesh Reddy, C., Varadarajan, K., Alle, M., Fell, A., Nandy, S.K., Narayan, R.: RECONNECT: A NoC for polymorphic ASICs using a Low Overhead Single Cycle Router. In: ASAP 2008: Proceedings of the 19th IEEE International Conference on Application specific Systems, Architectures and Processors (2008)
Mahlke, S.A., Lin, D.C., Chen, W.Y., Hank, R.E., Bringmann, R.A.: Effective Compiler Support for Predicated Execution Using the Hyperblock. In: MICRO 25: Proceedings of the 25th Annual International Symposium on Microarchitecture, Portland, Oregon, December 1–4 (1992)
Mentor Graphics. Catapult C synthesis, http://www.mentor.com/products/esl/high_level_synthesis/catapult_synthesis/
Petersen, A., Putnam, A., Mercaldi, M., Schwerin, A., Eggers, S.J., Swanson, S., Oskin, M.: Reducing control overhead in dataflow architectures. In: Altman, E., Skadron, K., Zorn, B.G. (eds.) 15th PACT 2006: Proceedings of the 15th International Conference on Parallel Architecture and Compilation Techniques, Seattle, Washington, USA, pp. 182–191. ACM, New York (2006)
Akers, S.B.: Binary Decision Diagrams. IEEE Transactions on Computers C-27(6), 509–516 (1978)
Satrawala, A.N., Varadarajan, K., Alle, M., Nandy, S.K., Narayan, R.: REDEFINE: Architecture of a SOC Fabric for Runtime Composition of Computation Structures. In: FPL 2007: Proceedings of the International Conference on Field Programmable Logic and Applications (August 2007)
Swanson, S., Schwerin, A., Mercaldi, M., Petersen, A., Putnam, A., Michelson, K., Oskin, M., Eggers, S.J.: The WaveScalar architecture. ACM Transactions on Computer Systems 25(2), 1–54 (2007)
Vassiliadis, S., Wong, S., Cotofana, S.: The molen rho-mu-coded processor. In: Brebner, G., Woods, R. (eds.) FPL 2001. LNCS, vol. 2147, pp. 275–285. Springer, Heidelberg (2001)
Kathail Vinod, A., Pingali, K.: A Dataflow Architecure with tagged Tokens. Technical Report MIT/LCS/TM-174, Massachusetts Institute of Technology, Laboratory for Computer Science (September 1980)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Alle, M., Varadarajan, K., Fell, A., Nandy, S.K., Narayan, R. (2009). Compiling Techniques for Coarse Grained Runtime Reconfigurable Architectures. In: Becker, J., Woods, R., Athanas, P., Morgan, F. (eds) Reconfigurable Computing: Architectures, Tools and Applications. ARC 2009. Lecture Notes in Computer Science, vol 5453. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-00641-8_21
Download citation
DOI: https://doi.org/10.1007/978-3-642-00641-8_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-00640-1
Online ISBN: 978-3-642-00641-8
eBook Packages: Computer ScienceComputer Science (R0)