一种基于格子Boltzmann理论CPU/MIC协同计算的大涡模拟方法技术

技术编号:9198105 阅读:173 留言:0更新日期:2013-09-26 02:20
本发明专利技术提供一种基于格子Boltzmann理论CPU/MIC协同计算的大涡模拟方法,包括采用LBM方法的大涡模拟方法、CPU端、MIC众核协处理器端以及CPU+MIC协同计算模式,其中:CPU端负责将要进行大涡模拟的网格数据分割,向MIC卡传递大涡模拟所需要的值,CPU+MIC协同计算模式的框架搭建以及任务调度和参数初始化工作,而且在整个网格的计算任务中,CPU也会以Openmp多线程模式,依次通过迁移碰撞,边界处理的多次迭代获取得速度、密度和流函数的宏观参量;MIC众核协处理器负责网格点的迁移和碰撞过程,对边界进行处理,根据分布函数并行求得速度、密度和流函数等宏观参量,在MIC卡上也采用openmp多线程的方式来运算。

【技术实现步骤摘要】

【技术保护点】
一种基于格子Boltzmann理论CPU/MIC协同计算的大涡模拟方法,?其特征在于包括采用LBM方法的大涡模拟方法、CPU端、MIC众核协处理器端以及CPU+MIC协同计算模式,其中:CPU端负责将要进行大涡模拟的网格数据分割,向MIC卡传递大涡模拟所需要的值,CPU+MIC协同计算模式的框架搭建以及任务调度和参数初始化工作,而且在整个网格的计算任务中,CPU也会以Openmp多线程模式,依次通过迁移碰撞,边界处理的多次迭代获取得速度、密度和流函数的宏观参量;MIC众核协处理器负责网格点的迁移和碰撞过程,对边界进行处理,根据分布函数并行求得速度、密度和流函数等宏观参量,在MIC卡上也采用openmp多线程的方式来运算;?CPU端将要进行大涡模拟的网格数据分割,向MIC卡传递大涡模拟所需要的值,以openmp多线程模式,并行执行迁移碰撞,边界处理来获取速度、密度和流函数的宏观参量,具体包括:LES_MIC算法中,根据网格的划分,在对划分边界要做一些特殊的处理,在迁移过程中,每个点的计算需要其周围9个方向的分布函数值,因此,需要在分布函数中多存储1或2行用于下一步时层的计算,并且在每次迭代之后在节点与节点之间、MIC卡之间进行边界数据的交换;CPU负责CPU+MIC协同计算模式的框架搭建以及任务调度,具体包括:单节点服务器采用由双路6核CPU和2块KNF?MIC卡组成的桌面服务器,在CPU+MICs协同计算中,把双路CPU和MIC卡都作为计算设备,这样每个单节点就相当于有3个计算设备,每个设备通过一个OpenMP线程进行控制;本方法是数据级并行,所以采用静态数据划分的方式,每次各个设备读取设定好的网格数据以及边界处理需要的数据,然后分别进行数据处理,相邻设备需要交换数据,迭代多次,直到所有设备计算完成所有网格数据,由CPU输出结果;MIC众核协处理器负责网格点的迁移和碰撞过程,对边界进行处理,根据分布函数并行求得速度、密度和流函数的宏观参量,在MIC卡上也采用openmp多线程的方式来运算;根据对LBM算法中求解离散方程和边界处理的串行算法的热点分析和并行性分析,每个网格点的迁移、碰撞、宏观量统计、平衡态分布函数计算和边界处理的计算都是数据并行的;求解离散方程可以采用迁移碰撞的过程,宏观量统计、平衡态分布函数计算和碰撞过程中对每个网格的计算之间没有任何依赖性,因此,让MIC中的每个线程负责一个网格划分中的一行网格点的计算,每行网格点的计算利用MIC上的向量化技术进一步加速;分布函数的迁移只涉及到该格点周围的其他格点,或通过单个线程对全局存储器中相关分布函数的读操作来实现;在LBM算法中,对边界要做特殊的处理,包括:非平衡外推,反弹,对于边界上的每个格点之间的计算也没有数据的依赖性,因此,利用OpenMP多线程负责边界格点的计算;OpenMP的线程模型设计:根据MIC核心数目设置内核的线程数;具体步骤如下:步骤一:CPU+MIC协同计算框架搭建在单节点上,共有M+1个设备,一个CPU+M个MIC卡,采用OpenMP的fork?join模式搭建单节点上的框架,当程序开始执行的时候只有一个主线程存在,需要进行并行计算的时候,主线程派生出附加线程,即启用M+1个OpenMP线程,?0~M?1号进程控制所有MIC设备,M号线程控制CPU设备,按照数据的分配设计,每个设备进行输入数据的分发读写;在CPU+2MICs平台上,?主线程控制输入数据的动态分发,0号线程控制MIC0设备,1号线程控制MIC1设备,2号线程控制CPU设备;在CPU和MIC卡上,对于分布函数,其大小要比网格大小大两行,同时方便代码的书写,要对最上面的设备和最下面的设备要做+2行的数据定义,其中有一行在代码中不需要使用;单节点上CPU+MICs协同计算的外围框架的伪代码如下所示:定义一些变量//在迭代范围之内?int?DEVICE_NUM??//设备数for(int?i=0;i...

【技术特征摘要】

【专利技术属性】
技术研发人员:卢晓伟张清
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1