【技术实现步骤摘要】
一种基于GPU加速的二次电子发射模拟方法及系统及设备
[0001]本专利技术涉属于空间微波部件可靠性研究
,特别涉及一种基于GPU加速的二次电子发射模拟方法及系统及设备。
技术介绍
[0002]随着科学技术的发展,利用计算机进行数值模拟已经成为科学研究的一种重要方法。作为众多数值模拟方法之一的粒子模拟方法,最初被用来对等离子体进行研究,经过几十年的快速发展和不断完善,应用范围越来越广,其中微波部件微放电粒子模拟就是最重要的应用领域之一。
[0003]近年来广泛应用于电子推进及二次电子发射过程算法是基于粗粒度的进程级并行编程模型,最常用的是基于消息通信的MPI并行编程模型。基于MPI并行编程模型的仿真算法,其实质是独立的地址空间和显式并行,即在该模型中,每个进程都有属于自己独立的地址空间,各个进程只能访问自己地址空间内的数据,如果需要访问其他进程地址空间中的数据,则需要用户显式通过消息传递机制来实现。
[0004]随着多核处理器的兴起,多线程编程方式越来越受到人们的关注,相比多进程并行模型,多线程模型在上下文切换、线程间通信等方面效率更高。OpenMP采用fork
‑
join的并行执行模式,初始时程序从单线程开始执行,遇到编译制导语句时,单线程根据编译制导语句创建多个子线程,主线程和子线程同时并行完成计算任务,但OpenMP应用范围较窄,只适用于共享存储体系结构计算机。
技术实现思路
[0005]本专利技术的目的在于提供一种基于GPU加速的二次电子发射模拟方法及系 ...
【技术保护点】
【技术特征摘要】
1.一种基于GPU加速的二次电子发射模拟方法,其特征在于,包括以下步骤:初始化微放电模拟所需的参数及数据结构,对GPU设备进行初始化,在进行CUDA语言编程过程中,将GPU设备的初始化代码放置在电子推进函数的起始位置,并保证该函数在整个程序生命周期内仅执行一次;GPU读取数据后采用并行方式推进计算电子,并对二次电子发射过程进行计算;在GPU完成电子推进及二次电子发射计算后,将数据传回系统主存进行数据结构更新,并由CPU进程判断是否继续进行模拟,若达到结束调节则终止模拟计算过程,否则继续计算下一时间的电子推进模拟。2.根据权利要求1所述的一种基于GPU加速的二次电子发射模拟方法,其特征在于,初始化微放电模拟所需的参数及数据结构包括:步骤1,采用三维CAD建模软件/电磁场仿真软件建立待求电子发射器件模型,然后将其以STL/STEP格式进行存储;步骤2,通过已有粒子模拟软件/电磁场仿真软件求解电子发射器件中的电磁场分布并将其以频域形式导出;步骤3,将电子发射器件几何结构进行离散剖分以构成电磁场计算的交错对偶网格体系,即Yee网格;步骤4,采用已有二次电子发射模拟程序导入步骤1中的几何模型并读取步骤2中导出的电磁场数据。3.根据权利要求1所述的一种基于GPU加速的二次电子发射模拟方法,其特征在于,开启电子推进及二次电子发射计算过程,具体步骤如下:设置初始加载电子参数,包括初始加载电子的总数,每个宏电子所包含的实际电子数目,电子加载区域,电子加载开始时间,电子加载结束时间;计算参数初始化,设置初始模拟时间步长以及模拟时长;对GPU设备的CUDA运行环境进行初始化,初始化过程必须在电子推进过程之前完成,且整个程序生命周期内仅执行一次初始化操作;将空间中的电子划分为若干个电子组,每个电子组中包含2000个电子,在电子推进过程中对每个电子组再次进行划分形成多个流处理计算组,流处理计算组中的电子数目是启用CUDA计算线程的整数倍;调用GPU设备核函数完成一个电子组中各个流处理计算组的电子轨迹计算任务,并判断电子是否与器件边界发生碰撞,若发生碰撞,则计算二次电子发射情况,否则仅进行电子推进计算。4.根据权利要求3所述的一种基于GPU加速的二次电子发射模拟方法,其特征在于,通过调用设备核函数完成一个电子组的电子轨迹计算任务,具体为:每个线程负责完成一个电子的相关计算任务,启用多个CUDA线程,并行读取电子的初始位置x及速度u,根据获得的电磁场并行计算电子的新位置x'与速度u',然后判断电子运动轨迹是否越过器件边界,若越过边界,则根据二次电子发射模型计算新的二次电子并确定电子数目和速度。5.根据权利要求3所述的一种基于GPU加速的二次电子发射模拟方法,其特征在于,在电子推进及二次电子发射计算过程中,采用GPU原子累加操作计算新增的二次发射电子总
数M,并记录原子累加过程中每个CUDA线程的累加起始位置,存放在数组stackStartPos[i]中,其中i为CUDA线程编号,stackStartPos[i]的值为i号CUDA线程应该写入的新增电子数组位置;在GPU上动态申请大...
【专利技术属性】
技术研发人员:翟永贵,王洪广,李永东,陈坤,王柯,林舒,王瑞,彭敏,
申请(专利权)人:西安交通大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。