高性能矩阵乘法与频繁闭合序列并行挖掘
1. Fiteng1000处理器上的高性能矩阵乘法
在大规模多线程的Fiteng1000处理器中,L2缓存由64个线程共享,因此矩阵$\overline{B}$的大小会影响并行算法的性能。在Goto算法中,$\overline{B}$缓冲区大小的最佳选择是将其保持为L2缓存的一半,此时$\overline{B}$的维度为512x512。但对于Fiteng1000处理器,如果每个线程使用L2缓存的一半,性能会很差,因为L2缓存由64个线程共享,缓存冲突严重。研究表明,$\overline{B}$维度为32x32时可获得最佳性能。
为了在Fiteng1000处理器上实现高性能的并行矩阵乘法,采用了以下策略:
- 并行算法设计 :提出了在内存中共享A或B矩阵的并行算法,避免了冗余的数据打包。
- 线程拓扑与数据放置 :选择二维线程空间拓扑、多内存层进行数据放置,并使用不同大小的缓冲区矩阵。
- 代码实现 :在OpenMP并行编程环境下,使用C和汇编语言设计并行代码。
性能测试结果显示,避免A矩阵冗余打包的并行算法性能比流式处理A和C矩阵的算法高约4%,并接近峰值性能。
2. 基于MapReduce的BIDE频繁闭合序列并行挖掘
2.1 背景与动机
顺序模式挖掘旨在发现顺序事件之间的关系,在商业交易、电信记录和气象数据等领域有广泛应用。其中,闭合顺序模式保留了完整模式集的所有信息,且通常更加紧凑,因此更为有用。一些知名的闭合顺序模式挖掘算法包
超级会员免费看
订阅专栏 解锁全文
1469

被折叠的 条评论
为什么被折叠?



