Quantcast
Channel: Intel® Software - Intel® Fortran Compiler for Linux* and macOS*
Viewing all 2746 articles
Browse latest View live

How can i get a student license

$
0
0

Dear sir,

I got a following error message when I run intel Fortran in my linux machine.

Error: A license for Comp-FL could not be obtained
Your license has expired.

License file(s) used were (in this order):
    1.  Trusted Storage
**  2.  /tools/intel/compilers_and_libraries_2016.1.150/linux/licenses
**  3.  /opt/intel/licenses/lxxxxxxx.lic
**  4.  /root/intel/licenses
**  5.  /tools/intel/compilers_and_libraries_2016.1.150/linux/bin/intel64/../../Licenses
**  6.  /root/Licenses
**  7.  /Users/Shared/Library/Application Support/Intel/Licenses
**  8.  /tools/intel/compilers_and_libraries_2016.1.150/linux/bin/intel64/*.lic

Please visit http://software.intel.com/sites/support/ to obtain license renewal information.

ifort: error #10052: could not checkout FLEXlm license

So I found the topic. And the answer is to get a new lisence.

But I couldn't find the menu to get a student license.

How can I get a student license?

And How can I replace the license file from my machine?

please help me.


License server service restart for Centos 7

$
0
0

With Centos 7 (and RHEL 7) system services on restart of the computer are now controlled by systemd.  When I installed the Intel Flexlm license server software it does not seem to create a service there or provide a script (as the README implies) as a sample of getting the license server to auto restart after a reboot of the system.  The documentation that I read on the Intel web pages seems to suggest that lmgrd can be restarted interactively, but I would like it to auto restart.  Is there a way to do this or a sample init script for /etc/systemd/system/multi-user.target.wants/ ????

Using latest Intel® Compilers to Mitigate Speculative Execution Side-Channel Issues

Operation ordering for negative exponents

$
0
0

Hello,

I stumbled upon some strange behavior today.

program power_test

	implicit none
	
	print *, 5.d0 * 3.d0 ** 2
	print *, 3.d0 ** 2 * 5.d0
	print *, 5.d0 * 3.d0 ** -2
	print *, 3.d0 ** -2 * 5.d0

end program power_test
ifort -m64 -fpp -fopenmp -O3 -g -traceback -C -c power_test.f90
ifort power_test.o -m64 -fpp -fopenmp -O3 -g -traceback -C -o power_test.x		

gives

   45.0000000000000     
  45.0000000000000     
  0.555555555555556     
  1.693508780843029E-005

So, when the exponent is positive, everything works as expected, but when it is negative, the multiplication is evaluated first, and then the power, but only if the multiplication comes after the power. Is this intended and if yes why?

ifort behaviour when passing pointers to BLAS subroutines

$
0
0

Dear All,

I am facing a problem with a code that is related to the status of a pointer after a call to the BLAS subroutine zcopy.

The very simple code is the following:

program test
integer, parameter :: n = 10, m = 21 ! if m=11 the code works
real(8) :: A(n,m)
real(8), pointer :: C(:,:)
! initialize A
A = 0.0
A(1,2) = 4.5
allocate(C(1:m,1:n))
C = transpose(A)
! the call to zcopy should reassign A to its transpose.
call zcopy(n*m, C,1,A,1)
! deallocation here is not succesful
deallocate(C)
end program test

The compiler 17.04 fails to deallocate C, complaining that it is not allocated. If I change m from 21 to 11, the programs doesn't fail and the deallocation is succesful. I have a linux system with Ubuntu 16.04. 

Could anyone help me to understand what rules am I breaking about the status of pointers?

Thanks

Raffaele

Issue with a distributed memory Coarray Fortran program

$
0
0

Dear,

I wrote a Coarray Fortran program for solving sparse linear systems of equations using Preconditioned Conjugate Gradient algorithm. I tested it on 2 datasets on a HPC with SLURM as scheduler. For compilation, I used Intel fortran 17.0.0. Sparse matrix-vector multiplications are done with MKL subroutines.

For one dataset, the Coarray Fortran program always gave the correct answer, when all the images were on the same node or when each image was on a different node (i.e., 1 image per node).

For a second dataset, the same Coarray Fortran program gave the correct answer when all the images were on the same node.

ISSUE: However, when there was 1 image per node, the program diverged and gave wrong answers!

I compiled the same program with the options "-g -check all -traceback" and tested the debug version on the second dataset with 1 image per node. The debug version gave the correct answer, even with 1 image per node!

So, I am lost and cannot find the reason the program goes wrong with a specific dataset and a specific configuration (1 image per node). Using debug options did not help because no warning/error messages were written! Any hints, please?

The code sources can be found on github:

ttps://github.com/jvdp1/pcgcoarray

The dataset could be provided on request.

In advance thank you for the help.

Yours sincerely,

Jeremie

 

 

Environmet set up

$
0
0

i want to know the the commands to set up environment in ubuntu 16.04 and 14.04 using intel ifort in bash file.

i am using Intel® Parallel Studio XE Cluster Edition for Linux* 2018 update 2.

with little knowledge and information that i could install it but getting export command nor found. its probably due to environment issues.

the documentation didnt help me

ab
 

Compiling issues for OPENMPI on OSX High Sierra

$
0
0

Using the following command:

CC=icc CFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' CXX=icpc CXXFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' CPP='icc -E' CXXCPP='icpc -E' F77=ifort FFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' FC=ifort FCFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' LDFLAGS="-L/opt/intel/compilers_and_libraries_2018.2.164/mac/compiler/lib -Wl,-rpath,/opt/intel/compilers_and_libraries_2018.2.164/mac/compiler/lib" ../configure -prefix=/Users/jessequinn/Packages/openmpi-3.0.1 --enable-shared --enable-static --with-slurm && make -j 4 all && make -j 4 install

I receive the following error:

  FCLD     libmpi_usempif08.la

ifort: command line warning #10006: ignoring unknown option '-force_load,mod/.libs/libforce_usempif08_internal_modules_to_be_built.a'

ifort: command line warning #10006: ignoring unknown option '-rpath'

ld: can't map file, errno=22 file '/opt/intel/compilers_and_libraries_2018.2.164/mac/compiler/lib' for architecture x86_64

make[2]: *** [libmpi_usempif08.la] Error 1

make[1]: *** [all-recursive] Error 1

make: *** [all-recursive] Error 

 

Any advice would be appreciated

I have included the config.log for the compilation (open mpi version 3.0.1 using intel 2018)

 

AttachmentSize
Downloadapplication/octet-streamconfig.log5.62 MB

HDF5 1.10.2 error

$
0
0

I am unsure if asking on intel support forum is the best option; however, let's see.

Using the following commands:

CC=mpicc CFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' CXX=mpicxx CXXFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' CPP='icc -E' CXXCPP='icpc -E' F9X=mpif90 FC=mpif90 FCFLAGS='-O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel' LDFLAGS="-L/Users/jessequinn/Packages/zlib-1.2.11/lib -Wl,-commons,use_dylibs,-rpath,/Users/jessequinn/Packages/zlib-1.2.11/lib" ../configure --prefix=/Users/jessequinn/Packages/hdf5-1.10.2 --enable-shared --enable-static --enable-fortran --enable-parallel --with-zlib=/Users/jessequinn/Packages/zlib-1.2.11 && make -j 4 all && make -j 4 install

I receive the following error:

mpif90  -I. -I../../../fortran/test -I../../src -I../../fortran/src     -I../../fortran/src -I../../fortran/src -O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel -c -o tH5E.o ../../../fortran/test/tH5E.F90

mpif90  -I. -I../../../fortran/test -I../../src -I../../fortran/src     -I../../fortran/src -I../../fortran/src -O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel -c -o tHDF5.o ../../../fortran/test/tHDF5.F90

mpif90  -I. -I../../../fortran/test -I../../src -I../../fortran/src     -I../../fortran/src -I../../fortran/src -O3 -xcore-avx2 -ip -mp1 -m64 -shared-intel -c -o fortranlib_test.o ../../../fortran/test/fortranlib_test.F90

  FCLD     fortranlib_test

ifort: error #10236: File not found:  '../../fortran/src/.libs/libhdf5_fortran.dylib'

make[2]: *** [fortranlib_test] Error 1

make[1]: *** [all-recursive] Error 1

make: *** [all-recursive] Error 1

AttachmentSize
Downloadapplication/octet-streamconfig.log328.03 KB

reinstall of Intel® Cluster Studio XE for Linux*

$
0
0

Hi, we purchased Intel Cluster Studio XE for Linux in 2014, still have the serial number and the original install file (l_ics_2013.1.046.tgz), with the license in /opt/intel/licenses. We will be doing an OS upgrade and bare metal install, and are wondering if we can still just run install.sh again, and copy the license file as such -- is there any other procedure we need to follow? I ask because for some reason the software is not shown under the licenses under my login (either as updates, hidden, etc.) ... and am wondering if this indicates some problem that should be addressed before the upgrade.

$ ifort --version
ifort (IFORT) 14.0.2 20140120
Copyright (C) 1985-2014 Intel Corporation. All rights reserved.

Thanks for your help-- //rolf

Environment setup issues in ububtu16.04

$
0
0

sir

i have intel parallel_studio_xe_2018_update1_cluster_edition installed in my laptop having ubuntu 16.04 OS.  i need to work with fortran compiler.

I am not sure if i am giving correct path to set up environment.  i have given in .bashrc file

PATH="/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/intel64:$PATH"
export PATH
LD_LIBRARY_PATH="/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH

2 in same .bashrc file if i mention

/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/ifortvars.sh intel64

i get this message if i open a terminal.....

ERROR: architecture is not defined. Accepted values: ia32, intel64
Syntax: ippvars.sh <arch> [-arch <arch>] [-platform <platform>]

  <arch> must be one of the following:
      ia32           : Set up for IA-32 target.
      intel64        : Set up for Intel(R)64 target.
  <platform> must be of the following:
      linux          : Set to Linux target.
      mac            : Set to Mac target.
      android        : Set to Android target.

If the arguments to the sourced script are ignored (consult docs
for your shell) the alternative way to specify target is environment
variables COMPILERVARS_ARCHITECTURE to pass <arch> to the script
and COMPILERVARS_PLATFORM to pass <platform>
/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/ifortvars.sh: 42: [: =: unexpected operator
/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/ifortvars.sh: 50: [: =: unexpected operator
/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/ifortvars.sh: 159: [: =: unexpected operator
/opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/ifortvars.sh: 171: [: =: unexpected operator

this message gets removed if i write like this

source /opt/intel/2018/compilers_and_libraries_2018.1.163/linux/bin/ifortvars.sh intel64

3  what is ia32_lin, intel64_lin_gfx and intel64_lin in compilers_and_libraries_2018/linux/lib

4  i have successfully installed ifort and my sample file are running correctly.

the documentation didnt help me. pl clarify issues point by point

ab

ifort in ubuntu can not read /* */ sign

