Intel® Fortran Compiler

Intel® Parallel Studio XE 2018: Getting Started with the Intel® Fortran Compiler 18.0 for Windows*

The Intel® Fortran Compiler compiles Fortran source files for Intel® 64 and IA-32 architectures. You can also use the compiler to create applications targeting Intel® Many Integrated Core Architecture (Intel® MIC Architecture).

Start using the compiler from the command line or within Microsoft Visual Studio*.

Individual file

Getting started with Fortran in Visual Studio. I am doing this tutorial with several exercises. I opened a file (File > New > File), wrote a program but dont have the option to build it. Do I have to create a Project each time I want to write a program?


List-directed Output

Hi. Since I am doing some fundamental calculation, this problem came up, as:

! This is good.
integer(8), parameter :: max_int64 = int(16#8000000000000000, kind = 8)
write(*,*) max_int64

! This is bad.
write(*,*) int(16#8000000000000000, kind = 8)

The upper case gives an correct output of ‭9151314442816847872‬ but the lower one prints only 0. why is that? Thanks for any help.

Help Intel Compiler TERRAIN and MM5 modules Oracle Linux

I recently moved from RocksCluster 6.2 with CentOS X86_64 machine -> Oracle Linux OS 7.3.

In RocksCluster compile correctly WRF and MM5 model code, practically without modifications in the makefiles.

Now, on Oracle Linux system I am having problems in TERRAIN and MM5 modules. I can´t understand what has changed in the machine (system level) so I don´t compile now.

a) TERRAIN makefile:

File corrupted when writing unformatted binary


I'm using ifort, and experiencing the file corruption when writing an unformatted binary.

ifort -V prints out "Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version Build 20170411"

Here is simple test code..

program test

real*8 :: array(20000)

array = 0d0


write(11) 'string'
write(11) array




Vectorization and Array Contiguity with the Intel® Fortran Compiler

Subroutine dummy arguments can be pointers or assumed shape arrays, e.g.:

    REAL, DIMENSION(:)          :: X  ! assumed shape array
    REAL, DIMENSION(:), POINTER :: Y  ! pointer

This avoids the need to pass parameters such as array bounds explicitly. The Fortran standard allows the actual arguments to be non-contiguous array sections or pointers, e.g.:

  • Fortran
  • Intel® Parallel Studio XE
  • Intel® Fortran Compiler
  • vectorization
  • Optimization
  • Vectorization
  • Subscribe to Intel® Fortran Compiler