linux 命令全部黑体表示,目录、文件用斜体表示。安装方式参考了这篇文章。

更新:ubuntu 20.04不可以安装parallel studio

win10 1903 开启 wsl 后下载 Ubuntu 18.04 lts并关闭 windows defender 的实时保护(可选,不然 linux 系统下 io 不行)。新版本的 Ubuntu 登陆后首先需要自己创建一个用户,设置 sudo密码。你可以载设置root密码(可选)

sudo passwd root

进入系统后安装 Intel Parallel Studio XE 配置编译环境。

本次不使用gnu安装的原因是个人尝试多次都编译报错,待有空研究一下。理论上gnu安装是最方便的,只需要apt-get少数几个包后就能编译。

Intel Parallel Studio X 用 edu.cn 邮箱注册教育账号后下载在线安装包,大小 18 MB。wget后 tar -xzvf解压,进入目录。用 root 权限运行 install.sh(当然你也可以修改安装目录后只为当前用户安装)

sudo ./install.sh

一路按照要求进行安装,注意后面选择自定义安装,把不需要的组件全部取消选择(硬盘空间大除外)。编译 vasp 的环境只需要:Intel C++,Intel fortran,math kernel for fortran,以及 Intel mpi 。当然 math kenel for C++ 建议安装上,其他软件可以使用。总共安装五个组件,大小约为 3 GB。(完整的是 11 GB )

安装完后配置环境变量,在~/.bashrc内添加如下内容:

source /opt/intel/compilers_and_libraries_2019.4.243/linux/bin/compilervars.sh intel64

source /opt/intel/compilers_and_libraries_2019.4.243/linux/bin/iccvars.sh intel64

source /opt/intel/compilers_and_libraries_2019.4.243/linux/bin/ifortvars.sh intel64

source /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl/bin/mklvars.sh intel64

source /opt/intel/impi/2019.4.243/intel64/bin/mpivars.sh

本次安装的是 2019.4.243 版本的 Parallel Studio XE ,添加的内容需要根据实际情况变化。添加完 source 一下更新变量,随后 which icc ifort icpc mpiifort检查是否完成。

之后需要编译并行 fftw ,进入目录:

cd /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl/interfaces/fftw3xf

进入后切换为 root 用户,并 source /home/user/.bashrc,随后才能编译 fftw3xf :

make libintel64

需要切换 root 的原因是直接 make会提示权限不足(因为当前操作在/opt内)。提权 sudo make时,由于 root 用户没有配置环境变量,导致无法编译。编译结束后 exit退出 root 用户,该目录下出现文件:libfftw3xf_intel.a

另一个做法是安装Intel库时就不以root权限安装,丢到自己目录下,两个方法都行。

随后下载 vasp 文件,tar解压, cd入目录。将 makefile.iclude copy 出来:

cp arch/makefile.include.linux_intel makefile.include

修改少数内容即可。首先是数学库的位置(就添加了一行代码):

MKLROOT = /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl

MKL_PATH = $(MKLROOT)/lib/intel64

BLAS =

LAPACK =

BLACS = -lmkl_blacs_intelmpi_lp64

SCALAPACK = $(MKL_PATH)/libmkl_scalapack_lp64.a $(BLACS)

当然第一行也可以不在 makefile.iclude中加,直接加到 ~/.bashrc中(因为 $MKLROOT 是一个环境路径)。如果你不会这样操作还是老老实实加在这里。

最后 fftm 配置需要修改为:

OBJECTS = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o \