$
0
0

Hello,

I am trying to install FVCOM in ubuntu with ifort version 18. after setup the libraries, I try to compile the module and when i type make in the terminal this error showed up. Its look like the ifort cannot read this sign /* */ in the fortran module. I attached the mod_prec.f90 also. any help will be great thank you.

make: Circular mod_prec.o <- mod_prec.o dependency dropped.

/usr/bin/cpp -P -C -traditional  -DIFORT -P -C -traditional    -DWET_DRY -DMULTIPROCESSOR    -DLIMITED_NO  -DGCN                                        mod_prec.F > mod_prec.f90
ifort  -c   -I/home/gugum/Documents/fvcom-4.1/FVCOM4.1/FVCOM_source/libs/install/include        mod_prec.f90
mod_prec.f90(1): error #5082: Syntax error, found '/' when expecting one of: <LABEL> <END-OF-STATEMENT> ; TYPE INTEGER REAL COMPLEX BYTE CHARACTER CLASS DOUBLE ...
/* Copyright (C) 1991-2016 Free Software Foundation, Inc.
^
mod_prec.f90(16): error #5145: Invalid blank/tab
   <http://www.gnu.org/licenses/>.  */
----------------------------------^
mod_prec.f90(20): error #5145: Invalid blank/tab
   include it implicitly at the start of every compilation.  It must
