ABSTRACT
While there seems to be a general agreement that next years' systems will include many processing cores, it is often overlooked that these systems will also include an increasing number of different cores (we already see dedicated units for graphics or network processing). Orchestrating the diversity of processing functionality is going to be a major challenge in the upcoming years, be it to optimize for performance or for minimal energy consumption.
We expect field-programmable gate arrays (FPGAs or "programmable hardware") to soon play the role of yet another processing unit, found in commodity computers. It is clear that the new resource is going to be too precious to be ignored by database systems, but it is unclear how FPGAs could be integrated into a DBMS. With a focus on database use, this tutorial introduces into the emerging technology, demonstrates its potential, but also pinpoints some challenges that need to be addressed before FPGA-accelerated database systems can go mainstream. Attendees will gain an intuition of an FPGA development cycle, receive guidelines for a "good" FPGA design, but also learn the limitations that hardware-implemented database processing faces. Our more high-level ambition is to spur a broader interest in database processing on novel hardware technology.
- Zachary K. Baker and Viktor K. Prasanna. Efficient Hardware Data Mining with the Apriori Algorithm on FPGAs. In Proc. of the 13th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, pages 3--12, 2005. Google ScholarDigital Library
- Nagender Bandi, Ahmed Metwally, Divyakant Agrawal, and Amr El Abbadi. Data Stream Algorithms using Associative Memories. In Proc. of the ACM SIGMOD Int'l Conference on Management of Data, pages 247--256, Beijing, China, June 2007. Google ScholarDigital Library
- Nagender Bandi, Chengyu Sun, Divyakant Agrawal, and Amr El Abbadi. Processing Spacial Data Using Graphics Processors. In Proc. of the Int'l Conference on Very Large Databases (VLDB), Toronto, ON, Canada, 2004.Google Scholar
- Jatin Chhugani, Anthony D. Nguyen, Victor W. Lee, William Macy, Mostafa Hagog, Yen--Kuang Chen, Akram Baransi, Sanjeev Kumar, and Pradeep Dubey. Efficient Implementation of Sorting on Multi-Core SIMD CPU architecture. Journal of the VLDB Endowment/Proc. VLDB 2008, 1(2):1313--1324, 2008. Google ScholarDigital Library
- Netezza Corp. http://www.netezza.com/.Google Scholar
- David DeWitt. DIRECT-A Multiprocessor Organization for Supporting Relational Database Management Systems. IEEE Trans. on Computers, c--28(6), June 1979. Google ScholarDigital Library
- Mark Franklin, Roger Chamberlain, Michael Henrichs, Berkley Shands, and Jason White. An Architecture for Fast Processing of Large Unstructured Data Sets. In Proc. of the IEEE Int'l Conference on Computer Design, pages 280--287, 2004. Google ScholarDigital Library
- Bugra Gedik, Rajesh R. Bordawekar, and Philip S. Yu. CellSort: High Performance Sorting on the Cell Processor. In Int'l Conference on Very Large Databases (VLDB), pages 1286--1297, Vienna, Austria, September 2007. Google ScholarDigital Library
- Bugra Gedik, Philip S. Yu, and Rajesh Bordawekar. Executing Stream Joins on the Cell Processor. In Proc. of the Int'l Conference on Very Large Databases, pages 363--374, Vienna, Austria, 2007. Google ScholarDigital Library
- Seth Copen Goldstein, Herman Schmit, Mihai Budiu, Srihari Cadambi, Matt Moe, and R. Reed Taylor. PipeRench: A Reconfigurable Architecture and Compiler. IEEE Computer, 33(4):70--77, April 2000. Google ScholarDigital Library
- Naga Govindaraju, Jim Gray, Ritesh Kumar, and Dinesh Manocha. GPUTeraSort: High Performance Graphics Co-processor Sorting for Large Database Management. In Proc. of the ACM SIGMOD Int'l Conference on Management of Data, pages 325--336, Chicago, IL, USA, June 2006. Google ScholarDigital Library
- Naga K. Govindaraju, Brandon Lloyd, Wei Wang, Ming Lin, and Dinesh Manocha. Fast Computation of Database Operations using Graphics Processors. In Proc. of the ACM SIGMOD Int'l Conference on Management of Data, Paris, France, June 2004. Google ScholarDigital Library
- David Greaves and Satnam Singh. Kiwi: Synthesis of FPGA Circuits from Parallel Programs. In IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM), 2008. Google ScholarDigital Library
- Shan Shan Huang, Amir Hormati, David Bacon, and Rodric Rabbah. Liquid Metal: Object-Oriented Programming Across the Hardware/Software Boundary. In European Conference on Object-Oriented Programming, Paphos, Cyprus, July 2008. Google ScholarDigital Library
- Xilinx Inc. MicroBlaze Processor Reference Guide. http://www.xilinx.com/support/documentation/sw_manuals/mb_ref_guide.pdf.Google Scholar
- Ryan Johnson, Vijayshankar Raman, Richard Sidle, and Garret Swart. Row-Wise Parallel Predicate Evaluation. Journal of the VLDB Endowment/Proc. VLDB 2008, 1(1):622--634, 2008. Google ScholarDigital Library
- Kickfie. http://www.kickfire.com.Google Scholar
- Richard Neil Pittman, Nathaniel Lee Lynch, and Alessandro Forin. eMIPS: A Dynamically Extensible Processor. Technical Report MSR-TR-2006-143, Microsoft Research Redmond, October 2006.Google Scholar
- Dina Thomas, Rajesh Bordawekar, Charu C. Aggarwal, and Philip S. Yu. On Efficient Query Processing of Stream Counts on the Cell Processor. In Proc. of the Int'l Conference on Data Engineering (ICDE), Shanghai, China, March 2009. Google ScholarDigital Library
- Jingren Zhou and Kenneth A. Ross. Implementing Database Operations Using SIMD Instructions. In Proc. of the ACM SIGMOD Int'l Conference on Management of Data, pages 145--156, Madison, WI, USA, June 2002. Google ScholarDigital Library
- Netronome Flow Engine Acceleration Cards, White Paper. http://www.netronome.com.Google Scholar
Index Terms
- FPGA: what's in it for a database?
Recommendations
Hardware accelerated FPGA placement
A key advantage of field-programmable gate arrays (FPGAs) over full-custom and semi-custom devices is that they provide relatively quick implementation from concept to physical realization. However, as modern FPGAs reach close to one million logic ...
Optimizing CNN-based Segmentation with Deeply Customized Convolutional and Deconvolutional Architectures on FPGA
Special Issue on Deep learning on FPGAsConvolutional Neural Networks-- (CNNs) based algorithms have been successful in solving image recognition problems, showing very large accuracy improvement. In recent years, deconvolution layers are widely used as key components in the state-of-the-art ...
Comments