|
软件学报 2013
异构多核上多级并行模型支持及性能优化DOI: 10.3724/SP.J.1001.2013.04386, PP. 2782-2796 Keywords: 异构多核,数据并行,任务并行,流水并行,非规则应用,编译优化 Abstract: 低功耗及廉价性使得异构多核在超级计算机计算资源中占有重要比例.然而,异构多核具有高带宽及松耦合一致性等特点,获得理想的存储及计算性能需要更多地考虑底层硬件细节.实现了一种针对典型的异构多核cellbe处理器的多级并行模型cellmlp,通过c语言扩展编译指导语句,实现了对数据并行、任务并行以及流水并行编程模型的支持,提高了并行程序生产率.运行支持优化方面,数据并行采用spe并行数据传输、双缓冲等优化手段来提高数据传输带宽;任务并行使用一种新式混合任务队列以支持异步任务窃取,降低spe线程间竞争,提高了任务并行的可扩展性;流水并行首次使用阻塞信号传输机制实现spe线程间的低开销同步操作.实验对stream,nasbenchmark及bots等应用进行了测试,结果表明,cellmlp可对多种典型并行应用进行高效支持.与目前同类编程模型sarc及cellss进行性能对比,其结果表明,cellmlp实际数据传输带宽以及非规则应用的支持方面具有明显优势.
|