-----------------------------------------------------------^
mod_prec.f90(27): error #5120: Unterminated character constant
/* glibc's intent is to support the IEC 559 math functionality, real
--------^
mod_prec.f90(27): error #5144: Invalid character_kind_parameter. No underscore
/* glibc's intent is to support the IEC 559 math functionality, real
--------------------------------------------------------------------^
mod_prec.f90(28): error #5145: Invalid blank/tab
   and complex.  If the GCC (4.9 and later) predefined macros
---------------^
mod_prec.f90(30): error #5277: Syntax error, found ',' following statement keyword
   whether the overall intent is to support these features; otherwise,
----------------------------------------------------------------------^
mod_prec.f90(32): error #5145: Invalid blank/tab
   define these macros by default.  */
----------------------------------^
mod_prec.f90(36): error #5145: Invalid blank/tab
/* wchar_t uses Unicode 8.0.0.  Version 8.0 of the Unicode Standard is
------------------------------^
mod_prec.f90(38): error #5276: Unbalanced parentheses
   2015-05-15).  */
-------------^
mod_prec.f90(38): error #5145: Invalid blank/tab
   2015-05-15).  */
---------------^
mod_prec.f90(40): error #5145: Invalid blank/tab
/* We do not support C11 <threads.h>.  */
-------------------------------------^
mod_prec.f90(1): catastrophic error: Could not recover from previous syntax error
compilation aborted for mod_prec.f90 (code 1)
makefile:42: recipe for target 'mod_prec.o' failed
make: *** [mod_prec.o] Error 1

 

 

 

