先简单记录一下,虽然还有一些疑惑没有解决。

之前安装openmpi是用的命令安装,版本比较低,mfix并行总出现死锁问题,于是想看看是不是openmpi版本导致,虽然目前还未找到具体原因,但是先记录下踩到的坑。

下载openmpi最新版本:https://www.open-mpi.org/software/ompi/v3.0/

安装openmpi具体方法参见:http://www.cnblogs.com/platero/p/4182436.html

安装主要是这几个命令:

./configure --prefix="/usr/local/openmpi"
make
sudo make install

然后~/.bashrc中添加:

export PATH=$PATH:/usr/local/openmpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openmpi/lib/

最后执行命令:

sudo ldconfig
source ~/.bashrc

安装好以后并行运行mfix:

mpirun -np  ./mfixsolver -f clc.mfx

结果报错:

There are not enough slots available in the system to satisfy the 8 slots

Either request fewer slots for your application, or make more slots available for use.

电脑是6核12线程,之前没有出现这种问题。如果用低于6线程运行就没有问题,查了下,发现可以用--oversubscribe参数申请超线程,因此把命令写成:

mpirun --oversubscribe -np  ./mfixsolver -f clc.mfx

就可以了。具体参见:https://stackoverflow.com/questions/35704637/mpirun-not-enough-slots-available

但是问题就来了:

6核12线程对于mpi来说,可用线程到底是6线程还是12线程。低版本openmpi则没有这个问题。而且开启--oversubscribe参数后就开始频繁出现段错误,显然不是很好的选择。

暂时存疑。

还有就是,在ubuntu16.04上并行出现死锁问题的case,在ubuntu14.04上却一切正常,真的是无语~~

死锁问题具体参见:http://www.cnblogs.com/Jay-CFD/p/8849336.html

openmpi-3.0.1超线程报错问题的更多相关文章

  1. 【spring boot】整合LCN,启动spring boot2.0.3 启动报错:Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean.

    spring boot 2.0.3启动报错: Error starting ApplicationContext. To display the conditions report re-run yo ...

  2. 0.4 IDEA报错以及解决方式

    0.4 IDEA报错以及解决方式一.端口被占用 [WARNING] FAILED SelectChannelConnector@0.0.0.0:8080: java.net.BindException ...

  3. ubuntu 16.04 anaconda 4.2.0 安装tensorflow 报错

    ubuntu 16.04 anaconda 4.2.0 安装tensorflow 报错. 安装pyenv后,在pyenv环境内安装 anaconda,然后再安装tensorflow不再报错,比较奇怪, ...

  4. .Net4.0 ashx页面报错:检测到有潜在危险的Request.Form值(转)

    原地址:http://zzhi191.blog.163.com/blog/static/1350849520111116518067/ web开发中难免要多到ajax技术. asp.net中我们处理a ...

  5. 关于cocos2dx 3.0升级崩溃报错(unable to load native library) 和(Fatal signal 11 (SIGSEGV) at 0x00000000)

    近期一直在Windows平台开发cocos-2dx游戏,期间做了一次引擎升级,升级到了3.0正式版本号.Windows平台上表现非常正常,没有出现什么问题. 上周五准备公布一个安卓包,编译非常轻松的就 ...

  6. Android6.0 中appcompat_v7 报错

    更新了AndroidSDK以后 各种错误,新建一个项目会附赠一个appcompat_v7,你只要知道这个是一个兼容包就可以了,具体的特性可以看相关介绍,其实也没啥特别的就是为了兼容低版本的呗, 但是呢 ...

  7. JMeter3.0启动日志报错WARN - org.jmeterplugins.repository.Plugin: Unable to load class解决方法

    解决方法: 通过sh find-in-jars 'HlsSampler' -d /data/apache-jmeter-3.0/lib/ext/确定这个class文件在哪个jar包 由于find-in ...

  8. vue3.0使用axios报错问题记录

    vue-cli3.0使用axios的时候出现错误,记录一下 报错信息: Uncaught TypeError: Cannot set property $axios of #<Vue> w ...

  9. 编译gcc5.1.0时的报错

    编译安装gcc5.1.0时出现如下报错: configure: error: error verifying int64_t uses long long 这是由于没有安装gcc_c++导致的,安装下 ...

随机推荐

  1. 【bzoj2749】[HAOI2012]外星人

    2749: [HAOI2012]外星人 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 677  Solved: 360[Submit][Status][ ...

  2. opennebula 模板参数说明

    两种模板配置方式一.光驱引导启动需要配置:disk1:磁盘类型:cdrom      驱动类型:file      磁盘标记:hd      是否只读:yesDisk2:磁盘类型:DATABLOCK驱 ...

  3. Ubuntu 复制 拷贝和自适应屏幕

    ubuntu 16.04安装vmtools实测无效!!!!!!11 1.解决VMware workstation与主机的粘贴.复制.文件拖拽问题. 2.解决VMware workstations中Ub ...

  4. Solidity notes

    1. 查询transaction历史记录 https://forum.ethereum.org/discussion/2116/in-what-ways-can-storage-history-be- ...

  5. ShopNc实例化对象

    1.模型 $model_member = Model('member'); 2.接口 require_once BASE_ROOT_PATH.'/member/api/smiMember/action ...

  6. java IO Nio 文件拷贝工具类Files

    public static void main(String[] args) throws Exception { Files.copy(Paths.get("file/text.txt&q ...

  7. Java集合框架---重构设计

    面向接口编程: 接口类型 变量 =new 实现类(); List  list=new ArrayList(); --------------------------------------- List ...

  8. Android 画个电池出来(Paint和canvas)

    1.Android中很多时候都要自己去画一个自定义控件出来,就需要用到Paint和Canvas这两个类. 2.效果图:

  9. [Win32::Console]Perl终端版生命游戏

    环境,WinXP/Win7  Perl 5.16 默认循环1000次,按ESC提前退出 use strict; use Term::ReadKey; use Win32::Console; use T ...

  10. 用C语言构建一个可执行程序的流程

    1.流程图 从用C语言写源代码,然后经过编译器.连接器到最终可执行程序的流程图大致如下图所示. 2.编译流程 首先,我们先用C语言把源代码写好,然后交给C语言编译器.C语言编译器内部分为前端和后端. ...