[发明专利]一种基于TBB线程构建块的连续系统仿真多核并行方法无效
申请号: | 200910092407.0 | 申请日: | 2009-09-10 |
公开(公告)号: | CN101639788A | 公开(公告)日: | 2010-02-03 |
发明(设计)人: | 李妮;唐力勇 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F17/50 |
代理公司: | 北京永创新实专利事务所 | 代理人: | 周长琪 |
地址: | 100083*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于TBB的连续系统仿真多核并行方法,主要包括以下步骤:步骤一,搭建TBB并行计算平台;步骤二,构造并行ParaODES模版类;步骤三,模型初始化;步骤四,TBB任务调度初始化;步骤五,仿真时间范围判断;步骤六,调用并行模版类ParaODES;步骤七,仿真结果传递;步骤八,结束TBB任务调度。本发明利用TBB实现连续系统仿真的并行化处理,提高了仿真运算的速度,从而满足仿真的实时性要求,缩短了仿真研究周期;利用TBB进行并行化处理,过程简单灵活,易于操作,具有很好的扩展性;TBB采用多核架构,符合当今并行技术向多核平台发展的方向。 | ||
搜索关键词: | 一种 基于 tbb 线程 构建 连续 系统 仿真 多核 并行 方法 | ||
【主权项】:
1、一种基于TBB线程构建块的连续系统仿真多核并行方法,其特征在于,包括以下步骤:步骤一:搭建TBB并行计算平台;在计算机中置入TBB文件包,在VC目录中添加TBB的包含文件、库文件及可执行文件,最后添加TBB20_INSTALL_DIR的值为C:\Program files\Intel\TBB\2.0到系统环境变量;步骤二:构造并行ParaODES模版类;预估计算和校正计算使用parallel_for模版类,根据parallel_for模版构造并行类,并将其命名为ParaODES模版类;具体步骤为:一、编写预估计算和校正计算的程序;模版类ParaODES中的预估计算和校正计算按以下公式进行:预估计算: 校正计算: 其中: 式中:yi+1p表示状态变量下一步的估计值,yic表示状态变量当前步的校正值,yi-1c表示状态变量上一步的校正值,fip表示状态变量导数当前步的估计值,fi+1p表示状态变量导数下一步的估计值,fic、fi-1c、fi-2c、fi-3c分别表示状态变量导数当前步、前一步、前两步和前三步的校正值,ti表示当前时刻,ti-1表示上一时刻;式(1)、(2)和式(3)、(4)分别在两个处理内核P1、P2上并行执行,在P1中计算yi+1p,然后根据yi+1p的值计算fi+1p;在P2中计算yic,然后根据yic的值计算fic;P1、P2在结束了一步计算之后进行通讯;二、在模版类ParaODES的operator接口中将循环参数修改为blocked_range模板类;将operator接口的最外层循环参数修改成TBB中定义的blocked_range模板类,使之能够支持循环体内任务的并行划分;并行计算模版类ParaODES构造完成;步骤三:模型初始化;在仿真开始时,首先对仿真模型进行初始化,即设置连续系统微分方程组右函数、问题规模n、仿真总时间Tmax、积分步长h;导数、状态量、中间量的变量声明以及各变量赋初值,其中n为方程组中方程的数目;步骤四:TBB任务调度初始化;步骤五:仿真时间范围判断;判断当前时间t是否超出仿真时间范围Tmax,若t<Tmax,则执行步骤六,否则执行步骤八;步骤六:调用并行模版类ParaODES;调用步骤二中的ParaODES模版类完成预估-校正的并行计算,通过ParaODES模版类创建一个线程计算yi+1p的估计值,并根据yi+1p计算导数的估计值fi+1p;通过ParaODES模版类创建另一个线程并行计算yic的精确值,并根据yic计算导数的精确值fic;最终得到仿真结果yic;在上述过程中,需要用到的导数值:当前步导数估计值fip、前一步导数校正值fi-1c、前两步导数校正值fi-2c和前三步导数校正值fi-3c,并得到新的导数估计值fi+1p和导数校正值fic;步骤七:仿真结果传递;将步骤六中的当前步导数估计值fip、前一步导数校正值fi-1p、前两步导数校正值fi-2c、前三步导数校正值fi-3c和状态变量当前步的校正值yic这五个参数的值传递给当前变量的后一步,即将fi-2c的值传递给fi-3c,将fi-1c的值传递给fi-2c,将fic的值传递给fi-1c,将fi+1p的值传递给fip,将yic的值传递给yi-1c;时间t增加一个单位长度;返回步骤五;步骤八:结束TBB任务调度;完成并行计算任务,结束TBB任务调度。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200910092407.0/,转载请声明来源钻瓜专利网。