FPGA上的可扩展矩阵矩阵乘法
该存储库包括用于Xilinx FPGA的矩阵矩阵乘法(A * B = C)的纯Vivado HLS实现,使用Xilinx Vitis / SDx / SDAccel实例化内存和PCIe控制器并与主机接口。
在上进行的实验实现了一半,单精度和双精度的462 GFLOP / s,301 GFLOP / s和132 GFLOP / s,其中跨越三个SLR的路由是主要瓶颈,阻止了进一步扩展。 该代码不是特定于设备的,可以为Xilinx OpenCL运行时支持的任何Xilinx FPGA进行配置。 内核也已验证可在TUL KU115和Alveo U250板上执行,结果相似。
该实现使用脉动阵列方法,其中线性连接的处理元素计算对输出矩阵图块的外部乘积的不同贡献。
在 [1]中介绍了用于实现该内核的方法。 有关我们应用的优化技术的一般说明,请参阅有关的文章[2]。
1