当前位置:首页 » 编程软件 » ifort编译

ifort编译

发布时间: 2022-08-15 03:35:36

⑴ 如何删除ifort编译

下载FreeNon-Commercial(非商业版)的ifort,icc以及MKL。很简单,只需要提供邮箱,然后按照步骤一步步来就行了,intel会把序列号和一个licence文件发到你邮箱里。这里以64位版本l_fc_p_10.1.015_intel64.tar.gz,l_cc_p_10.1.015_intel64,以及数学库l_mkl_p_1.0..1.014.tgz为例。2)安装:a)以root身份登陆linux,tar-zxvfl_fc_p_10.1.015.tar.gz,解压缩.b)#cdl_fc_p_10.1.015#./install.shc)选择1,进入安装,然后有输入序列号的选择,如果直接输入序列号,就选1(推荐使用),然后输入序列号,如果不能上网,或网络认证太慢,可以提供licence文件的路径的话,选2,然后根据提示输入licence文件的全部路径及文件名(以.lic结尾)。d)选择Typicalinstall典型安装(推荐使用),如果是高级用户,可以选择advanced.e)阅读协议,一路回车,到最后根据提示输入accept。f)然后都是默认安装,一路回车就安装完毕。l_cc_p_10.1.015_intel64,以及数学库l_mkl_p_1.0..1.014.tgz的安装步骤同上。3)配置:进入安装目录下才/bin,默认路径为/opt/intel/fce/10.0.008/bin,/opt/intel/cce/10.0.015/bin。sourceifortvars.sh(.csh)sourceiccvars.sh到此安装设置完毕。分别输入whichifort,whichicc如果能看到/opt/intel/fce/10.0.008/bin/ifort,/opt/intel/cce/10.0.015/bin/icc,那么就安装设置成功了,赶紧用个fortran程序去测试吧。另外,还有一种定义环境变量的方法,切换到root用户下,vi/etc/profile/,在该文件中定义环境变量如下所示:#intelcompilersource/opt/intel/cce/10.1.015/bin/iccvars.shsource/opt/intel/fce/10.0.008/bin/ifortvars.sh然后,保存退出,source/etc/profile,到此为止,intel编译器安装完毕。Note:exportCC=iccCXX=icpcLD=xildAR=xiar

⑵ ifort命令怎么编译mpi

1、icc

Intel C/C++编译器接受遵守ANSI C/C++ , ISO C/C++ standards,GNU inline ASM for IA-32 architecture标准的输入。与linux下常用的gcc兼容并支持更大的C语言扩展,包括源文件、命令行参数、目标文件。不支持gcc的inline方式的汇编。例,f.c

#include<stdio.h>

int main(int argc, char* argv[]){

printf("Hello\n");

return 0;

}

编译:icc -c f.cpp -o f.o

链接:icc f.o -o f

运行:./f

注意,编译与链接都由icc来完成,icc常用命令行参数:

-o 输出文件命名

-I include路径

-L lib路径

-l 包含的lib名

-c 仅生成目标文件(*.o),不链接

-On n=0,1,2,3 编译器优化选项,n=0关闭编译器优化,n=3使用最激进的优化

-c99[-] 打开/关闭 c99规范的支持

详细的请参照icc的manpage.

2、ifort

Intel Fortran编译器支持F77/90/95标准并与CFV(Compaq Visual Fortran)兼容。例,f.f90

program f

print *, "Hello"

stop

end

编译:ifort -c f.f90 -o f.o

链接:ifort f.o -o f

运行:./f

编译与连接同样由ifort来完成,ifort常用命令行参数:

-o 输出文件命名

-I include路径

-L lib路径

-l 包含的lib名

-c 仅生成目标文件(*.o),不链接

-On n=0,1,2,3 编译器优化选项,n=0关闭编译器优化,n=3使用最激进的优化

-std90 使用F90标准编译

-std95 使用F 95标准编译

-f77rtl 编译使用F77运行方式的代码(用于解决特殊问题)

These options optimize application performance for a particular Intel? processor or family of processors. The compiler generates code that takes advantage of features of the specified processor.

Option

