美章网 资料文库 微波源器件的FDTD建模范文

微波源器件的FDTD建模范文

本站小编为你精心准备了微波源器件的FDTD建模参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

微波源器件的FDTD建模

1并行FDTD建模

假设以index<domain>表示domain区域内的多重索引结构数据,var<depth,domain>表示domain区域、深度为depth的实际变量数据。并行FDTD建模包括两个模块:(1)并行建立多重索引结构;(2)基于多重索引结构的影像区填充。以下分别作具体描述。

1.1并行建立多重索引结构与串行算法不同的是,在并行建立多重索引结构中,单个进程仅对其拥有的本地变量数据建立多重索引。图1给出了并行建立多重索引结构的示意图,其中索引深度n为1。后面的图中均以索引深度为1作为示例。图中下面部分是网格数据,它是一个索引,指向一个表格中的某一项。不同网格数据可能指向表中的同一项。不同处理器维护不同的表。当索引深度n大于1时,每个处理器将包含多个表,网格数据代表指向第1个表的索引,第1个表中的某一列又指向第2个表,另一列又指向第3个表,第2个表的某一列又指向第4个表,等等。网格数据和这些表就组成了复杂的索引结构。这里,索引深度是从网格数据开始计数并实现所有表的间接寻址中的最大深度。

1.2基于多重索引结构的影像区填充这里,index<*>中,boundary表示本进程拥有的网格区域边界,ghost表示影像区,tmp表示用于存放临时数据的临时开辟的内存区域。算法第一步,是实现邻居间通信,填充影像区数据。对于发送方,首先排查出边界(包括物理边界和人工边界)不同索引值所对应的索引结构,并将它记录于缓冲区diffbuf中,然后将diffbuf和对应的变量值一起发送给邻居进程。作为接收方,它先接收信息,将其存储于index<tmp>、diffbuf、var<depth,tmp>中,然后遍历索引表,根据内容更新对应的索引结构和变量数据。图2和图3给出了算法两个步骤的示意图。在基于多重网格索引结构的影像区填充算法中,主要包含三个部分:预处理、通信和后处理。在预处理部分,发送方将记录相异网格值对应的索引结构,并存储相关数据到diffbuf数据结构中。通信部分将边界对应的多重索引结构、diffbuf数据进行发送和接收。后处理中,接收方将更新边界对应的多重索引结构。通信部分的执行时间可用如下经典公式来描述。其中L为两个计算节点之间的延迟,o为两个节点之间传输单位字节数据的开销,d为实际传输数据的字节数。预处理和后处理的执行时间与内存访问速度、以及相异网格值对应的多重索引结构相关,即与应用密切相关。

2性能测试

并行测试平台如下:由186个四核IntelXeon64微处理器组成,它们之间由InfinibandDDR高速互联连接,内存5.95TB,磁盘容量4.8TB.我们在该平台上首先测试了五组数据,网格规模从100100100变化到500500500,处理器规模从8变化到1024。性能测试如图4所示。显然,随着网格规模和处理器规模的增加,通信时间增加。同时,在两种网格规模400400400和500500500情况下,比较了新算法与常规的影像区填充方法的性能。如图5所示。常规方法就是邻居之间交换相交边界信息。可以发现,随着处理器规模的增加,两种方法的执行时间都随之增长。同时,比较了新算法与常规的影像区填充方法的性能,如图5所示。常规方法就是邻居之间交换相交边界信息,这里用阻塞式send和receive成组来交换边界网格数据。可以发现,当网格规模从64M增加到125M时,相对于常规方法,基于多重索引的影像区填充方法的并行执行时间的增长幅度较为显著,且随着处理器个数的增长,差距更加增大。这是由于新算法在进行通信之前,需要进行预处理工作,即从边界数据中查找到相异网格值,并将相应索引结构对应的间接数据找出并存储到临时空间。当网格规模增大时,查找范围增大,同时相异网格值的个数也可能增加,使得执行时间增加。另外,网格规模为64M时,当处理器核数增长到一定规模(64),基于多重索引的影像区填充算法的并行执行时间小于常规方法,这有可能是由于分散到更多处理器核之后,测试数据中涉及到边界的表中数据量较少,也就是diff_buf的计算较少,且需要打包的数据量也少,同时由于采用了异步发送和接收操作,相对于常规方法可以减少部分时间。图6给出了采用上述的并行FDTD建模后,一典型微波源器件的几何结构示意图。在fdtd建模中,其索引深度为5,表的宽度基本固定,长度随模型的不同而变化。由上可知,基于多重索引结构的影像区填充算法仍然属于邻居间通信。该算法与传统的影像区填充算法的区别在于需要作计算和重组织工作。其通信量依赖于相邻进程间相异网格值的个数、索引深度、各表中与相异网格值对应的表项面积。本文给出了该算法能够有效实现并行FDTD建模的性能测试结果。进一步详细地测试将在下一步工作中完成。

3结束语

本文针对微波源器件模拟中的并行FDTD建模提出了一种有效的并行计算方法,在1024个处理器的计算平台上,验证了其有效性。

作者:陈军 单位:北京应用物理与计算数学研究所 高性能计算中心