0

0

在Win下安装Visual Studio和Parallel Studio XE

雪夜

雪夜

发布时间:2025-08-29 08:13:11

|

714人浏览过

|

来源于php中文网

原创

使用visual studio搭配parallel studio进行fortran编程有个好处是调试方便,数组可以直接可视化,不用外加write之类的语句。设置断点后,调试到达断点时,鼠标置于数组上即可显示其内容。示例如下:

在Win下安装Visual Studio和Parallel Studio XE

本文将展示如何在Windows系统里安装最新版的两款软件,以及如何调用MKL库。注意Visual Studio是微软的软件,现有社区版(免费);而Parallel Studio是Intel旗下的,学术版免费。

安装Visual Studio Community 2019

在官网

代码语言:javascript代码运行次数:0运行复制
https://visualstudio.microsoft.com

下载Community2019,有多处下载链接,直接点击“免费Visual Studio”亦可。英文网页对应“Free Visual Studio”,网页语言可下拉网页至底部,在左下角更改。

这是一个轻量的交互式安装程序,需联网实时下载组件,安装跟着提示走即可。注意可以更改安装路径等。安装语言建议勾选中文和英文,以便日后可以切换软件界面的语言。安装时间可能长达二、三十分钟,中途不建议点暂停或取消。该安装程序在安装完之后,若再运行则有“修复”和“修改”功能,可以再添加组件或重置环境。

如果勾选“使用C++的桌面开发”,即可满足常规C++编程需求。我们的目标是Fortran且带MKL库,这里面并没有。需要接着安装parallel studio。

安装Intel Parallel Studio XE 2020

1. 下载压缩包

官网提供Linux、Windows和macOS三种操作系统下的安装包,学生/科研人员可使用edu邮箱免费获取,先在

代码语言:javascript代码运行次数:0运行复制
https://software.intel.com/en-us/parallel-studio-xe/choose-download

页面选择身份(学生)、自己的操作系统。本文以Windows版为例,可直接登官网

代码语言:javascript代码运行次数:0运行复制
https://registrationcenter.intel.com/en/forms/?productid=2871

将四项信息全打勾。该网站有时较卡,若页面上Accept键没有浮起、无法点击,可尝试去掉一个勾再勾上。填写对应的信息(使用edu邮箱),下拉,打勾,点击Submit。几分钟内官方会将序列号发送至你的edu邮箱。

点击Submit后页面会跳转至Intel账号登录,如果没有Intel账号可以先去

代码语言:javascript代码运行次数:0运行复制
https://www.intel.com/content/www/us/en/forms/basic-intel-registration.html

注册,回来再填。注册账号时需填写edu邮箱。然后登录邮箱点击收到的激活链接。成功登录Intel账号后,页面会显示序列号及版本(最好将序列号复制留存)。

在Win下安装Visual Studio和Parallel Studio XE

选择Customizable Package会下载小安装包,安装时必须联网再下载其他组件(要求网络好)。若选择Full Package则下载完整安装包,安装时无需再联网下载。各有优劣。笔者推荐下载Full Package,可以直接用浏览器下载(适合网络好),也可以在“Full Package”上点鼠标右键,复制链接地址,然后到百度网盘里新建“离线下载”,粘贴链接,秒存进自己的网盘。再从网盘上下载到本地电脑。建议预留一晚的时间下载压缩包。

当然,也可不通过官网,直接到网上找靠谱的来源(别人事先下好了),大概率连许可证(License)文件都有提供,省时省事省心。比如到论坛http://bbs.keinsci.com上搜“parallel studio”。

2. 安装

下载下来的文件是

代码语言:javascript代码运行次数:0运行复制
parallel_studio_xe_2020_cluster_edition_setup.exe

双击之,会要求指定解压缩目录,可能需要几分钟来解压缩,时间长短取决于电脑配置。接着设置安装目录和安装的组件,示例如下图

在Win下安装Visual Studio和Parallel Studio XE

现在一般用不到32位的库,可以不选。C++编译器,Fortran编译器,MKL数学库以及多线程相关的库,强烈推荐安装(如图所示,其他的可根据自己的情况勾选,选太多占硬盘)。在经过几个不重要的“同意”或“Next”之后,到了验证序列号/许可证文件的时候,如下图

Simplified
Simplified

AI写作、平面设计、编辑视频和发布内容。专为团队打造。

下载
在Win下安装Visual Studio和Parallel Studio XE

若想用序列号激活,可将之前留存的序列号填上,这需联网验证;若想使用许可证文件离线激活,可去官网

代码语言:javascript代码运行次数:0运行复制
https://registrationcenter.intel.com

下载许可证文件(注意序列号与许可证文件严格一一对应),然后点击Choose alternative activation,选择License File Activation。许可证文件激活的另一个好处是,可以不用官方的许可证文件,而使用上述提到的“提供的”许可证文件,其时效远长于电脑寿命,不必担心过期。

注意!!!笔者强烈推荐大家使用正版软件,请勿效仿笔者。

值得注意的是,parallel studio会自动检测Visual Studio的版本并集成进去。若点击Customize可以看到识别出了已装好的Visual Studio 2019:

在Win下安装Visual Studio和Parallel Studio XE

最后点击Install。安装完成后,启动Visual Studio,可发现多出了Fortran语言的选项。

在Win下安装Visual Studio和Parallel Studio XE

默认的Fortran编译器可能是Win32/x86的,可以自己新建一个,选择x64。(下图是新建完后的)

在Win下安装Visual Studio和Parallel Studio XE

这里介绍四个常用快捷键:

F5 调试

F9 设置/取消断点

Ctrl+F7 仅编译

Ctrl+F5 编译、链接及运行

MKL库的调用

