Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2435264.2435268acmconferencesArticle/Chapter ViewAbstractPublication PagesfpgaConference Proceedingsconference-collections
tutorial

Harnessing the power of FPGAs using altera's OpenCL compiler

Published: 11 February 2013 Publication History

Abstract

In recent years, Field-Programmable Gate Arrays have become extremely powerful computational platforms that can efficiently solve many complex problems. The most modern FPGAs comprise effectively millions of programmable elements, signal processing elements and high-speed interfaces, all of which are necessary to deliver a complete solution. The power of FPGAs is unlocked via low-level programming languages such as VHDL and Verilog, which allow designers to explicitly specify the behavior of each programmable element. While these languages provide a means to create highly efficient logic circuits, they are akin to "assembly language" programming for modern processors. This is a serious limiting factor for both productivity and the adoption of FPGAs on a wider scale. In this talk, we use the OpenCL language to explore techniques that allow us to program FPGAs at a level of abstraction closer to traditional software-centric approaches. OpenCL is an industry standard parallel language based on 'C' that offers numerous advantages that enable designers to take full advantage of the capabilities offered by FPGAs, while providing a high-level design entry language that is familiar to a wide range of programmers.
To demonstrate the advantages a high-level programming language can offer, we demonstrate how to use Altera's OpenCL Compiler on a set of case studies. The first application is single-precision general-element matrix multiplication (SGEMM). It is an example of a highly-parallel algorithm for which an efficient circuit structures are well known. We show how this application can be implemented in OpenCL and how the high-level description can be optimized to generate the most efficient circuit in hardware. The second application is a Fast Fourier Transform (FFT), which is a classical FPGA benchmark that is known to have a good implementation on FPGAs. We show how we can implement the FFT algorithm, while exploring the many different possible architectural choices that lead to an optimized implementation for a given FPGA. Finally, we discuss a Monte-Carlo Black-Scholes simulation, which demonstrates the computational power of FPGAs. We describe how a random number generator in conjunction with computationally intensive operations can be harnessed on an FPGA to generate a high-speed benchmark, which also consumes far less power than the same benchmark running on a comparable GPU. We conclude the tutorial with a set of live demonstrations.
Through this tutorial we show the benefits high-level languages offer for system-level design and productivity. In particular, Altera's OpenCL compiler is shown to enable high-performance application design that fully utilizes capabilities of modern FPGAs.

Cited By

View all
  • (2024)Integrating FPGA-based hardware acceleration with relational databasesParallel Computing10.1016/j.parco.2024.103064119(103064)Online publication date: Feb-2024
  • (2022)Coarse Grained FPGA Overlay for Rapid Just-In-Time Accelerator CompilationIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2021.311685933:6(1478-1490)Online publication date: 1-Jun-2022
  • (2019)In-memory database acceleration on FPGAs: a surveyThe VLDB Journal10.1007/s00778-019-00581-wOnline publication date: 26-Oct-2019
  • Show More Cited By

Index Terms

  1. Harnessing the power of FPGAs using altera's OpenCL compiler

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    FPGA '13: Proceedings of the ACM/SIGDA international symposium on Field programmable gate arrays
    February 2013
    294 pages
    ISBN:9781450318877
    DOI:10.1145/2435264

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 11 February 2013

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. FPGAs
    2. OpenCL

    Qualifiers

    • Tutorial

    Conference

    FPGA '13
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 125 of 627 submissions, 20%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

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

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Integrating FPGA-based hardware acceleration with relational databasesParallel Computing10.1016/j.parco.2024.103064119(103064)Online publication date: Feb-2024
    • (2022)Coarse Grained FPGA Overlay for Rapid Just-In-Time Accelerator CompilationIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2021.311685933:6(1478-1490)Online publication date: 1-Jun-2022
    • (2019)In-memory database acceleration on FPGAs: a surveyThe VLDB Journal10.1007/s00778-019-00581-wOnline publication date: 26-Oct-2019
    • (2018)Nuclear Reactor Simulation on OpenCL FPGAProceedings of the International Workshop on OpenCL10.1145/3204919.3204921(1-9)Online publication date: 14-May-2018
    • (2018)Synthesizable Higher-Order Functions for C++IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2018.285725937:11(2835-2844)Online publication date: Nov-2018
    • (2018)Evaluation of MD5Hash Kernel on OpenCL FPGA Platform2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)10.1109/IPDPSW.2018.00157(1026-1032)Online publication date: May-2018
    • (2017)Energy Efficient Scientific Computing on FPGAs using OpenCLProceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays10.1145/3020078.3021730(247-256)Online publication date: 22-Feb-2017
    • (2017)FPGA-Based Implementation of Kalman Filter for Real-Time Estimation of Tire Velocity and AccelerationIEEE Sensors Journal10.1109/JSEN.2017.272652917:17(5749-5758)Online publication date: 1-Sep-2017
    • (2016)Related WorkArchitecture Exploration of FPGA Based Accelerators for BioInformatics Applications10.1007/978-981-10-0591-6_2(9-28)Online publication date: 3-Mar-2016
    • (2015)Using source-to-source compilation to instrument circuits for debug with High Level Synthesis2015 International Conference on Field Programmable Technology (FPT)10.1109/FPT.2015.7393129(48-55)Online publication date: Dec-2015
    • Show More Cited By

    View Options

    Get Access

    Login options

    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