skip to main content
10.1145/2744769.2744807acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

CMOST: a system-level FPGA compilation framework

Authors Info & Claims
Published:07 June 2015Publication History

ABSTRACT

Programming difficulty is a key challenge to the adoption of FPGAs as a general high-performance computing platform. In this paper we present CMOST, an open-source automated compilation flow that maps C-code to FPGAs for acceleration. CMOST establishes a unified framework for the integration of various system-level optimizations and for different hardware platforms. We also present several novel techniques on integrating optimizations in CMOST, including task-level dependence analysis, block-based data streaming, and automated SDF generation. Experimental results show that automatically generated FPGA accelerators can achieve over 8x speedup and 120x energy gain on average compared to the multi-core CPU results from similar input C programs. CMOST results are comparable to those obtained after extensive manual source-code transformations followed by high-level synthesis.

References

  1. J. Cong, B. Liu, S. Neuendorffer, J. Noguera, K. Vissers, and Z. Zhang, "High-level synthesis for FPGA: From prototyping to deployment," IEEE Trans. on CAD, vol. 30, no. 4, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. H. K. So and R. Brodersen, "A unified hardware/software runtime environment for FPGA-based reconfigurable computers using BORPH," ACM TECS. Jan. 2008, pp. 28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. E. S. Chung, J. C. Hoe, and K. Mai, "CoRAM: an in-fabric memory architecture for FPGA-based computing," the 19th ACM/SIGDA intl. symp. FPGA. New York, 97--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. M. Adler, K. E. Fleming, A. Parashar, etc, "Leap scratchpads: automatic memory and cache management for reconfigurable logic," the 19th ACM/SIGDA intl. symp. FPGA, New York, NY, USA, 25--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. G. Weisz and J. C. Hoe, "C-to-CoRAM: compiling perfect loop nests to the portable CoRAM abstraction, " the 19th ACM/SIGDA intl. symp. FPGA, 2013, pp. 211--230. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. K. Keutzer, A. R. Newton, J. M. Rabaey, etc., "System-level design: orthogonalization of concerns and platform-based design," IEEE TCAD., vol. 19, no. 12, pp. 1523,1543, Dec 2000 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Gerstlauer, C. Haubelt, A. D. Pimentel, T. P. Stefanov, D. D. Gajski, and J. Teich, "Electronic system-level synthesis methodologies," IEEE TCAD, vol. 28, no. 10, pp. 1517--1530. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. S. Xydis, G. Palermo, V. Zaccaria, etc., "SPIRIT: Spectral-aware Pareto Iterative Refinement Optimization for supervised high-level synthesis," IEEE TCAD, vol. 34, no. 1, pp. 155, 2015Google ScholarGoogle Scholar
  9. H.-Y. Liu, and L. P. Carloni, "On learning-based methods for design-space exploration with High-Level Synthesis," ACM/EDAC/IEEE DAC, 2013, pp. 1,7, May 29, 2013 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. Cong, P. Zhang, and Y. Zou, "Optimizing memory hierarchy allocation with loop transformations for high-level synthesis," ACM/EDAC/IEEE DAC, 2012, pp. 1229,1234, 3--7 June 2012 Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. Panda, F. Catthoor, etc., "Data and Memory Optimizations for Embedded Systems," ACM TODAES, 6(2):142--206,2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Cong, M. Huang, B. Liu, P. Zhang, and Y. Zou, "Combining module selection and replication for throughput-driven streaming programs," ACM/EDAC/IEEE DATE, 2012, pp. 1018,1023, 12--16 March 2012 Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Q. Liu, G. A. Constantinides, K. Masselos, etc., "Combining data reuse with data-level parallelization for FPGA-targeted hardware compilation: a geometric programming framework," IEEE TCAD, vol. 28, no. 3, pp. 305--315, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. W. Zuo, Y. Liang, P. Li, etc., "Improving high level synthesis optimization opportunity through polyhedral transformations, " the 19th ACM/SIGDA intl. symp. FPGA, 2013, New York, NY, USA, 9--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. Bastoul, "Code generation in the polyhedral model is easier than you think," the 13th International Conference on Parallel Architecture and Compilation Techniques, PACT 2014, vol., no., pp. 7,16, 29 Sept.-3 Oct. 2004 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. O. Shacham, S. Galal, S. Sankaranarayanan, etc., "Avoiding game over: Bringing design to the next level," Design Automation Conference (DAC), 2012 49th ACM/EDAC/IEEE, vol., no., pp. 623,629, 3--7 June 2012 Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. L.-N. Pouchet, P. Zhang, P. Sadayappan, etc., "Polyhedral-based data reuse optimization for configurable computing," the ACM/SIGDA international symposium on FPGA, 2013, ACM, New York, NY, USA, 29--38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Sx Verdoolaege, Hx Nikolov, and Tx Stefanov, "pn: a tool for improved derivation of process networks." EURASIP J. Embedded Syst. 2007, 1 (January 2007), 19--19. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. A. Darte, R. Schreiber, and G. Villard, "Lattice-based memory allocation," Computers, IEEE Transactions on, vol. 54, no. 10, pp. 1242,1257, Oct. 2005 Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. CMOST: a system-level FPGA compilation framework

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      DAC '15: Proceedings of the 52nd Annual Design Automation Conference
      June 2015
      1204 pages
      ISBN:9781450335201
      DOI:10.1145/2744769

      Copyright © 2015 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 7 June 2015

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate1,770of5,499submissions,32%

      Upcoming Conference

      DAC '24
      61st ACM/IEEE Design Automation Conference
      June 23 - 27, 2024
      San Francisco , CA , USA

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader