微信一键登录

科吉思石油论坛

搜索
查看: 3771|回复: 0
打印 上一主题 下一主题

新一代精细油气藏数模技术的十宗"最"(四)最高效的并行数值模拟解决方案

[复制链接]

11

主题

11

帖子

97

积分

微信会员

Rank: 3Rank: 3

积分
97
跳转到指定楼层
楼主
发表于 2016-12-30 09:20:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 colchis-lj 于 2016-12-30 09:26 编辑


并行计算提高了油藏数值模拟软件对大型模型计算能力。常规的油藏数值模拟软件如果支持跨节点一般都会使用MPI来进行并行,例如使用Intel MPI库来实现。而在节点内部并行运算的实现却有很多方法,不同的实现方法效率会有很大的不同。目前工作站和刀片常用的架构是多CPU多核的对称多处理器架构,比较典型的是各个厂家生产的采用Intel CPU的系列产品,如HUAWEI的FusionServer系列、DELL的PowerEdge系列等等。

对称多处理(Symmetric Multi-Processing)缩写为SMP,具体技术细节文中不赘述,请各位找度娘补习。要在SMP系统上获得最大的效率提升,需要在软件程序设计时采用支持SMP的方法,例如,在工作站或节点上只启动一个进程,而进程内部使用N个线程执行并行计算。所以也有人会把SMP看作是Shared Memory Parallel——共享内存并行方式,粗略来说也没有问题。

这里我们一定要说明一下MPI在节点内部实现为什么效率会低一些呢?因为如果要在节点内部也使用MPI,就需要启动N个进程,每个进程实际上就是虚拟为一个单机,而代表这些单机的进程间使用MPI进行通信交换数据,先不说通过MPI进行通信的效率影响,单单是从操作系统的角度而言,对进程内部的访问就比进程间的访问效率要高很多。显而易见,对于油藏数值模拟中需要大量数据交换的并行计算来说,使用多线程的进程内部通信方式会显著的提高效率。

tNavigator使用了SMP+MPI混合并行方式,在节点间使用MPI进行并行,而在节点内部采用完全支持SMP的方式进行并行计算。tNavigator的并行化程度很高,甚至模型的初始化计算都是并行化的,而其它模拟器都是在单进程上初始化完成后再把数据分发到其它进程上执行并行计算,对于初始化都要几十分钟的大型模型来说,这个效率的提升将为小伙伴们节约不少时间。此外,tNavigator还支持非一致性内存访问技术(NUMA)、超线程技术。综合这些优势,tNavigator完美贴合硬件特性保障软件性能提升,目前在业内既是首创也是唯一。

那小伙伴们还在等什么,带个tNavigator回去干活吧,享受数模“飞”一般的感觉。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|服务支持:DZ动力|科吉思石油技术咨询有限公司 ( 京ICP备15057753号

GMT+8, 2024-4-27 03:01 , Processed in 0.265047 second(s), 37 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表