Description
tpp5 or G5 Optimizes for Intel? Pentium? and Pentium? with MMX? technology processors.
tpp6 or G6 Optimizes for Intel? Pentium? Pro, Pentium? II and Pentium? III processors.
tpp7 or G7 Optimizes for Intel? Pentium? 4, Intel? Xeon?, Intel? Pentium? M processors, and Intel? Pentium? 4 processors with Streaming SIMD Extensions 3 (SSE3) instruction support.
On Intel? EM64T systems, only option tpp7 (Linux) or G7 (Windows) is valid.

About tpp:

http://www.ncsa.illinois.e/UserInfo/Resources/Software/Intel/Compilers/9.0/main_for/mergedProjects/copts_for/common_options/option_tpp567_g567.htm

https://wiki.ke.e/display/SCSC/Compilers+and+Libraries

Intel Fortran Compiler Options: http://geco.mines.e/guide/ifort.html

Intel(R) Fortran Compiler Options: http://www.rcac.pure.e/userinfo/resources/common/compile/compilers/intel/man/ifort.txt

ifort编译器提供了非常多的优化参数

$ ifort --help | more 查看就可以
也可以定位到某个参数

$ifort --help | grep -5 '-mkl'
-5表示显示查找到的行及下面5行的内容。

3、Intel MKL数学库针对Intel系列处理器进行了专门的优化,主要包含的库有:

基本线形代数运算(BLAS)

向量与向量、向量与矩阵、矩阵与矩阵的运算

稀疏线形代数运算

快速傅立叶变换(单精度/双精度)

LAPACK(求解线形方程组、最小方差、特征值、Sylvester方程等)

向量数学库(VML)

向量统计学库(VSL)

高级离散傅立叶变换

编译:

icc multi.c -I/opt/intel/mkl/include –L/intel/mkl/lib –lmpi_ipf –o multi

4、MPI程序编译

消息传递接口(MPI)并行程序设计模型程序的编译命令。例,f.c

include<stdio.h>

#include<mpi.h>

main(argc,argv)

int argc;

char *argv[];

{

char name[BUFSIZ];

int length;

MPI_Init(&argc,&argv);

MPI_Get_processor_name(name, &length);

printf("%s: hello world\n", name);

MPI_Finalize();

}

编译与连接均使用mpicc,参数与mpicc中定义的编译器相同,这里与icc相同。

mpicc –c hello.c –o hello.o

mpicc hello.o –o hello

运行使用mpirun 命令,将运行需要的节点定义在文件中并在-machinfile中制定。

文件: nodelist

node1

node1

node2

node3

运行:

$mpirun –machefile nodelist –np 4 ./hello

node1: hello world

node1: hello world

node2: hello world

node3: hello world

5、32位向64位的移植

32位程序到64位移植中应注意的常见问题:

数据截断:

由于long类型变量的运算(赋值、比较、移位等)产生。long定义在x86上为32bits,而在ia64上为64bits.容易在与int型变量运算时出现异常。

处理方法:尽量避免不同类型变量间的运算,避免将长度较长的变量赋值到较短的变量中,统一变量长度可以解决这个问题。简单的对于32位转移到64位可以将所有long定义转换为int定义。

⑶ VTST vasp.5.2.12 mpiifort 编译报错求助

1.用intel编译mpi 2.设置好编译器和数学库的路径,source使生效 3.在makefile里,修改编译器,打开mpi部分并注释掉前面的串行部分 4.make吧

⑷ 请教ifort和pgf90编译差别的问题

方法一:
假如现在有两个Fortran程序1.f90和2.f90,其中1.f90是主程序,2.f90是在主程序中调用的子程序,将这两个程序传到Linux的一个目录下,使用fortran编译命令,如PGI的pgf90,Intel的ifort,命令如下:
pgf90 -o exe_name 1.f90 2.f90
ifort -o exe_name 1.f90 2.f90
方法二:
在主程序1.f90中加入include '2.f90'语句,然后在Linux下用fortran命令编译,命令如下:
pgf90 -o exe_name 1.f90
ifort -o exe_name 1.f90

