visual studio 2019 Intel Parallel Studio XE2020下FORTRAN安装及MPI并行配置计算
实现步骤
- 下载安装包
- visual studio 2019版本的下载
- intel parallel studioXE2020下载
- 安装过程
- visual studio 2019版本的安装
- intel parallel studioXE2020安装
- MPI相关配置
- 新建项目步骤
- 配置步骤
- 结束
下载安装包
visual studio 2019版本的下载
(1)visual studio 2019版本的下载,下载地址如下:
https://visualstudio.microsoft.com/zh-hans/vs/
下载界面如图:
共有三个版本可供选择,community版本适合个人使用,并且免费;professional版本和enterprise版本都需要序列号,
我在这里选择了专门面向程序开发人员的professional版本并进行下载
intel parallel studioXE2020下载
(2)intel parallel studioXE2020下载,我下载的是集群版本的,为了做MPI;具体的下载途径可以百度(我的是直接从别人copy来的)。
安装过程
!!!重要!!!
必须先安装visual studio2019,后安装intel parallel studioXE2020。
visual studio 2019版本的安装
这里因为我已经安装好了,所以只有修改选项,如果是首次安装,只需要在选项中选择C++的那个即可,其余的默认点击右下角安装就好
安装好之后,输入序列号认证(如果是communnity版本就不用认证),激活之后,关掉界面。进行后续安装
intel parallel studioXE2020安装
可以参考这里百度经验上面对2918版本的安装步骤https://jingyan.baidu.com/article/37bce2be5efc901002f3a216.html
因为我需要使用MPI和VTune等功能,所以我在选择时把所有的功能全都选上了。
安装完成后可以选择一个fortran很简单的例子测试并运行一下看看是否正常,比如hello world
MPI相关配置
新建项目步骤
文件>>新建>>项目
>>下一步
>>创建
在source files右键>>添加>>新建项
>>添加
这样就创建好了,就可以直接在里面写代码,编译运行。但是在这之前,需要对MPI进行编译环境配置
配置步骤
文章的信息,主要来源于官网,一定要按照步骤准确配置,否则会出现许多错误。
https://software.intel.com/content/www/us/en/develop/documentation/mpi-developer-guide-windows/top/introduction.html
(1)安装mpi库,因为我已经在XE2020里面选择了此选项,所以不必重新安装;
(2)设置MPI库环境:直接双击运行批处理文件:vars.bat,我的在C:\Program Files (x86)\IntelSWTools路径下面搜索,然后找到。
(3)在电脑搜索框输入cmd,以管理员身份运行,输入hydra_service -status,以确保hydra_service正在运行
如果不是正在运行的话,可以输入hydra_service -install,
这样再输入hydra_service -status的话,显示的就是在运行了,
(4)注册用户的凭证信息,并保存在注册表中。输入mpiexec -register,然后输入自己设置的用户名,密码,确认密码,回车出现保存
这里其实还有两种其他办法,不用输入用户名和密码,但是需要修改设置,而且会耗费时间,所以不符合并行的目的,我没有选择。
(5)找到compilervars.bat双击运行。
(6)找到 mpivars.bat双击运行。
(7)在console上右键>>属性
(8)配置属性> Debugging下修改:
Command: KaTeX parse error: Undefined control sequence: \intel at position 13: (I_MPI_ROOT)\̲i̲n̲t̲e̲l̲64\bin\mpiexec.…(TargetPath)"
针对我自己的文件夹,commond是:C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.1.216\windows\mpi\intel64\bin\mpiexec.exe
Command arguments是:-n 4 “$(TargetPath)” ,代表4各核计算。
修改后点击应用
(9)在fortran>general下,修改Additional Include Directories: $(I_MPI_ROOT)\intel64\include
针对我自己的文件夹,C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.1.216\windows\mpi\intel64\include
修改后点击应用
(10)在linker>general下,修改Additional Library Directories: $(I_MPI_ROOT)\intel64\lib<configuration>,其中,的选项可以是debug或者是release,
( release : multi-threaded optimized library
debug : multi-threaded debug library)
因为我的是debug模式,所以我的文件夹是,C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.1.216\windows\mpi\intel64\lib\debug
修改后点击应用
(11)在linker>input下,修改Additional Dependencies: impi.lib
修改后点击应用
(12)点击确定
(13)选择一个较为简单的mpi的fortran程序粘贴进去,如
! 简单的 MPI 并行程序 Fortran 实现示例! ! – by Jackdaw ! – QQ 群 Fortran Coder(2338021)! – 2018 10 24 ! ! 任意进程间相互问候!
program main
use mpi
implicit none
integer :: myid, numProcs, nameLen, ierr
character(len=mpi_max_processor_name) :: p_name call mpi_init( ierr ) ! 完成 MPI程序 的初始化工作
call mpi_comm_rank( mpi_comm_world, myid, ierr ) ! 获取当前进程标识号
call mpi_comm_size( mpi_comm_world, numProcs, ierr ) ! 获取通信域包含的进程数 if( numProcs .lt. 2 ) then write(*,*) "System requires at least 2 processors."call mpi_abort( mpi_comm_world, 1, ierr )
end if call mpi_get_processor_name( p_name, nameLen, ierr ) ! 获取运行当前进程的机器名
write(*,*) "Processor ",myid," is alive on ",p_name(1:nameLen),"."
call sleep(1)
call mpi_barrier( mpi_comm_world, ierr )
call hello()
call mpi_finalize( ierr ) ! 完成 MPI程序 的结束工作
end program main
! ############################################################################## !
! 任意两个进程间交换信息,问候信息由发送进程标识和接收进程标识组成!
! ##############################################################################
subroutine hello()
use mpi
implicit none
integer :: nproc, me, type = 1
integer :: buffer(2), node
integer :: istat( mpi_status_size ), ierr
call mpi_comm_rank( mpi_comm_world, me, ierr )
call mpi_comm_size( mpi_comm_world, nproc, ierr ) if( me .eq. 0 ) then write(*,*) "Hello test from all to all."
end if do node = 0, nproc-1 if( node .ne. me ) then buffer(1) = me buffer(2) = node ! 首先将问候信息发出call mpi_send( buffer, 2, mpi_integer, node, type, mpi_comm_world, ierr ) ! 消息发送! 然后接收被问候进程对自己发送的问候信息call mpi_recv( buffer, 2, mpi_integer, node, type, mpi_comm_world, istat, ierr ) ! 消息接收if( buffer(1) .ne. node .or. buffer(2) .ne. me ) then write(*,*) "Hello: ",buffer(1)," = ",node," or ",buffer(2)," = ",me write(*,*) "Mismatch on hello processors; node = ",node end if write(*,*) "Hello from ",me," to ",node,"."end if
end do
end subroutine
(14)生成>>生成解决方案
(15)调试>>开始执行不调试
备注:还有一个重要的问题是版本的问题
在我的运行中,我设置的版本信息如下:
右键解决方案>>属性>>配置管理器
如果之前平台是win32,可以点小箭头然后新增,就有X64了。
结束
研究了两天,终于成功了,走了很多弯路,最大的感受是,最好还是按照官网上面官方版本的说明进行操作,不要觉得差不多版本操作就一样,还是有一些不同的。
学习之路,漫漫长夜,终见黎明。
转载请注明出处,谢谢。
visual studio 2019 Intel Parallel Studio XE2020下FORTRAN安装及MPI并行配置计算相关推荐
- intel parallel studio xe 2020 Update 4
parallel studio xe 2020是intel公司推出的一款软件开发工具合集,通过它可以有效帮助用户在C ++/ C和Fortran上的Windows.MacOS.Linux等平台上更快速 ...
- VS2017+Fortran(Intel Parallel Studio XE 2018)+MPI
相关文件资源: VS 2017 提取码:hyz3 Fortran (Intel Parallel Studio XE 2018) 提取码:arn5 MPI 提取码:kgo6 环境:Win10操作系统 ...
- VS2017+Fortran2018(intel parallel studio xe 2018 update 3)集成失败【已解决】
亲测可行 安装有先后顺序 先安装VS2017,网上很多资源,如这个: VS2017. 再安装intel parallel studio xe 2018 update 3,同样有许多资源,如这个:For ...
- 安装Intel Parallel Studio xe→Intel oneAPI
安装Intel Parallel Studio xe→Intel oneAPI+HPC Toolkit 介绍 Intel® oneAPI Base Toolkit Intel oneAPI 的工具包都 ...
- Intel Parallel Studio XE
Intel Parallel Studio XE 英特尔® 高性能并行程序开发工具套件 英特尔正式推出Intel® Parallel Studio XE,是一款IDE软件,该并行程序开发工具套件在C+ ...
- Intel的FORTRAN编译器(即Intel® Parallel Studio XE Cluster Edition)许可证过期 解决方法
Intel的FORTRAN编译器(即Intel® Parallel Studio XE Cluster Edition)许可证过期 解决方法 发现问题 解决问题 发现问题 在一段时间没有使用ifort ...
- Intel Parallel Studio XE Cluster Edition 2020 Linux
Intel Parallel Studio XE Cluster Edition 2020 Linux for windows and Linux 链接:https://pan.baidu.com/s ...
- python3.8提示pip_Linux下升级安装python3.8并配置pip及yum的教程
服务器的CentOS 7中自带的python版本是python-2.7.5,需要再安装一个python-3.8.1 一.查看版本 安装前查看一下是否已经安装过python,我这里自带了python2. ...
- rhel mysql安装_RHEL6.4下MySQL安装方法及简单配置
1.MySQL安装方法简介 1.rpm包yum安装 2.通用二进制包安装 3.源码编译安装 注意:实验所采用的系统平台为:RHEL6.4 2.rpm ins 首页 → 数据库技术 背景: 阅读新闻 R ...
- ubuntu18.04下hadoop安装与集群配置
ubuntu18.04下hadoop安装与集群配置 hadoop安装_单机/伪分布式配置 环境 创建hadoop用户 更新apt 安装SSH.配置SSH无密码登陆 安装Java环境 安装 Hadoop ...
最新文章
- 招聘 | 香侬在召唤:算法工程师,让金融把你的代码变现
- dede中list标签php,dedecms标签中什么表示列表标签
- 25 | 基础篇:Linux 磁盘I/O是怎么工作的(下)
- 从Hotspot JIT编译器打印生成的汇编代码
- 这5种思维模式,大牛产品经理都在用
- sql case when then else多个条件_SQL-多表查询
- [码海拾贝 之Perl]获取日期以及日期的加减
- 夺命雷公狗-----React---5--props对象的传递
- edittext禁止换行符但能自动换行简书_利用 subfinder 让群辉 NAS 实现自动下载字幕...
- html 免备案,免备案香港主机对网站SEO有影响吗?
- Go的研习笔记-day11(以Java的视角学习Go)
- mp4播放器下载android,MP4视频播放器最新版下载_MP4视频播放器正式版_MP4视频播放器9.3-华军软件园...
- php输出世界时转北京时,php中把美国时间转为北京时间的自定义函数分享
- 方正集团将打造四大板块
- python读取图片、保存图片的方法
- 雅可比行列式和雅可比矩阵
- mybatis oracle两种方式批量插入数据(带序号)
- 如何把手头上的apk安装到电视上
- 大连理工大学软件学院计算机组成原理,2017年大连理工大学软件学院810数据结构和计算机组成原理之计算机组成原理考研导师圈点必考题汇编...
- 反渗透设备:反渗透设备工艺先进
热门文章
- 西贝柳斯好用吗?Mac打谱软件Sibelius 8
- 【Java笔记】Java开发实战经典 - 第六章
- 计算机语言学汉语言文学,汉语言文学本科通关宝典-《语言学概论》.pdf
- php源码 辅助发卡_PHP个人发卡平台源码|自动发货网站源码 V5免授权版
- 【收藏】夜光遥感数据下载网址及方式
- 【麦子学院 彭亮 机器学习】3.2决策树应用(准备篇)
- 投票群体案例介绍(36)
- Oracle P6培训系列:06创建项目日历
- VIVADO 安装教程
- linux fastboot 工具,fastboot工具(FastbootCommander)