scispace - formally typeset
Proceedings ArticleDOI

Invited paper: Using OpenCL to evaluate the efficiency of CPUS, GPUS and FPGAS for information filtering

Doris Chen, +1 more
- pp 5-12
TLDR
This paper explores techniques that allow programmers to efficiently use FPGAs at a level of abstraction that is closer to traditional software-centric approaches by using the emerging parallel language, OpenCL.
Abstract
The FPGA can be a tremendously efficient computational fabric for many applications. In particular, the performance to power ratios of FPGA make them attractive solutions to solve the problem of data centers that are constrained largely by power and cooling costs. However, the complexity of the FPGA design flow requires the programmer to understand cycle-accurate details of how data is moved and transformed through the fabric. In this paper, we explore techniques that allow programmers to efficiently use FPGAs at a level of abstraction that is closer to traditional software-centric approaches by using the emerging parallel language, OpenCL. Although the field of high level synthesis has evolved greatly in the last few decades, several fundamental parts were missing from the complete software abstraction of the FPGA. These include standard and portable methods of describing HW/SW codesign, memory hierarchy, data movement and control of parallelism. We believe that OpenCL addresses all of these issues and allows for highly efficient description of FPGA designs with a higher level of abstraction. We demonstrate this premise by examining the performance of a document filtering algorithm, implemented in OpenCL and automatically compiled to a Stratix IV 530 FPGA. We show that our implementation achieves 5.5× and 5.25× better performance per watt ratios than GPU and CPU implementations, respectively.

read more

Citations
More filters
Proceedings ArticleDOI

Big data and industrial Internet of Things for the maritime industry in Northwestern Norway

TL;DR: This paper proposes a new framework integrating BDA and IIoT technologies for offshore support vessels (OSVs) based on a hybrid CPU/GPU/FPGA1 high performance computing platform and believes that such a framework can help maritime companies increase their output and productivity, and hence enable the whole cluster to continue to be a leader in the global maritime industry.
Proceedings ArticleDOI

A performance analysis framework for optimizing OpenCL applications on FPGAs

TL;DR: This paper presents an FPGA-based performance analysis framework that can shed light on the performance bottleneck and thus guide the code tuning for OpenCL applications on FPGAs, and demonstrates that its analytical performance model can accurately predict the performance of OpenCL programs with different optimization combinations onFPGAs.
Journal ArticleDOI

High-Level Language Tools for Reconfigurable Computing

TL;DR: The history of using FPGAs as hardware accelerators is reviewed, the challenges facing the raising of the programming abstraction layers are summarized and five High-Level Language tools for the development of FPGA programs are surveyed.
Proceedings ArticleDOI

A study of data partitioning on OpenCL-based FPGAs

TL;DR: This paper investigates the performance of relational database applications on OpenCL-based FPGAs, and develops a simple yet efficient multi-kernel approach to leverage two emerging features of Altera OpenCL SDK, namely task kernel and channel.
Proceedings ArticleDOI

Relational query processing on OpenCL-based FPGAs

TL;DR: An FPGA-specific cost model is proposed to determine the optimal query plan in less than one minute and achieves a performance speedup 1.5×-4× over the state-of-the-art query processing on OpenCL-based FPGAs.
References
More filters
Proceedings ArticleDOI

Google news personalization: scalable online collaborative filtering

TL;DR: This paper describes the approach to collaborative filtering for generating personalized recommendations for users of Google News using MinHash clustering, Probabilistic Latent Semantic Indexing, and covisitation counts, and combines recommendations from different algorithms using a linear model.
Book

Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)

TL;DR: Using OpenMP describes how to use OpenMP in full-scale applications to achieve high performance on large-scale architectures, and describes how OpenMP is translated into explicitly multithreaded code, providing a valuable behind-the-scenes account of OpenMP program performance.
Journal ArticleDOI

Enterprise information portals

TL;DR: The generic features of EIP applications are outlined, and the different approaches being taken by EIP vendors are categorised, many of whom are adapting software developed for document management and information retrieval purposes.
Proceedings ArticleDOI

FCUDA: Enabling efficient compilation of CUDA kernels onto FPGAs

TL;DR: This work adapts the CUDA programming model into a new FPGA design flow called FCUDA, which efficiently maps the coarse and fine grained parallelism exposed in CUDA onto the reconfigurable fabric, and is the first CUDA-to-FPGA flow to demonstrate the applicability and potential advantage of using the CUda programming model for high-performance computing in FPGAs.
Book ChapterDOI

AutoPilot: A Platform-Based ESL Synthesis System

TL;DR: The rapid increase of complexity in System-on-a-Chip design urges the design community to raise the level of abstraction beyond RTL, and automated behavior-level and system-level synthesis are naturally identified as next steps to replace RTL synthesis.
Related Papers (5)