Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Performance Analysis Framework for High-Level Language Applications in Reconfigurable Computing

Published: 01 January 2010 Publication History

Abstract

High-Level Languages (HLLs) for Field-Programmable Gate Arrays (FPGAs) facilitate the use of reconfigurable computing resources for application developers by using familiar, higher-level syntax, semantics, and abstractions, typically enabling faster development times than with traditional Hardware Description Languages (HDLs). However, programming at a higher level of abstraction is typically accompanied by some loss of performance as well as reduced transparency of application behavior, making it difficult to understand and improve application performance. While runtime tools for performance analysis are often featured in development with traditional HLLs for sequential and parallel programming, HLL-based development for FPGAs has an equal or greater need yet lacks these tools. This article presents a novel and portable framework for runtime performance analysis of HLL applications for FPGAs, including an automated tool for performance analysis of designs created with Impulse C, a commercial HLL for FPGAs. As a case study, this tool is used to successfully locate performance bottlenecks in a molecular dynamics kernel in order to gain speedup.

References

[1]
Alam, S. R., Vetter, J. S., Agarwal, P. K., and Geist, A. 2006. Performance characterization of molecular dynamics techniques for biomolecular simulations. In Proceedings of the 11th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP). ACM Press, New York, 59--68.
[2]
Altera. 2007. Implementation of the Smith-Waterman algorithm on a reconfigurable supercomputing platform. http://www.altera.com/literature/wp/wp-01035.pdf.
[3]
Altera. 2008. Design debugging using the SignalTap II embedded logic analyzer. http://www.altera.com/literature/hb/qts/qts_qii53009.pdf.
[4]
Calvez, J. P. and Pasquier, O. 1995. Performance monitoring and assessment of embedded HW/SW systems. In Proceedings of the International Conference on Computer Design (ICCD): VLSI in Computers and Processors. 2--4.
[5]
Curreri, J., Koehler, S., Holland, B., and George, A. D. 2008. Performance analysis with high-level languages for high-performance reconfigurable computing. In Proceedings of the 16th IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM). 14--15.
[6]
DeVille, R., Troxel, I., and George, A. D. 2005. Performance monitoring for run-time management of reconfigurable devices. In Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA). 175--181.
[7]
Graham, P., Nelson, B., and Hutchings, B. 2001. Instrumenting bitstreams for debugging FPGA circuits. In Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM). IEEE Computer Society, 41--50.
[8]
Hemmert, K. S., Tripp, J. L., Hutchings, B. L., and Jackson, P. A. 2003. Source level debugger for the sea cucumber synthesizing compiler. In Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM). 228--237.
[9]
IEEE Computer Society. 2001. IEEE standard test access port and boundary-scan architecture. IEEE Std 1149.1-2001 (R2008).
[10]
Koehler, S., Curreri, J., and George, A. D. 2008. Performance analysis challenges and framework for high-performance reconfigurable computing. Parall. Comput. 34, 217--230.
[11]
Mellor-Crummey, J., Fowler R. J., Marin, G., and Tallent, N. 2002. HPCVIEW: A tool for top-down analysis of node performance. J. Supercomput. 23, 81--104.
[12]
Mohr, B. and Wolf, F. 2003. KOJAK -- A tool set for automatic performance analysis of parallel applications. In Proceedings of the European Conference on Parallel Computing (EuroPar). Lecture Notes in Computer Science, vol. 2790. Springer, 26--29.
[13]
Mysore, S., Agrawal, B., Neuber, R., Sherwood, T., Shrivastava, N. and Suri, S. 2008. Formulating and implementing profiling over adaptive ranges. ACM Trans. Archit. Code Optimiz. 5, 1.
[14]
Pellerin, D. 2007. Email transaction on adding comments to HDL for HLL source correlation. Dec 2007.
[15]
Pellerin, D. and Thibault, S. 2005. Practical FPGA Programming in C. Prentice Hall PTR.
[16]
Poznanovic, D. 2005. Application development on the SRC computers, inc. systems. In Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS). 78a.
[17]
Su, H., Billingsley, M., and George, A. D. 2008. Parallel performance wizard: A performance analysis tool for partitioned global-address-space programming. In Proceedings of the 9th IEEE International Workshop on Parallel and Distributed Scientific and Engineering Computing (PDSEC). 14--15.
[18]
Schulz, M., White, B. S., McKee, S. A., Lee, H. S., and Jeitner, J. 2005. Owl: Next generation system monitoring. In Proceedings of the 2nd Conference on Computing Frontiers (CF). ACM Press, New York, 116--124.
[19]
Shende, S. and Malony, A. D. 2006. The Tau parallel performance system. Int. J. High-Perform. Comput. Appl. 20, 287--311.
[20]
Tong, J. G. and Khalid, M. A. S. 2007. A comparison of profiling tools for FPGA-based embedded systems. In Proceedings of the Canadian Conference on Electrical and Computer Engineering (CCECE). 1687--1690.
[21]
Xilinx. 2007. Xilinx ChipScope Pro software and cores user guide, v. 9.2i. http://www.xilinx.com/ise/verification/chipscope_pro_sw_cores_9_2i_ug029.pdf.
[22]
Zaki, O., Lusk, E., Gropp, W., and Swider, D. 1999. Toward scalable performance visualization with jumpshot. Int. J. High Perform. Comput. Appl. 13, 3, 277--288.

