从COMPAQ VISUAL FORTRAN到INTEL VISUAL FORTRAN的过渡

从Compaq Visual Fortran到Intel Visual Fortran的过渡
现在64位的计算机已经越来越普遍了,Intel公司的CORE处理器也从酷睿双核升级为i3、i5直到现在的主流i7,微软的Windows7系列的64位系统用起来感觉也挺不错的。但正是这64位,最近给我但来了些许的纠结。本文结合今天自己学习Intel Visual Fortran(以下简称IVF)的内容,分析了IVF的优势、相关软件的安装要求、从Compaq Visual Fortran(以下简称CVF)向IVF的转换以及IVF下简单Fortran计算程序编译执行的操作过程,以期能对碰到类似情况者提供点思路。登记表格
IVF较之CVF优势:
我的戴尔Inspiron系列机子是64位,Windows7系统也是64位的。在我的硕士研究生阶段学习中需要用到Fortran程序设计语言,以前我习惯使用CVF来编写、调试和运行Fortran程序,但现在看来不行了。CVF不支持64位,因为2005年以前Fortran90/95的Win32开发环境多采用Compaq Visual Fortran6.x,但在2005年CVF开发团队加盟到Intel公司,HP宣布其CVF6.6截至2005年12月31日,IVF9.0将作为其新一代后继编译器。
IVF是在CVF的基础上开发的Fortran编译器,它将CVF前端与英特尔处理器后端相结合,拥有CVF丰富的语言功能和英特尔处理器的代码生成及优化功能,使运行在英特尔平台上的程序能得到大幅度提高。而且随着计算规模的增大,对计算内存的要求必须采用64位的程序才能够满足我们的要求,但CVF没有
提供64位系统的编译平台。另外程序并行功能的实现可以用Intel的MKL所提供的函数库,这些函数库采用了共享内存并行计算的OpenMP,但以前的CVF 没有提供对OpenMP的支持,所以无法调用MKL的并行函数库。所以,从CVF6.x 转移到IVF9.0已是势在必行,选用IVF来Fortran编译程序也是很有必要的。IVF相关软件的安装说明:
在使用CVF6.5/6.6编写运行Fortran程序时,只需要安装Compaq Visual Fortran6.5/6.6即可。这是因为在这个安装源程序中,Visual Fortran已经被组合(集成)在Microsoft Visual Studio(以下简称VS)的图形接口开发环境中了,所以可以直接安装使用。这与VC/VC++类似,故用户看到的CVF程序编写界面与VC/VC++的基本是一致的。
而采用IVF来编写运行Fortran程序则稍微麻烦些。网上下载到的Intel Visual Fortran Compiler10/11版本都只是编译器,它需要放到集成开发环境(Integrated Development Environment,以下简称IDE)中去才能使用。故而IVF Complier 还需要VS6.6以上版本的IDE的支持,所以必须事先安装好VS后,才能安装编译器。我就是在安装VS2005后再安装IVF10的。具体安装方法参见本文后的链接部分说明。
IVF与CVF的兼容性:
IVF编译器支持所有的CVF语法,包括Digital Equipment Corporation(DEC) Fortran和Microsoft Fortra
n PowerStation4.0的语言扩展;支持所有的CVF库例程,包括可移植库,QuickWin以及所有的系统接口模块。
我上三年级了IVF不支持的CVF特征有:
乡村社会学(1)Compaq Extended Math Library(CXML)。可以使用Intel Math Kernel Library或IMSL、NAG等第三方数学库来替换。
(2)跨引用的源代码浏览器。
(3)COM服务器向导。假如要转换由CVF的COM服务器向导创建的组件工程,需要在IV下重新构建;假如要调整组件接口,比如增加新的接口,则需要在CVF下进行。
从CVF向IVF的转换:
由CVF转换到IVF,所有的Fortran源文件都需要在IVF下重新编译。IVF 编译器不能直接使用CVF编译的对象、模块和静态链接库;但只要不在两个环境下共享输入/输出单元,IVF编译的应用程序可以使用CVF建造的动态链接库。
大多数情况下无须改变Fortran源文件,只在IVF下重新建造现存的CVF工程即可;但有些工程需要改变小量源代码,有些则需要对建造方法做出适当调整。
IVF编译器提供有工程转换向导,以方便CVF向IVF的转换。转换可以分两步进行:
(1)打开CVF项目空间。可以直接双击CVF项目空间(*.dsw)打开之(如图1所示文件)。
图1
在随后出现消息框,如图2,点击“全是”按钮,将CVF项目空间下的每一项工程转换为IVF解决方案下对应的Visual C++.NET工程。
图2
(2)提取Fortran工程项目。在上一步执行完毕,会展示Microsoft Visual Studio.NET开发环境,待转换的CVF工程作为Microsoft Visual C++工程出现新贸易保护主义
在解决方案资源管理器中,如图3所示。在每一个工程名上点击右键,从弹出的上下文菜单中选择执行“ExtractCompaq Visual Fortran Project Items”,至此工程才算转换完毕。
图3
由于Microsoft Visual Studio.NET的一个工程只能使用一种语言,所以,若CVF工程中包含Fortran和C/C++两种源文件,必须将CVF混合语言工程转换成两个单一语言工程:一个为Visual C++工程;另一个为Intel Fortran工程。而且,IVF向导将其中的一个工程改造成主工程。具体由哪一种语言建造主工程,由开发人员来决定,如图4所示。
图4
在IVF下新建Fortran工程:
丙烷首先新建一个Fortran工程项目,在VS2005下执行菜单命令“文件—新建—项目”(如图5)即可。
图5
在弹出的对话框中选择“Intel(R)Fortran—Console Application—Empty Project”(如图6),点击确定即可创建一个新的Fortran工程项目。
图6
向导生成的在解决方案中的工程项目,可以从IDE“项目”菜单或在解决方案资源管理器窗口点击鼠标右键弹出的上下文菜单中,选择“添加新项”对话框,选择“Source”,从而创建要插入工程的文件。于是一个扩展名为.f90为文件被创建,详见图7~图9。
图7
图8
图9
在IVF下运行Fortran程序:
在IVF下链接、编译、调试和运行Fortran程序都与CVF下有所不同。首华亚纸业

本文发布于:2024-09-21 16:38:13,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/444441.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:工程   程序   需要   语言   编译   开发   安装   转换
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议