A performance and energy comparison of FPGAs, GPUs, and multicores for sliding-window applications

Jeremy Fowers, G.R. Brown, Patrick Cooke, Greg Stitt

2012 · 241 citations · 18 references

Concepts

TL;DR

The rise of multicores, GPUs, and FPGAs has created a vast design space with widely varying performance and energy outcomes across accelerators, application domains, and use cases. This paper evaluates sliding‑window applications on FPGAs, GPUs, and multicores. For each device, the authors propose optimization strategies and identify use cases where it performs best. Results show FPGAs deliver up to 11× speedup over GPUs and 57× over multicores while consuming far less energy.

Abstract

With the emergence of accelerator devices such as multicores, graphics-processing units (GPUs), and field-programmable gate arrays (FPGAs), application designers are confronted with the problem of searching a huge design space that has been shown to have widely varying performance and energy metrics for different accelerators, different application domains, and different use cases. To address this problem, numerous studies have evaluated specific applications across different accelerators. In this paper, we analyze an important domain of applications, referred to as sliding-window applications, when executing on FPGAs, GPUs, and multicores. For each device, we present optimization strategies and analyze use cases where each device is most effective. The results show that FPGAs can achieve speedup of up to 11x and 57x compared to GPUs and multicores, respectively, while also using orders of magnitude less energy.

References

18