Cited By

View all
  • (2021)Programming and Synthesis for Software-defined FPGA Acceleration: Status and Future ProspectsACM Transactions on Reconfigurable Technology and Systems10.1145/346966014:4(1-39)Online publication date: 13-Sep-2021
  • (2021)Analytical Performance Estimation for Large-Scale Reconfigurable Dataflow PlatformsACM Transactions on Reconfigurable Technology and Systems10.1145/345274214:3(1-21)Online publication date: 12-Aug-2021
  • (2020)Extending High-Level Synthesis with High-Performance Computing Performance Visualization2020 IEEE International Conference on Cluster Computing (CLUSTER)10.1109/CLUSTER49012.2020.00047(371-380)Online publication date: Sep-2020
  • Show More Cited By

Index Terms

  1. Performance Analysis Framework for High-Level Language Applications in Reconfigurable Computing

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Reconfigurable Technology and Systems
    ACM Transactions on Reconfigurable Technology and Systems  Volume 3, Issue 1
    January 2010
    136 pages
    ISSN:1936-7406
    EISSN:1936-7414
    DOI:10.1145/1661438
    Issue’s Table of Contents
    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 ACM 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: 01 January 2010
    Accepted: 01 April 2009
    Revised: 01 November 2008
    Received: 01 July 2008
    Published in TRETS Volume 3, Issue 1

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Carte C
    2. FPGA
    3. Impulse C
    4. high-level language
    5. high-level synthesis tools
    6. profile
    7. trace

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)12
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 09 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2021)Programming and Synthesis for Software-defined FPGA Acceleration: Status and Future ProspectsACM Transactions on Reconfigurable Technology and Systems10.1145/346966014:4(1-39)Online publication date: 13-Sep-2021
    • (2021)Analytical Performance Estimation for Large-Scale Reconfigurable Dataflow PlatformsACM Transactions on Reconfigurable Technology and Systems10.1145/345274214:3(1-21)Online publication date: 12-Aug-2021
    • (2020)Extending High-Level Synthesis with High-Performance Computing Performance Visualization2020 IEEE International Conference on Cluster Computing (CLUSTER)10.1109/CLUSTER49012.2020.00047(371-380)Online publication date: Sep-2020
    • (2019)Field Programmable Gate Array Applications—A Scientometric ReviewComputation10.3390/computation70400637:4(63)Online publication date: 11-Nov-2019
    • (2018)3D Waveform Oscilloscope Implemented on Coupled FPGA-GPU Embedded System2018 5th International Conference on Information Science and Control Engineering (ICISCE)10.1109/ICISCE.2018.00010(1-5)Online publication date: Jul-2018
    • (2016)A performance analysis framework for optimizing OpenCL applications on FPGAs2016 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2016.7446058(114-125)Online publication date: Mar-2016
    • (2014)A practical evaluation of the performance of the Impulse CoDeveloper HLS tool for implementing large-kernel 2-D filtersJournal of Real-Time Image Processing10.1007/s11554-013-0374-x9:1(263-279)Online publication date: 1-Mar-2014
    • (2013)Performance modeling for FPGAsInternational Journal of Reconfigurable Computing10.1155/2013/4280782013(7-7)Online publication date: 1-Jan-2013
    • (2012)Performance analysis techniques for multi-soft-core and many-soft-core systemsInternational Journal of Reconfigurable Computing10.1155/2012/7363472012(2-2)Online publication date: 1-Jan-2012
    • (2012)Communication visualization for bottleneck detection of high-level synthesis applicationsProceedings of the ACM/SIGDA international symposium on Field Programmable Gate Arrays10.1145/2145694.2145701(33-36)Online publication date: 22-Feb-2012
    • Show More Cited By

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media