Reconfigurable Data Processing for Clouds
Reconfigurable computing for some time has had the potential to make a huge impact on mainstream high performance computing. The authors now have very large capacity FPGAs which contain many highly parallel fine grain parallel processing power, and the ability to define high bandwidth custom memory hierarchies offers a compelling combination of flexibility and performance. However, mainstream adoption of reconfigurable computing has been hampered by the need to use and maintain specialized FPGA-based boards and clusters and the lack of programming models that make this technology accessible to regular programmers. FPGAs do not enjoy first class operating system support and lack the Application Binary Interfaces (ABIs) and abstraction layers that other co-processing technologies enjoy (most notably GPUs).