Developer Guide

Contents

Fortran 95 Interfaces to LAPACK and BLAS

Fortran 95 interfaces are compiler-dependent.
Intel® MKL
provides the interface libraries and modules precompiled with the Intel® Fortran compiler. Additionally, the Fortran 95 interfaces and wrappers are delivered as sources. (For more information, seeCompiler-dependent Functions and Fortran 90 Modules). If you are using a different compiler, build the appropriate library and modules with your compiler and link the library as a user's library:
  1. Go to the respective directory
    <mkl directory>
    /
    interfaces
    /
    blas95
    or
    <mkl directory>
    /
    interfaces
    /
    lapack95
  2. Type:
    • For the IA 32 architecture,
      make libia32
      INSTALL_DIR
      =
      <user_dir>
    • make libintel64 [interface=lp64|ilp64]
      INSTALL_DIR
      =
      <user dir>
    The parameter
    INSTALL_DIR
    is required.
As a result, the required library is built and installed in the
<user dir>
/
lib
directory, and the
.mod
files are built and installed in the
<user dir>
/
include
/
<arch>
/
[
/
{lp64|ilp64}
]
directory, where
<arch>
is {ia32, intel64}
.
By default, the ifort compiler is assumed. You may change the compiler with an additional parameter of
make:
FC=
<compiler>
.
For example, the command
make libintel64 FC=
pg
f95
INSTALL_DIR
=
<user
pg
f95 dir>
interface=lp64
builds the required library and
.mod
files and installs them in subdirectories of
<user
pg
f95 dir>
.
To delete the library from the building directory, type:
  • For the IA-32 architecture,
    make cleania32 INSTALL_DIR=<user_dir>
  • make cleanintel64 [interface=lp64|ilp64]
    INSTALL_DIR
    =
    <user dir>
  • make clean INSTALL_DIR=
    <user_dir>
Even if you have administrative rights, avoid setting
INSTALL_DIR
=..
/
..
or
INSTALL_DIR
=
<mkl directory>
in a build or clean command above because these settings replace or delete the
Intel® MKL
prebuilt Fortran 95 library and modules.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804