前不久由于教研室科研项目需要接触了SU2这个软件,在教研室服务器上配置环境也是踩了不少的坑,现在把配置SU2环境的过程记录一下,避免以后踩坑的同时也算作一个分享吧。

首先要说明,SU2计算环境分为单核多核并行两种(SU2官网称为Simple Build和Parallel Build)。对于Simple Build,仅需要安装SU2即可;如果想要加快计算速度,就需要用到Parallel Build,此时就需要额外安装一个支持并行计算的工具,MPI。但MPI并不是特定的一个软件,而是一套标准,它有多个实现的版本,就像Linux有Ubuntu,CentOS等等版本一样。

值得注意的一点,Parallel Build并不是在Simple Build基础上增加并行计算功能,所以,若系统中已有使用Simple Build安装的SU2,当后续需要并行计算功能时,应先将Simple Build安装的SU2删除,再进行Parallel Build安装,否则将出现虽然成功安装并行计算环境,并行也能运行,但并行计算比串行还慢的情况。

准备工作一:下载SU2和MPI的源码

由于我的研究项目要用到并行计算的功能,所以还需要下载安装MPI,读者可以根据自己的需要选择是否安装MPI。

下载SU2

在SU2的官网下载SU2的最新版源码:
SU2官网首页
SU2下载页
下载页截图如下

下拉可以看到官网提供了支持多种系统的多种格式SU2下载

这里选择下载源码编译安装,由于使用的是Ubuntu Linux系统,所以选择 .tar.gz 格式下载。

下载OpenMPI

前面提到过MPI有多个版本的实现,这里我选择的是OpenMPI
OpenMPI下载页

选择最新的4.0.2版本 .tar.gz 格式下载
下载好的两个文件如下

准备工作二:安装系统依赖环境

在SU2和MPI源码的编译过程需要用到一些依赖工具,如m4,automake,autoconf等,所以要先对这些包进行安装

sudo apt install m4
sudo apt install automake
sudo apt install autoconf

以上依赖包安装完成后即可正式开始安装SU2

安装SU2之一:Simple Build

再次强调,Simple Build仅适用于安装单核计算环境,如果需要多核并行计算,参看后面的Parallel Build安装。

一定不要在安装好了Simple Build之后直接进行Parallel Build,否则将会出现如前所述的多核慢于单核的情况。

好了,来看如何进行SU2的安装
首先将下载的SU2源码放在一个你喜欢的路径下,我的就直接放在用户主目录的 Downloads 下面了

解压SU2源码,并进入解压后的目录

tar -zxvf SU2-6.2.0.tar.gz
cd SU2-6.2.0/

SU2源码目录结构如下:

依次执行

./bootstrap
./configure --prefix=/usr/local/SU2-6.2.0-install

第二条命令中的 --prefix 参数是我指定的SU2的安装目录,你也可以将其改为你自己希望将SU2安装到的目录,或者直接将 --prefix 省略。但是强烈建议加上此参数指定一个专门的安装路径,因为省略 --prefix 后系统会默认将其安装到 /usr/local/bin 路径下,当安装的软件多了之后这个目录会相当的混乱。

我在执行第二条 ./configure 命令的时候遇到如下的一个错误

谷歌前人经验,解决方法如下

pip install python-config    //如果没有安装pip那么要先 sudo apt install python-pip

解决后继续执行

./configure --prefix=/usr/local/SU2-6.2.0-install

命令执行完成后会在terminal中输出这样一段关于添加环境变量的信息

按照它的提示在 .bashrc 文件中添加上以上几行信息,注意将路径换成你自己的安装路径

vim ~/.bashrc
source ~/.bashrc    //使刚刚添加的环境变量生效

接下来执行

sudo make
sudo make install

如果你的CPU是多核的,那么你可以用下面这条命令替代以上两条,以加快编译速度

sudo make -j 4 install  //我的cpu是4核所以指定4,这里可以将4改为你的cpu核数

不清楚CPU是不是多核的可以这样查看系统CPU个数和每个CPU的核数:

cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l    //查看物理CPU个数
cat /proc/cpuinfo |grep "cores"|uniq    //查看每个CPU的物理核数

到此Simple Build完成

安装SU2之二:Parallel Build

Parallel Build:安装OpenMPI

由于在Parallel安装SU2的时候需要在命令中指定openMPI的安装路径,所以需要先安装openMPI再安装SU2

第一步,还是解压源码并进入源码目录

tar -zxvf openmpi-4.0.2.tar.gz
cd openmpi-4.0.2/

openMPI源码目录结构:

执行

./configure --prefix=/usr/local/openmpi-4.0.2-install
sudo make
sudo make install    //make和make install两条仍然可以用sudo make -j 4 install替代

在 .bashrc 文件中添加环境变量,注意将路径替换为你自己的安装路径

export PATH=$PATH:/usr/local/openmpi-4.0.2-install/bin
exprot LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openmpi-4.0.2-install/lib

保存 .bashrc 文件后执行 source ~/.bashrc 使环境变量生效
测试openMPI是否安装成功:

如上图,有正常的输出未报错即为安装成功。

Parallel Build:安装SU2

解压SU2源码,进入源码目录

tar -zxvf SU2-6.2.0.tar.gz
cd SU2-6.2.0/

执行

./bootstrap

下一步执行

./configure --prefix=/usr/local/SU2-6.2.0-install CXXFLAGS="-O3" --enable-mpi --with-cc=/usr/local/openmpi-4.0.2-install/bin/mpicc --with-cxx=/usr/local/openmpi-4.0.2-install/bin/mpicxx

