GFortran是一款由GNU开发的开源Fortran编译器。GFortran支持多种Fortran语言标准,包括Fortran 77、Fortran 90、Fortran 95、Fortran 2003等,同时还提供了一些扩展功能和优化方法,如OpenMP并行编程、自然向量化、预处理器等。GFortran具有高效、稳定、可移植等优点,广泛应用于科学计算、数值模拟、工程设计等领域。
GFortran软件特色
1、扩展的预处理语句,宏,条件编译等。
2、编译前优化,把多数无需运行时计算的部分,在编译时完成。
3、自动识别可优化的语句。
4、自动矢量化。
5、自动过程间优化(IPO)。
6、自动 inline,unroll loop。
7、经过优化的 MultiThread 运行时库。
8、领先的浮点数吞吐能力。
9、运行时错误提示:数组越界,格式符错误等。
10、处理器调度技术。
11、SSE,SSSE,MMX等扩展指令集。
12、改进的分支预测。
13、Intel Visual Fortran可以流程的运行在 Win7/Win8 操作系统上,可嵌入 Visual Studio 环境工作,使得它成为开发科学计算程序的首选。
GFortran使用方法
1、source中未使用外部庫鏈接的,直接執行:
gfortran foo.f/f90 -o foo
./foo
如沒有"-o"選項,生成a.out文件,這顯然不是我想要的。:D
2、gFortran分兩部分:compiler and library。如果gFortran不是標準安裝的,編譯source后執行,可能找不到lib,這時可以加入"-static"選項:
gfortran -static foo.f/f90 -o foo
gFortran會將庫建在所生成程式內部。
3、FortranSource有77和90兩種書寫格式,gFortran默認根據後綴進行compile。如果想自定義,例如foo.f是用90格式寫的,可執行:
gfortran -ffree-form foo.f -o foo
大寫的後綴名,gFortran會預執行該程式。
4、多source文件時,先compile不含PROGRAM語句段的source文件,各自生成foo1.o,foo2.o等。再一起編譯。例如:
gfortran -c foo1.f/f90
gfortran -c foo2.f/f90
gfortran main.f/f90 foo1.o foo2.o -o main
5、foo.f95的,加選項"-std=f95",.f2003的,目前支援尚不完整。順便說,gFortran unstable版4.3.x將支援pointer。
下面還有一些可能常用到的options。
"-fbounds-check":检查列表序列脚标是否超出
"-ffree/ffix-line-length-n":设置最大columns。77默认:72;90默认:132。n若设为"0"或"none",则不限有效行数
"-fimplicit-none":等同于在f90每段sub中声明"IMPLICIT NONE",且source中implicit语句优先
"-fmax-error-n":意义如词义
"-fsyntax-only":不编译,只检查语法
"-fexternal-blas":使用BLAS库函数,替代gFortran默认的函数
2、本站所有文章、图片、资源等如果未标明原创,均为收集自互联网公开资源;分享的图片、资源、视频等,出镜模特均为成年女性正常写真内容,版权归原作者所有,仅作为个人学习、研究以及欣赏!如有涉及下载请24小时内删除;
3、如果您发现本站上有侵犯您的权益的作品,请与我们取得联系,我们会及时修改、删除并致以最深的歉意。邮箱: i-hu#(#换@)foxmail.com