⑸ 为什么Fortran90的程序在ifort 和gfortran两种编译器下结果不同

出现这种情况一般原因是程序不严谨,比如说定义数组之后没有初期化,判断俩实数是否相等,用了一些不通用的函数(各个版本的编译器都可能会有一些独特的函数),数值精度不统一等等。输入数据也可能造成这种影响,比如说4.0和4.0d0在计算机看来是两个不同的数。
就算是同一个编译器编译的程序,在不同电脑上跑甚至在相同电脑跑结果都可能不相同。这又涉及到CPU位数的问题了。
避免此类情况发生的时候,写代码要养成良好的习惯。定义real的时候顺便明确一下kind,定义数组之后马上就初始化一下,判断两实数是否相等不要直接判断,输入数据的时候要考虑到输入数据的类型等等

⑹ 如何在命令提示符下编译fortran

常用的Compaq Visual Fortran或者Intel Fortran都可以用命令行编译方式。
Compaq用df.exe命令编译,Intel用ifort命令编译(如果用集成环境会自动调用),最简单的方式是“df或ifort fortran源程序名称”,比如
df a.f90

如果不在编译程序的路径下编译,需要把编译程序放入搜索路径,并在编译时指定头文件和库文件的位置。
如果是Compaq的Fortran会有一个DFVARS.BAT的批处理,是为命令行编译设置环境变量的,Intel的Fortran是ifortvars.bat。

⑺ linux下面怎么装ifort和icc编译器

执行sudo apt-get install libstdc++5时,可能出现“无法找到软件包libstdc++5”,自己在网上搜索下载这个文件,得到一个compat-libstdc++-33_3.2.3-48.3_i386.deb安装包,然cd 到deb包所在的位置,执行
sudo dpkg -i compat-libstdc++-33_3.2.3-48.3_i386.deb即可

⑻ 如何在ubuntu下安装intel ifort编译器

Intel Fortan Compiler简称ifort, Windows下的ifort是收费的,但是Linux系统下提供免费的ifort,可以在下面的链接中下载需要的版本(必须先注册,随后会收到官网发来的邮件,里面提供了接下来安装需要的series-number)http://software.intel.com/en-us/articles/non-commercial-software-download/
在Ubuntu下安装ifort之前,需要先安装一些软件包
sudo apt-get install build-essential
sudo apt-get install g++
sudo apt-get install gcc-multilib
sudo apt-get install rpm
sudo apt-get install openjdk-6-jre-headless
sudo apt-get install libstdc++6
将下载下来的文件解压 tar -zxvf l...tgz
安装
进入上面解压过后的文件夹,sudo install.sh
安装一共分六步,根据自己的需要选择设置信息,一般一路enter下去即可。
修改运行环境信息
将source /opt/intel/bin/ifortvars.sh ia32 添加到 ~/.bashrc文件里
检测安装是否成功
ifort -v 或 ifort -V

⑼ linux上面如何编译fortran源代码

格式:ifort 要编译的文件名 -0 指定生成的文件名
如我要把123.f文件编译
ifort 123.f -o 123.e
如果不加指定生成的文件名,系统会自动生成一个a.out的文件

⑽ makefile 里ifort 是什么意思 大概查了下 好像是什么编译器 可以说下它和gcc与gfortran 有什么差别

ifort是intel出的fortran的编译器,和Gfortran一个意思

热点内容
安卓手机如何卸载杂志锁屏 发布:2025-02-07 13:57:10 浏览:919
个性网源码 发布:2025-02-07 13:49:42 浏览:473
sql连接update 发布:2025-02-07 13:46:33 浏览:575
数据库导出sql语句 发布:2025-02-07 13:45:26 浏览:148
traceandroid 发布:2025-02-07 13:43:05 浏览:883
微信公众平台开发java 发布:2025-02-07 13:31:13 浏览:935
中国红网格解压视频 发布:2025-02-07 13:28:48 浏览:862
c语言软件源代码 发布:2025-02-07 13:28:44 浏览:186
2016php 发布:2025-02-07 13:24:10 浏览:327
昱科环球存储科技深圳有限公司 发布:2025-02-07 13:22:49 浏览:895