官方Fortran编译器文档(2000多页),MKL文档(3000多页MKL子程序详细参数说明,必备利器)等可分别在

代码语言:javascript代码运行次数:0运行复制
https://software.intel.com/en-us/fortran-compiler-developer-guide-and-referencehttps://software.intel.com/en-us/mkl-developer-reference-fortran

等网站上点击Download PDF下载,也有在线版直接阅读。有哪些系统自带函数、MKL库函数一查便知。官方还提供很多其他文档,就不一一介绍了。如果想调用MKL库函数,有两种办法,一种是使用传统F77接口,代码示例:

代码语言:javascript代码运行次数:0运行复制
program mkl_test implicit none integer :: i integer, parameter :: k = 3 real(kind=8) :: a(k,k), b(k,k), c(k,k) a = 0.0d0 forall(i=1:k) a(i,i) = 1.0d0 b = a c = 0.0d0 call dgemm('N', 'N', k,k,k, 1.0d0, a,k, b,k, 0.0d0, c,k) do i = 1, k, 1  write(*,'(A2,I3,A,F10.6)') 'i=', i, 'c(i,i)=', c(i,i) end do stopend program mkl_test

然后在项目 -> 属性 -> Fortran -> Libraries里选择MKL库即可,如下图:

在Win下安装Visual Studio和Parallel Studio XE

另一种办法是使用新式的Fortran 95接口,参数少,使用更方便。代码示例如下:

代码语言:javascript代码运行次数:0运行复制
program mkl_test use blas95 use f95_precision implicit none integer :: i integer, parameter :: k = 3 real(kind=8) :: a(k,k), b(k,k), c(k,k) a = 0.0d0 forall(i=1:k) a(i,i) = 1.0d0 b = a c = 0.0d0 call gemm(a,b,c) do i = 1, k, 1  write(*,'(A2,I3,A,F10.6)') 'i=', i, 'c(i,i)=', c(i,i) end do stopend program mkl_test

要使用这类接口,除了选择上述MKL库外,要在代码里加上use语句,另外还要在Linker -> Input里填上mkl_blas95_lp64.lib(因为gemm子程序属于BLAS库,这在MKL手册里可以查到),然后才能编译并执行。以后可能用到的其他库(如LAPACK)都在parallel studio的库目录里,比如笔者的库目录是

代码语言:javascript代码运行次数:0运行复制
D:\Program Files\IntelSWTools\parallel_studio_xe_2020.0.075\compilers_and_libraries_2020\windows\mkl\lib\intel64_win
在Win下安装Visual Studio和Parallel Studio XE

当然,存在其他更为复杂的设置/调用方式,笔者没时间一一尝试,只列出了尝试过的、最简单的一种。

相关专题

更多
js获取数组长度的方法
js获取数组长度的方法

在js中,可以利用array对象的length属性来获取数组长度,该属性可设置或返回数组中元素的数目,只需要使用“array.length”语句即可返回表示数组对象的元素个数的数值,也就是长度值。php中文网还提供JavaScript数组的相关下载、相关课程等内容,供大家免费下载使用。

556

2023.06.20

js刷新当前页面
js刷新当前页面

js刷新当前页面的方法:1、reload方法,该方法强迫浏览器刷新当前页面,语法为“location.reload([bForceGet]) ”;2、replace方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,不能通过“前进”和“后退”来访问已经被替换的URL,语法为“location.replace(URL) ”。php中文网为大家带来了js刷新当前页面的相关知识、以及相关文章等内容

374

2023.07.04

js四舍五入
js四舍五入

js四舍五入的方法:1、tofixed方法,可把 Number 四舍五入为指定小数位数的数字;2、round() 方法,可把一个数字舍入为最接近的整数。php中文网为大家带来了js四舍五入的相关知识、以及相关文章等内容

733

2023.07.04

js删除节点的方法
js删除节点的方法

js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

477

2023.09.01

JavaScript转义字符
JavaScript转义字符

JavaScript中的转义字符是反斜杠和引号,可以在字符串中表示特殊字符或改变字符的含义。本专题为大家提供转义字符相关的文章、下载、课程内容,供大家免费下载体验。

414

2023.09.04

js生成随机数的方法
js生成随机数的方法

js生成随机数的方法有:1、使用random函数生成0-1之间的随机数;2、使用random函数和特定范围来生成随机整数;3、使用random函数和round函数生成0-99之间的随机整数;4、使用random函数和其他函数生成更复杂的随机数;5、使用random函数和其他函数生成范围内的随机小数;6、使用random函数和其他函数生成范围内的随机整数或小数。

1011

2023.09.04

如何启用JavaScript
如何启用JavaScript

JavaScript启用方法有内联脚本、内部脚本、外部脚本和异步加载。详细介绍:1、内联脚本是将JavaScript代码直接嵌入到HTML标签中;2、内部脚本是将JavaScript代码放置在HTML文件的`<script>`标签中;3、外部脚本是将JavaScript代码放置在一个独立的文件;4、外部脚本是将JavaScript代码放置在一个独立的文件。

658

2023.09.12

Js中Symbol类详解
Js中Symbol类详解

javascript中的Symbol数据类型是一种基本数据类型,用于表示独一无二的值。Symbol的特点:1、独一无二,每个Symbol值都是唯一的,不会与其他任何值相等;2、不可变性,Symbol值一旦创建,就不能修改或者重新赋值;3、隐藏性,Symbol值不会被隐式转换为其他类型;4、无法枚举,Symbol值作为对象的属性名时,默认是不可枚举的。

553

2023.09.20

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

3

2026.01.20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 6.6万人学习

Rust 教程
Rust 教程

共28课时 | 4.6万人学习

Kotlin 教程
Kotlin 教程

共23课时 | 2.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号