基于多核波前菱形分块与多维块内并行的电磁代码优化
计算工程、金融与科学
2015-10-20 v1 分布式、并行与集群计算
性能
摘要
理解和优化太阳能电池特性正成为寻找核能和化石能源替代方案的关键问题。通过数值模拟进行的理论分析涉及求解离散形式的麦克斯韦方程组,通常需要大量的计算投入。我们从一个混合并行(MPI+OpenMP)生产代码出发,该代码采用有限差分频域(FDFD)离散化实现时间谐波逆迭代法(THIIM)。尽管该算法具有强带宽受限的模板更新方案特征,但它与迄今为止高性能计算文献中已被详尽研究的流行模板类型显著不同。我们应用了一种新近开发的模板优化技术——具有多维缓存块共享的多核波前菱形分块(multicore wavefront diamond tiling with multi-dimensional cache block sharing),并详细描述了由于特殊模板结构而需考虑的独特性。更新电场和磁场分量时的并发性提供了额外的并行层次。优化后代码的缓存大小需求对分块参数的依赖被精确建模,且一个自动调谐器在剩余参数空间中搜索最优配置。我们能够将执行与内存带宽瓶颈完全解耦,在18核Intel Haswell CPU上相比纯空间分块的最优实现加速了三到四倍。
引用
@article{arxiv.1510.05218,
title = {Optimization of an electromagnetics code with multicore wavefront diamond blocking and multi-dimensional intra-tile parallelization},
author = {Tareq M. Malas and Julian Hornich and Georg Hager and Hatem Ltaief and Christoph Pflaum and David E. Keyes},
journal= {arXiv preprint arXiv:1510.05218},
year = {2015}
}