• DocumentCode
    2080915
  • Title

    FPGA acceleration for the frequent item problem

  • Author

    Teubner, Jens ; Mueller, Rene ; Alonso, Gustavo

  • Author_Institution
    Dept. of Comput. Sci., ETH Zurich, Zurich, Switzerland
  • fYear
    2010
  • fDate
    1-6 March 2010
  • Firstpage
    669
  • Lastpage
    680
  • Abstract
    Field-programmable gate arrays (FPGAs) can provide performance advantages with a lower resource consumption (e.g., energy) than conventional CPUs. In this paper, we show how to employ FPGAs to provide an efficient and high-performance solution for the frequent item problem. We discuss three design alternatives, each one of them exploiting different FPGA features, and we provide an exhaustive evaluation of their performance characteristics. The first design is a one-to-one mapping of the Space-Saving algorithm (shown to be the best approach in software [1]), built on special features of FPGAs: content-addressable memory and dual-ported BRAM. The two other implementations exploit the flexibility of digital circuits to implement parallel lookups and pipelining strategies, resulting in significant improvements in performance. On low-cost FPGA hardware, the fastest of our designs can process 80 million items per second-three times as much as the best known result. Moreover, and unlike in software approaches where performance is directly related to the skew factor of the Zipf distribution, the high throughput is independent of the skew of the distribution of the input. In the paper we discuss as well several design trade-offs that are relevant when implementing database functionality on FPGAs. In particular, we look at resource consumption and the levels of data and task parallelism of three different designs.
  • Keywords
    content-addressable storage; field programmable gate arrays; logic design; parallel architectures; statistical distributions; FPGA acceleration; Zipf distribution; content-addressable memory; data level; database functionality; dual-ported BRAM; field programmable gate arrays; frequent item problem; one-to-one mapping design; resource consumption; space-saving algorithm; task parallelism level; Acceleration; Algorithm design and analysis; Digital circuits; Field programmable gate arrays; Hardware; Pipeline processing; Process design; Software algorithms; Software performance; Throughput;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Data Engineering (ICDE), 2010 IEEE 26th International Conference on
  • Conference_Location
    Long Beach, CA
  • Print_ISBN
    978-1-4244-5445-7
  • Electronic_ISBN
    978-1-4244-5444-0
  • Type

    conf

  • DOI
    10.1109/ICDE.2010.5447856
  • Filename
    5447856