×

FLUPS:基于Fourier的无界泊松解算器库。 (英语) 兹比尔1464.35063

摘要:提出了一个基于Fourier的二维和三维均匀分布网格无界泊松解算器(FLUPS)库。它设计用于处理矩形区域上泊松方程的周期、对称、半无界和完全无界边界条件的所有可能组合,具有统一的分辨率。FLUPS利用3D傅里叶变换的专用实现,以快速且节省内存的方式使用格林函数求解泊松方程。有几个格林函数可用,可以选择显式正则化、谱截断或使用格点格林函数,并提供从2到类谱的验证收敛阶。该算法依赖FFTW库执行1D转换,而消息传递接口(MPI)通信支持内存中所需的数据重新映射。对于后一种操作,第一个可用的实现采用标准的全对全例程。然而,第二种实现以非阻塞和持久点对点通信为特点,在大多数情况下,尤其是在利用OpenMP的共享内存并行性时,其效率更高。针对大规模并行体系结构,该算法的可扩展性被证明高达73720个内核。在三台不同的超级计算机上得到的结果表明,对于典型问题,当核数乘以16时,弱效率保持在40%以上,强效率保持在30%以上。这些数字略好于第三方3D快速傅里叶变换(FFT)工具的预期值,使用该工具测量的执行时间平均延长了20%。从外部来看,求解过程是完全自动化的,因此用户可以从最佳性能中受益,同时不必处理与内存管理、数据映射和傅立叶变换计算相关的复杂性。并行代码在Apache许可证2.0下提供,网址为github.com/vortexlab-uclouvain/flups.

MSC公司:

