The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Implementing database operations using SIMD instructions
Proceedings of the 2002 ACM SIGMOD international conference on Management of data
Optimizing database architecture for the new bottleneck: memory access
The VLDB Journal — The International Journal on Very Large Data Bases
Aurora: a new model and architecture for data stream management
The VLDB Journal — The International Journal on Very Large Data Bases
Fast computation of database operations using graphics processors
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
QPipe: a simultaneously pipelined relational query engine
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
Accelerating database operators using a network processor
DaMoN '05 Proceedings of the 1st international workshop on Data management on new hardware
GPUTeraSort: high performance graphics co-processor sorting for large database management
Proceedings of the 2006 ACM SIGMOD international conference on Management of data
The CQL continuous query language: semantic foundations and query execution
The VLDB Journal — The International Journal on Very Large Data Bases
AA-Sort: A New Parallel Sorting Algorithm for Multi-Core SIMD Processors
PACT '07 Proceedings of the 16th International Conference on Parallel Architecture and Compilation Techniques
Direct A Multiprocessor Organization for Supporting Relational Database Management Systems
IEEE Transactions on Computers
CellSort: high performance sorting on the cell processor
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
Efficient implementation of sorting on multi-core SIMD CPU architecture
Proceedings of the VLDB Endowment
Sorting networks and their applications
AFIPS '68 (Spring) Proceedings of the April 30--May 2, 1968, spring joint computer conference
Kiwi: Synthesis of FPGA Circuits from Parallel Programs
FCCM '08 Proceedings of the 2008 16th International Symposium on Field-Programmable Custom Computing Machines
Streams on wires: a query compiler for FPGAs
Proceedings of the VLDB Endowment
Corey: an operating system for many cores
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
FPGAs: a new point in the database design space
Proceedings of the 13th International Conference on Extending Database Technology
Glacier: a query-to-hardware compiler
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Efficient event processing through reconfigurable hardware for algorithmic trading
Proceedings of the VLDB Endowment
Proceedings of the 19th ACM/SIGDA international symposium on Field programmable gate arrays
The RLOC is dead - long live the RLOC
Proceedings of the 19th ACM/SIGDA international symposium on Field programmable gate arrays
Datalog and emerging applications: an interactive tutorial
Proceedings of the 2011 ACM SIGMOD International Conference on Management of data
TELE-INFO'11/MINO'11/SIP'11 Proceedings of the 10th WSEAS international conference on Telecommunications and informatics and microelectronics, nanoelectronics, optoelectronics, and WSEAS international conference on Signal processing
The VLDB Journal — The International Journal on Very Large Data Bases
Skeleton automata for FPGAs: reconfiguring without reconstructing
SIGMOD '12 Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data
Computer generation of streaming sorting networks
Proceedings of the 49th Annual Design Automation Conference
Towards energy-efficient database cluster design
Proceedings of the VLDB Endowment
Database analytics acceleration using FPGAs
Proceedings of the 21st international conference on Parallel architectures and compilation techniques
Comparison of GPU and FPGA implementation of SVM algorithm for fast image segmentation
ARCS'13 Proceedings of the 26th international conference on Architecture of Computing Systems
Query processing on smart SSDs: opportunities and challenges
Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data
Designing a database system for modern processing architectures
Proceedings of the 2013 Sigmod/PODS Ph.D. symposium on PhD symposium
Optimization of address-based data sorting unit with external memory support
Proceedings of the 14th International Conference on Computer Systems and Technologies
Hardware-oblivious parallelism for in-memory column-stores
Proceedings of the VLDB Endowment
XLynx—An FPGA-based XML filter for hybrid XQuery processing
ACM Transactions on Database Systems (TODS) - Invited papers issue
Hardware acceleration of database operations
Proceedings of the 2014 ACM/SIGDA international symposium on Field-programmable gate arrays
Hi-index | 0.00 |
Computer architectures are quickly changing toward heterogeneous many-core systems. Such a trend opens up interesting opportunities but also raises immense challenges since the efficient use of heterogeneous many-core systems is not a trivial problem. In this paper, we explore how to program data processing operators on top of field-programmable gate arrays (FPGAs). FPGAs are very versatile in terms of how they can be used and can also be added as additional processing units in standard CPU sockets. In the paper, we study how data processing can be accelerated using an FPGA. Our results indicate that efficient usage of FPGAs involves non-trivial aspects such as having the right computation model (an asynchronous sorting network in this case); a careful implementation that balances all the design constraints in an FPGA; and the proper integration strategy to link the FPGA to the rest of the system. Once these issues are properly addressed, our experiments show that FPGAs exhibit performance figures competitive with those of modern general-purpose CPUs while offering significant advantages in terms of power consumption and parallel stream evaluation.