$(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a

没错,你只需要修改两个位置就可以完成。网上的那些首先安装 ifort ,然后编译 openmpi ,然后编译 fftm ,然后编译 vasp 的教程是针对无法取得 Parallel Studio XE 的情况下写的。个人使用的话,上 Parallel Studio XE 就行,简单粗暴。

随后 make all 或者 make std ,取决于你需要什么版本。编译时不能用,不能用,不能用-j 指令,因为 vasp 包内依赖关系严重,加指令会导致编译失败。单线程编译三个包约一个小时。如果编译不成功可能是有些依赖包没安装,apt-get一下就好。

编译完成后配置环境变量,运行方法可以使用 mpirun或者直接 vasp。

完整的 makefile.iclude如下:

# Precompiler options

CPP_OPTIONS= -DHOST=\"LinuxIFC\"\

-DMPI -DMPI_BLOCK=8000 \

-Duse_collective \

-DscaLAPACK \

-DCACHE_SIZE=4000 \

-Davoidalloc \

-Duse_bse_te \

-Dtbdyn \

-Duse_shmem

CPP = fpp -f_com=no -free -w0 $*$(FUFFIX) $*$(SUFFIX) $(CPP_OPTIONS)

FC = mpiifort

FCL = mpiifort -mkl=sequential -lstdc++

FREE = -free -names lowercase

FFLAGS = -assume byterecl -w

OFLAG = -O2

OFLAG_IN = $(OFLAG)

DEBUG = -O0

MKLROOT = /opt/intel/compilers_and_libraries_2019.4.243/linux/mkl

MKL_PATH = $(MKLROOT)/lib/intel64

BLAS =

LAPACK =

BLACS = -lmkl_blacs_intelmpi_lp64

SCALAPACK = $(MKL_PATH)/libmkl_scalapack_lp64.a $(BLACS)

OBJECTS = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o \

$(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a

INCS =-I$(MKLROOT)/include/fftw

LLIBS = $(SCALAPACK) $(LAPACK) $(BLAS)

OBJECTS_O1 += fftw3d.o fftmpi.o fftmpiw.o

OBJECTS_O2 += fft3dlib.o

# For what used to be vasp.5.lib

CPP_LIB = $(CPP)

FC_LIB = $(FC)

CC_LIB = icc

CFLAGS_LIB = -O

FFLAGS_LIB = -O1

FREE_LIB = $(FREE)

OBJECTS_LIB= linpack_double.o getshmem.o

# For the parser library

CXX_PARS = icpc

LIBS += parser

LLIBS += -Lparser -lparser -lstdc++

# Normally no need to change this

SRCDIR = ../../src

BINDIR = ../../bin

笔记本双核四线程,mpirun -np 2 运行结果显示 CPU 占用仅有 50%,但超线程cpu不应该设置为-np 两倍核心数,所以就按50%跑吧。

另外在Ubuntu机器下,用非root方法安装之后,在一个四核机器上能跑到8线程。因此更可能是wsl系统的问题

另外,说一下一些 bug 的解决。如果不开跨节点,需要删除相应配置文件。自己电脑上运行可能会报内存不够的错,此时用 mpirun 不能直接用 vasp_std 。另外对于大体系需要修改 stack 大小,例如改成 256 MB ,不然会内存溢出。

vasp能装在window系统里吗_vasp 5.4.4 在win10/Ubuntu 18.04上的安装相关推荐

  1. vasp能装在window系统里吗_Window安装系统详解

    Windows安装方式大致分为两种, 第一种是使用Microsoft提供的安装工具(其实也是一种维护系统,不过只可以用于安装) 第二种PE下安装(PE也是维护系统,不过PE专注的维护,安装系统只是其中 ...

  2. Win10 + Ubuntu 18.04 双系统工作环境配置

    补一个吧,上个月搞得,写在本地Markdown里了,其实现在已经把Ubuntu换成Deepin了,哈哈. 重装Deepin里的一些问题也可以参考这里的解决方案. Win10 + Ubuntu 18.0 ...

  3. 机械革命Z2 air 安装 win10 + Ubuntu 18.04 双系统

    机械革命Z2 air 安装 win10 + Ubuntu 18.04 双系统 准备工作 Ubuntu的安装过程 安装Nvidia 1060 max-q 显卡驱动 安装后遇到的问题 Ubuntu 与wi ...

  4. 乌班图系统我的世界服务器手机版,如何在Ubuntu 20.04上搭建Minecraft服务器

    <我的世界>是有史以来最受欢迎的游戏之一.本教程说明了如何在Ubuntu 20.04上制作Minecraft服务器.我们将使用Systemd运行Minecraft服务器,并使用该mcrco ...

  5. debian linux 进入单用户模式 修复系统,在单用户模式/紧急模式下启动Ubuntu 18.04/Debian 9系统...

    单用户模式也称为救援模式,还有一个紧急模式,它们是 Linux 系统在关键时刻需要修复的时候采用的故障排除模式,我们将在 Ubuntu 18.04/Debian 9 系统中启用它,救援模式和紧急模式它 ...

  6. win10 + Ubuntu 18.04.1 LTS (Bionic Beaver) 双系统的安装配置

    前言: 由于做一个项目需要使用Ubuntu的系统,鉴于虚拟机在我的电脑上运行比较慢,所以装个双系统.也在网上搜了很多怎么配置的资料,但过程中多多少少遇到一些问题,所以这次记录一下,方便后面的人参考. ...

  7. win10+ubuntu 18.04双系统(联想小新13pro)——我终于安好了!

    因为疫情在家也连不上台式机的远程,决定在联想小新上安装双系统,装了好几天遇到了各种问题,记录一下 这里一定要吐槽!!网上的信息也太多冗杂垃圾了吧,还有更多过时信息根本根本不适用,遇到问题一顿猛搜排着试 ...

  8. linux终端装什么系统下载软件,在Ubuntu 18.04系统中下载安装Termite终端的方法

    以下介绍在Ubuntu 18.04系统或是Ubuntu 16.04系统中安装Termite终端的方法,目前Termite在默认存储库中不可用,必须从源代码安装.Termite是一个以键盘为中心的基于V ...

  9. linux终端界面美化,Ubuntu 18.04系统美化记录:Grub2\主题\登录界面\终端美化

    初装Ubuntu 18.04系统后想美化操作系统,该怎么做?以下为你介绍Ubuntu 18.04美化一体化:Grub2美化.主题美化.登录界面美化.终端美化.以下美化仅是初级介绍,如果需要更多请看Li ...

  10. linux ubuntu安装 mono,在Ubuntu 18.04系统中安装Mono及基本使用Mono的方法

    本文介绍在Ubuntu 18.04操作系统中安装Mono及基本使用Mono的方法.Mono是一个基于ECMA/ISO标准开发和运行跨平台应用程序的平台,它是Microsoft .NET框架的免费开源实 ...

最新文章

  1. IE调试网页之一:F12 开发人员工具简介
  2. 逻辑斯蒂回归(Logistics Regression)
  3. php mysql特殊符号过滤微信小程序_微信小程序数据过滤(filter)方法
  4. Reuse library debug in Chrome - phase3 exchange drop down list
  5. android开发java环境_搭建Android开发环境 - Android - mobile - JavaEye论坛
  6. 伍迷随想冷饭集 之 瞻前顾后之随想
  7. es springboot 不设置id_springboot整合ES_文档ID删除
  8. 素数对(信息学奥赛一本通-T1403)
  9. 数据库dba_DBA延伸数据库指南
  10. 软件正在吞噬整个世界?!
  11. python--迭代器与生成器
  12. 如何下载行政区划数据
  13. 计算机win10分区软件,分区工具哪个好? win10系统分区助手值得拥有
  14. ysoserial exploit/JRMPClient原理剖析
  15. illegal unquoted character
  16. java 单位转换的程序_Java 实现长度单位换算
  17. 【机器学习】生成式模型和判别式模型
  18. 在linux4.15 移植设备树到JZ2440
  19. python实现长截图_用python实现对元素的长截图
  20. 怎么用c语言算二进制位数,C语言位段的应用:统计二进制的位数

热门文章

  1. 在eclipse环境中配置hadoop开发环境遇到的问题
  2. C语言库函数的哈希表使用方法
  3. 远程控制软件也要有plan B备选方案
  4. Linux系统备份与还原
  5. NSIS中文乱码问题
  6. mysql安装教程【安装版】
  7. 与代码无关的网络安全
  8. 王佩丰VBA学习笔记
  9. MFC MessageBox使用教程
  10. xp系统计算机不休眠设置,xp和win7系统怎么设置电脑不休眠详细教程