35J05型 拉普拉斯算子、亥姆霍兹方程(约化波动方程)、泊松方程
2008年9月35日 椭圆方程的格林函数
35J25型 二阶椭圆方程的边值问题
68号01 软件理论的一般主题
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] A.Alexandrov、M.F.Ionescu、K.E.Schauser和C.Scheiman,LogGP:将长消息合并到LogGP模型中以进行并行计算,J.并行分布式计算。,44(1997),第71-79页,https://doi.org/10.1006/jpdc.1997.1346。
[2] C.R.Anderson,解无限域中泊松方程的高阶扩张域方法,J.Compute。物理。,314(2016),第194-205页,https://doi.org/10.1016/j.jcp.2016.02.074。 ·Zbl 1349.65640号
[3] J.C.Bowman和M.Roberts,《分布式多核处理器的自适应矩阵转置算法》,摘自《应用数学、建模和计算科学的跨学科主题》,Springer,纽约,2015年,第97-103页·Zbl 1331.65064号
[4] P.Chatelain和P.Koumoutsakos,基于Fourier的椭圆解算器,用于周期方向和无界方向的涡流,J.Compute。物理。,229(2010),第2425-2431页·Zbl 1423.76332号
[5] P.Chatelain和A.Leonard,粒子方法的各向同性紧插值格式,J.Compute。物理。,227(2008),第3244-3259页,https://doi.org/10.1016/j.jcp.2007.11.039。 ·兹比尔1132.76042
[6] A.G.Chatterjee、M.K.Verma、A.Kumar、R.Samtaney、B.Hadri和R.Khurram,快速傅里叶变换和伪谱流体解算器的缩放,高达196608核,J.并行分布式计算。,113(2018),第77-91页,https://doi.org/10.1016/j.jpdc.2017.10.014。
[7] P.Costa,基于FFT的湍流大规模并行直接数值模拟有限差分求解器,计算。数学。申请。,76(2018),第1853-1862页,https://doi.org/10.1016/j.camwa.2018.07.034。 ·Zbl 1442.65156号
[8] L.Dalcin、M.Mortensen和D.E.Keyes,使用高级MPI的快速并行多维FFT,J.并行分布式计算。,128(2019),第137-150页,https://doi.org/10.1016/j.jpdc.2019.02.006。
[9] B.Dorschner、K.Yu、G.Mengaldo和T.Colonius,椭圆差分方程的快速多分辨率格点格林函数方法,J.Compute。物理。,407(2020),109270·Zbl 07504725号
[10] M.Frigo和S.G.Johnson,FFTW3的设计和实现,Proc。IEEE,93(2005),第216-231页。
[11] V.Fuka,POISFFT——自由并行快速泊松解算器,应用。数学。计算。,267(2015),第356-364页,https://doi.org/10.1016/j.amc.2015.03.011。 ·Zbl 1410.65417号
[12] A.Ghoma、D.Malhotra、H.Sundar和G.Biros、FFT、FMM或多重网格?单位立方体中均匀和非均匀网格的最新泊松解算器的比较研究,SIAM J.Sci。计算。,38(2016),第C280-C306页,https://doi.org/10.1137/15M1010798。 ·Zbl 1369.65138号
[13] T.Gillis、G.Winckelmans和P.Chatelain,任意几何形状周围三维无界问题的快速浸入界面泊松解算器,J.Comput。物理。,354(2018),第403-416页,https://doi.org/10.1016/j.jcp.2017.10.042。 ·Zbl 1380.65410号
[14] A.Gillman和P.Martinsson,解定义在格子上的椭圆差分方程的快速精确数值方法,J.Compute。物理。,229(2010),第9026-9041页,https://doi.org/10.1016/j.jcp.2010.07.024。 ·Zbl 1203.65280号
[15] A.Gillman和P.Martinsson,无限正则格上泊松问题的快速求解器,J.Compute。申请。数学。,258(2014),第42-56页,https://doi.org/10.1016/j.cam.2013.09.003。 ·Zbl 1294.65104号
[16] L.Greengard,S.Jiang和Y.Zhang,自由空间格林函数卷积的各向异性截断核方法,SIAM J.Sci。计算。,40(2018),第A3733-A3754页,https://doi.org/10.1137/18M1184497。 ·Zbl 1481.65262号
[17] L.Greengard和V.Rokhlin,粒子模拟的快速算法,J.Compute。物理。,135(1997),第280-292页·Zbl 0898.70002号
[18] M.Hejlesen、J.Rasmussen、P.Chatelain和J.Walther,无界泊松方程的高阶解算器,J.Compute。物理。,252(2013),第458-467页,https://doi.org/10.1016/j.jcp.2013.05.050。 ·Zbl 1349.65687号
[19] M.M.Hejlesen、G.Winckelmans和J.H.Walther,一维、二维和三维无界泊松方程的非奇异格林函数,应用。数学。莱特。,89(2019),第28-34页,https://doi.org/10.1016/j.aml.2018年9月12日。 ·Zbl 1414.35056号
[20] R.Hockney和J.Eastwood,《使用粒子的计算机模拟》,Taylor和Francis,宾夕法尼亚州布里斯托尔,1988年·兹比尔0662.76002
[21] R.W.Hockney,《使用傅里叶分析快速直接求解泊松方程》,J.ACM,12(1965),第95-113页·Zbl 0139.10902号
[22] H.Ibeid、L.Olson和W.Gropp,FFT、FMM和多重网格在exascale之路上:性能挑战和机遇,J.并行分布式计算。,136(2020年),第63-74页。
[23] J.L.Jodra、I.Gurrutxaga、J.Muguerza和A.Yera,在GPU集群中使用FFT求解泊松方程,J.并行分布式计算。,102(2017),第28-36页,https://doi.org/10.1016/j.jpdc.2016.09.004。
[24] S.Liska和T.Colonius,椭圆差分方程的并行快速多极方法,J.Compute。物理。,278(2014),第76-91页,https://doi.org/10.1016/j.jcp.2014.07.048。 ·兹比尔1349.65700
[25] P.-G.Martinsson和G.J.Rodin,格点格林函数的渐近展开,R.Soc.Lond。程序。序列号。数学。物理学。工程科学。,458(2002),第2609-2622页·Zbl 1022.39022号
[26] D.Pekurovsky,P3DFFT:三维傅里叶变换并行计算框架,SIAM J.Sci。计算。,34(2012),第C192-C209页,https://doi.org/10.1137/1082748X。 ·Zbl 1253.65205号
[27] M.Pippig,PFFT:FFTW到大规模并行架构的扩展,SIAM J.Sci。计算。,35(2013),第C213-C236页,https://doi.org/10.1137/120885887。 ·Zbl 1275.65098号
[28] J.Qiang,用于空间放大模拟的具有纵向周期和横向开放边界条件的快速并行三维泊松解算器,计算。物理学。社区。,219(2017),第255-260页,https://doi.org/10.1016/j.cpc.2017.06.002。 ·Zbl 1411.65154号
[29] I.F.Sbalzarini、J.H.Walther、B.Polasek、P.Chatelain、M.Bergdorf、S.E.Hieber、E.M.Kotsalis和P.Koumoutsakos,《颗粒物模拟便携式并行化的软件框架》,欧洲并行处理会议(德国德累斯顿),纽约斯普林格,2006年,第730-739页。
[30] H.J.Spietz、M.M.Hejlesen和J.H.Walther,求解混合无界周期区域泊松方程的正则化方法,J.Compute。物理。,356(2018),第439-447页,https://doi.org/10.1016/j.jcp.2017.12.018。 ·Zbl 1380.65411号
[31] A.Sunderland、S.Pickles、M.Nikolic、A.Jovic、J.Jakic、V.Slavnic、I.Girotto、P.Nash和M.Lysaght,《PRACE应用代码中FFT性能分析》,技术报告,PRACE,比利时布鲁塞尔,2012年。
[32] U.Trottenberg、C.Oosterlee和A.Schuler,多重网格,学术出版社,纽约,2000年。
[33] F.Vico、L.Greengard和M.Ferrando,自由空间格林函数的快速卷积,J.Compute。物理。,323(2016),第191-203页,https://doi.org/10.1016/j.jcp.2016.07.028。 ·兹比尔1415.65269
此参考列表基于出版商或数字数学图书馆提供的信息。它的项目与zbMATH标识符启发式匹配,并且可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。