论文标题
这一切都是关于数据移动:优化FPGA数据访问以提高性能
It's all about data movement: Optimising FPGA data access to boost performance
论文作者
论文摘要
尤其是可重新配置的计算,尤其是FPGA来加速计算内核,有可能对科学代码和HPC社区一般都有很大的好处。但是,尽管FPGA工具的最新进展使编程可重新配置体系结构的物理行为更加易于访问,以获得良好的性能,必须以数据流样式重新考虑整个算法并重新铸造。降低所有计算设备的数据移动成本至关重要,在本文中,我们探讨了FPGA的最合适技术。我们通过描述大气模型对流方案的现有FPGA实现的优化来做到这一点。通过采用比在CPU上运行的FPGA代码,主要是由于数据移动开销,我们描述了用于大大降低运行时的分析和优化策略,并将我们的FPGA内核的性能提高到了实用的水平,以实现现实世界中的实用水平。这项工作的结果是一组技术,步骤和经验教训,我们发现我们已经显着提高了基于FPGA的HPC代码的性能,并且其他人可以在自己的代码中采用以实现相似的结果。
The use of reconfigurable computing, and FPGAs in particular, to accelerate computational kernels has the potential to be of great benefit to scientific codes and the HPC community in general. However, whilst recent advanced in FPGA tooling have made the physical act of programming reconfigurable architectures much more accessible, in order to gain good performance the entire algorithm must be rethought and recast in a dataflow style. Reducing the cost of data movement for all computing devices is critically important, and in this paper we explore the most appropriate techniques for FPGAs. We do this by describing the optimisation of an existing FPGA implementation of an atmospheric model's advection scheme. By taking an FPGA code that was over four times slower than running on the CPU, mainly due to data movement overhead, we describe the profiling and optimisation strategies adopted to significantly reduce the runtime and bring the performance of our FPGA kernels to a much more practical level for real-world use. The result of this work is a set of techniques, steps, and lessons learnt that we have found significantly improves the performance of FPGA based HPC codes and that others can adopt in their own codes to achieve similar results.