FPGA矩阵计算并行算法研究:面向大规模数据的高性能实现

需积分: 47 18 下载量 200 浏览量 更新于2024-08-07 收藏 6.92MB PDF 举报
"这篇博士学位论文主要探讨了在FPGA(Field-Programmable Gate Array,现场可编程门阵列)平台上实现高效能矩阵计算的方法和结构。作者针对基本矩阵运算,如矩阵向量乘和矩阵乘,设计了FPGA优化方案,通过时空映射和模型构建,提出了一种分块矩阵乘并行结构,显著降低了存储需求和提高了计算效率。此外,还提出了FPGA上的列选主元LU分解的细粒度流水线并行算法,以及全硬件实现的稠密线性方程组求解结构,适用于下三角方程组求解和多右端项线性方程组。论文还涉及了分块稠密矩阵分解的并行算法和结构,以解决不选主元LU分解问题,采用分治策略,结合循环分块和时空映射优化矩阵分解过程。" 本文详细阐述了FPGA在高性能计算特别是大数据处理中的应用,特别是在矩阵计算领域的潜力。随着FPGA芯片硬件资源的增强,可重构计算已成为实现超级计算的重要途径。矩阵计算作为科学和工程计算的核心,FPGA的并行处理能力为加速这些计算提供了可能,但同时也面临着硬件编程复杂性、并行算法设计、存储需求及带宽管理等挑战。 首先,论文提出了一种面向基本矩阵运算的FPGA设计方法,特别是针对矩阵向量乘和矩阵乘的并行结构。通过时空映射和一系列优化手段,包括循环分块,设计了存储效率高的分块矩阵乘并行算法,实现了对任意规模矩阵的高效处理,存储需求从原来的O(b^2)降低到了O(b),其中b代表数据块大小。 其次,论文关注于FPGA上LU分解的并行算法,提出了一种细粒度流水线并行方法,适用于列选主元LU分解,能够扩展到下三角方程组求解和多右端项线性方程组。这种并行结构的线性阵列不仅能实现LU分解,还能解决下三角方程组,同时给出了性能模型以便于性能分析和预测。 最后,论文讨论了FPGA上的分块稠密矩阵分解策略,以不选主元LU分解为例,采用分而治之的方法,结合循环分块和时空映射来优化矩阵分解过程,实现了高效的FPGA并行计算结构。 这篇论文深入探讨了FPGA在矩阵计算中的并行处理技术,提出了一系列优化算法和结构,为解决大规模计算问题提供了新的思路和工具,对于提高计算效率和减少资源占用具有重要意义。