相信您一定听说过基于FPGA的计算加速突然成为一个热门话题。你可能还听说过英特尔在几年前收购Altera超过160亿美元的消息。FPGA技术已逐渐的一个杀手应用程序。如今,随着摩尔定律的逐渐减缓。工程师寻找替代方法以更快的速度和更低的功耗处理更多数据,数据中心的控制正在酝酿着巨大的争夺战。
FPGA是加速许多类型计算工作负载的出色平台,特别是那些数据通路适用于大规模并行运算的工作负载。FPGA可以通过在硬件中实现重要的计算密集算法块来减少传统处理器,从而大幅减少延迟和(通常更重要的)功耗。
基于FPGA的加速的一大缺点是编程模型。为了从具有FPGA和传统处理器协同工作的异构计算系统中获得最佳性能,您需要一种方法来分解问题,将传统代码转换为适当的FPGA架构,并在精心设计的硬件配置中实现整体功能。除其他外,这需要FPGA设计方面的大量专业知识,以及将数据输入和输出这些FPGA加速器的总体策略,以及完成任务的存储器和存储架构。做到这一点并不是一件容易的事,并且有很多方法可以在整个过程中出错并最终从您的FPGA投资中获得很少的收益。