AttachmentSize
Downloadapplication/octet-streammod_prec.f903.61 KB

threaded intrinsics

$
0
0

Lorri, Steve,

Greetings from LANL!

I have a code dominated by 3 intrinsics:   TRANSPOSE, MAXVAL, and NORM2.  the arguments are large arrays/vectors.  I have 36 or more cores at our disposal. 

First, am I correct in assuming these are potentially vectorized but not threaded by default?

I am considering writing my own replacements for these with nested loops and applying appropriate OMP PARALLEL and OMP SIMD directives.  However it would be nice to find threaded versions of these.  In MKL maybe?

Thanks

Ron

Leaking memory from derived-type array in fortran

$
0
0

I am using derived-type array in fortran. I ran the executable through valgrind and realized that I am leaking memory. After poking around, I realized that the leaking is related to a compiler flag '-qopenmp'. If this flag is used with intel15, valgrind detects memory leak.

Here is the relevant part of valgrind report when I use intel15 with '-qopenmp' flag:

==84663== 12 bytes in 2 blocks are indirectly lost in loss record 1 of 3
==84663==    at 0x4C26B0D: malloc (vg_replace_malloc.c:296)
==84663==    by 0x40BE9F: for_alloc_allocatable (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==    by 0x402CDD: classdynamicintegerarray2d_mp_allocate_dynamicintegerarray2d_ (ClassDynamicIntegerArray2d.f90:173)
==84663==    by 0x40329F: allocatewithintent_ (allocateWithIntent.f90:97)
==84663==    by 0x4034E2: MAIN__ (main.f90:82)
==84663==    by 0x40299D: main (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==
==84663== 32 bytes in 1 blocks are still reachable in loss record 2 of 3
==84663==    at 0x4C28884: calloc (vg_replace_malloc.c:623)
==84663==    by 0x5BB930F: _dlerror_run (dlerror.c:142)
==84663==    by 0x5BB9079: dlsym (dlsym.c:71)
==84663==    by 0x41809E: for__aio_init (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==    by 0x405FCE: for_rtl_init_ (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==    by 0x402998: main (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==
==84663== 156 (144 direct, 12 indirect) bytes in 1 blocks are definitely lost in loss record 3 of 3
==84663==    at 0x4C26B0D: malloc (vg_replace_malloc.c:296)
==84663==    by 0x40BE9F: for_alloc_allocatable (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==    by 0x402B40: classdynamicintegerarray2d_mp_allocate_dynamicintegerarray2d_ (ClassDynamicIntegerArray2d.f90:172)
==84663==    by 0x40329F: allocatewithintent_ (allocateWithIntent.f90:97)
==84663==    by 0x4034E2: MAIN__ (main.f90:82)
==84663==    by 0x40299D: main (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==84663==
==84663== LEAK SUMMARY:
==84663==    definitely lost: 144 bytes in 1 blocks
==84663==    indirectly lost: 12 bytes in 2 blocks
==84663==      possibly lost: 0 bytes in 0 blocks
==84663==    still reachable: 32 bytes in 1 blocks
==84663==         suppressed: 0 bytes in 0 blocks

 

However if I use intel 17, valgrind detects possible memory leak if I don't use this flag. Here is the relevant part of valgrind report when I use intel17 without '-qopenmp' flag:

 

==85454== 92 bytes in 2 blocks are possibly lost in loss record 2 of 3
==85454==    at 0x4C26B0D: malloc (vg_replace_malloc.c:296)
==85454==    by 0x4695FB: _mm_malloc (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==85454==    by 0x409A75: for_allocate (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==85454==    by 0x403382: classdynamicintegerarray2d_mp_allocate_dynamicintegerarray2d_ (ClassDynamicIntegerArray2d.f90:173)
==85454==    by 0x403A05: allocatewithintent_ (allocateWithIntent.f90:97)
==85454==    by 0x403BC4: MAIN__ (main.f90:82)
==85454==    by 0x402F8D: main (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==85454==
==85454== 184 bytes in 1 blocks are possibly lost in loss record 3 of 3
==85454==    at 0x4C26B0D: malloc (vg_replace_malloc.c:296)
==85454==    by 0x4695FB: _mm_malloc (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==85454==    by 0x409A75: for_allocate (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==85454==    by 0x40312D: classdynamicintegerarray2d_mp_allocate_dynamicintegerarray2d_ (ClassDynamicIntegerArray2d.f90:172)
==85454==    by 0x403A05: allocatewithintent_ (allocateWithIntent.f90:97)
==85454==    by 0x403BC4: MAIN__ (main.f90:82)
==85454==    by 0x402F8D: main (in /work-zfs/sghosh20/shahba/PaperPhaseField/notFinalized/polycrystalline/testLeak/a.out)
==85454==
==85454== LEAK SUMMARY:
==85454==    definitely lost: 0 bytes in 0 blocks
==85454==    indirectly lost: 0 bytes in 0 blocks
==85454==      possibly lost: 276 bytes in 3 blocks
==85454==    still reachable: 32 bytes in 1 blocks
==85454==         suppressed: 0 bytes in 0 blocks

 

I am attaching a simple code that mimics this error. To compile the code, please run the compile.sh script.

AttachmentSize
Downloadapplication/zipsourceCode.zip3.44 KB

inlined subroutine still slow

$
0
0

Hi everyone,

We have some legacy code in F77, and there are many math function, like matrix and/or vector multiplication, copy vectors, initialization of vector and matrix. All of these F77 code are optimized (like unrolling). 

From the optimization report, I can see these functions are inlined and operations are all VECTORIZED (estimated potential speedup about: 1.6). 

However, if I replace these F77 function call by F90 code, 

for example (a matrix multiply a vector here)

c(:) = matmul(a(:,:),b(:)). 

I can save about 50% time for these matrix and vector operation. 

Does this mean I still have overhead even these functions are inlined?

Could anyone give me some explanationand suggestion about how to optimize these code? Thank you in advance!

 

 


Error during compilation

$
0
0

I tried compile fvcom model with ifort. I have makefile and make_inc file. but when I type make in the source this error happen

icc: warning #10145: no action performed for file

in the end this error also happen

/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin/for_main.o: In function `main':
for_main.c:(.text+0x2a): undefined reference to `MAIN__'
makefile:128: recipe for target 'fvcom' failed
make: *** [fvcom] Error 1

The whole error I attached in the log file. I don't know what should I do to fix the error

 

 

Intel Fortran

$
0
0

I just installed Intel fortran parallel_studio_xe_2018 on ubuntu 16.04 64-bit machine.
 but when i tried to compile a fortran program, i get the message: ifort: command not found.

I understand that its related to environment setting but i am unable to work

. in my .bashrc file i have tried using following  but none has worked

source /opt/intel/compilers_and_libraries_2018/linux/bin/compilervars.sh intel64

source /opt/intel/compilers_and_libraries_2018.1.163/linux/bin/compilervars.sh intel64

source /opt/intel/bin/compilervars.sh intel64

when i type source .bashrc on command terminal i get  Illegal variable name

ifort -v gives   ifort: Command not found.

  • i also need to link dynamic libraries and want to give it in bash file. pl helpcommand not found

thanks

anand

intel fortran version

$
0
0

What's the difference between buying the Intel fortran cluster version versus buying a professional version and then downloading the free IMPI library? 

Linking error

$
0
0

We have a server that compiles some code just fine. I am trying a help someone out in compiling the same code on a 2nd server that we just brought up. I am his system administrator and I am trying to install the necessary packages to compile and link this software. We are using the same Intel compiler on both systems xe_2017-update 1. Here is the error we get when trying to link:

 

ld: /users/ramos/neptune-sandy-test/src/objdir/mod_precon.o: undefined reference to symbol 'dhseqr_'

/lib64/liblapack.so.3: error adding symbols: DSO missing from command line

make[1]: *** [fcst_model] Error 1

make[1]: Leaving directory `/users/ramos/neptune-sandy-test/src/drivers/fcst_model'

make: *** [fcst_model] Error 2

[ramos@sandy1 neptune-sandy-test]$

 

I am not a programmer, just trying to osrt this out. Thank you.

EOF stopping me!

$
0
0

I started writing fortran in 1959, ie, right at the beginning.  I just tried writing a program to read in a big file, and ran into trouble.  The file is 31,215 numbers, and is in blocks of 200 with, it seems, an EOF at the end of each block.  My program balks at that.  I need to get all 31,215 numbers. How do I get past the EOF?

 

 

Viewing all 2746 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>