这条命令非常长,建议复制到文本编辑器中,把路径改成你自己的路径,确认无误后再复制到terminal中执行,否则很容易因为敲错命令导致执行出错
接下来

sudo make
sudo make install    //make和make install两条仍然可以用sudo make -j 4 install替代

等待命令执行完毕,Parallel Build完成

Ubuntu系统搭建SU2计算环境相关推荐

  1. 基于docker在Ubuntu上搭建TensorFlow-GPU计算环境

    这里转载一篇Docker安装TF GPU的版本 基于docker在Ubuntu上搭建TensorFlow-GPU计算环境 由于实验室的服务器有多人共享使用,而不同人的代码对应的keras和tensor ...

  2. ④ESP8266 开发学习笔记_By_GYC 【Ubuntu系统下ESP8266 开发环境搭建】

    目录 ④ESP8266 开发学习笔记_By_GYC [Ubuntu系统下ESP8266 开发环境搭建] 一.安装前准备 1.乐鑫官方的ESP-IDF 编程指南 2.ESP-IDF风格的ESP8266 ...

  3. **Hadoop Ubuntu系统搭建攻略全详细!!!附带Hadoop搭建成功后测试案例**

    Hadoop Ubuntu系统搭建攻略全详细!!!附带Hadoop搭建成功后测试案例 Hadoop搭建教程 一.需要安装的工具: 1.首先确保虚拟机能连上网. 2.更新源列表: sudo apt-ge ...

  4. ubuntu下搭建android开发环境(四)核心篇安装AndroidStudio、sdk、jdk

    [置顶] ubuntu下搭建android开发环境(四)核心篇安装AndroidStudio.sdk.jdk(by 星空武哥) <div class="article_manage c ...

  5. zabbix 系统搭建(LAMP环境)+keepalived LVS配置

    zabbix 系统搭建(LAMP环境) 先搭建好LAMP环境 (介绍) 安装zabbix监控主机 (设置监控主机ip为192.168.200.130) wget http://repo.zabbix. ...

  6. Ubuntu下搭建MPI并行计算环境

    Ubuntu下搭建MPI并行计算环境 [日期:2012-10-10] 来源:Linux社区 作者:hs794502825 [字体:大 中 小] 在这里面可以选择一个合适的openmpi安装包,此处我选 ...

  7. ubuntu下搭建android开发环境(转载)

    在ubuntu下搭建android开发环境,准备学习一下android开发. 1.安装JDK        首先到oracle的官网上下载linux版本的JDK(网址为:http://www.orac ...

  8. win10开发java_win10系统搭建Java开发环境的操作方法

    很多小伙伴都遇到过对win10系统搭建Java开发环境进行设置的困惑吧,一些朋友看过网上对win10系统搭建Java开发环境设置的零散处理方法,并没有完完全全明白win10系统搭建Java开发环境的操 ...

  9. ubuntu下搭建erlang编程环境

    ubuntu下搭建erlang编程环境 吐槽:erlang作为一门小众语言,编程环境配置的我发疯啊,官方标配是emacs,但是我作为中毒已深的vimer实在不想换编辑器了,在尝试的途中我还试过了用ec ...

最新文章

  1. The following signatures couldn't be verified because the public key is not available: NO_PUBKEY XXX
  2. 转载:分享一下免费的ppt网站(好看,免费)
  3. 23种经典设计模式的java实现_3_桥接模式
  4. volatile关键字到底做了什么?
  5. 白沙工业园新松机器人_常州中智永浩助推机器人行业高质发展 打造机器人领域新优势...
  6. 每天一道LeetCode-----某个数在递增序列第一次和最后一次出现的位置
  7. html dom概念,js学习之HTML DOM的一些基础概念
  8. 「兼容M1」Royal TSX for Mac 最强远程管理软件
  9. html如何设置三列列宽相等,CSS分割宽度100%到3列
  10. 2018阿里文学春招面试题
  11. AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(四):开源的Silverlight运行容器的编译、配置...
  12. Java编程:中缀表达式转后缀表达式
  13. matlab 画的点连成线,matlab怎么把点连成线
  14. 面试计算机有什么优势和不足,面试时如何介绍自己的优缺点
  15. Win7旗舰版下安装SQL Server 2008总结
  16. dismiss和remove_关于dismiss的用法,dismiss和fire的区别?
  17. Android 5.x浏览器webView或者qqX5崩溃,Resources$NotFoundException:String resource ID #0x2040003
  18. 蓝桥杯2017国赛 瓷砖样式 dfs+hush
  19. 一文搞懂Oracle字符集
  20. MySQL主外键表关联表数据的同时删除

热门文章

  1. Excel,world ,ppt文件图标显示异常解决办法 (2022最新)
  2. python中的进度条tqdm模块, 让进度可视
  3. PyQt5基础使用!(三)
  4. Tableau 桑基图
  5. Autojs在线云更新教程
  6. 记录 - Dubbo使用Zookeeper为注册中心添加认证口令时,连接失败的故障
  7. “南京才不相信互联网呢”
  8. 怎么改变图片的尺寸大小?图片大小如何修改?
  9. 全球及中国TNFα抑制剂行业竞争调查分析及项目可行性研究报告2021-2027年
  10. 计算机c盘能备份数据吗,Win10不进系统就能备份C盘文件的方法,你知道吗?