Why Would You Use an Intel Compiler
The Intel compilers are produced by the manufacturer of the processors that are used in the clusters. These compilers provide the possibility of several advanced optimizations, such as profile-guided optimization and interprocedural optimization.
A second reason for chosing an Intel compiler would be that the application under consideration was developed with an Intel compiler.
All of our Linux clusters provide Intel C, C++ and Fortran compilers.
The Intel compilers accept the standard ISO / ANSI languages with some extensions.
To compile a C source program named test.c into an executable program named test, use
icc -o test test.c
To compile a C source program named gravity.c into an object file to be linked later, use
icc -c gravity.c
To combine the C object files, main.o, tensor.o, matrix.o and vector.o into an executable program called algebra, use
icc -o algebra main.o tensor.o matrix.o vector.o
Similarly, for a C++ program, use
icpc -o test test.cxx
icpc -c gravity.cxx
icpc -o algebra main.o tensor.o matrix.o vector.o
For a Fortran program, one might use
ifort -o test test.f
ifort -c gravity.f
ifort -o algebra main.o tensor.o matrix.o vector.o
Programs written in Fortran 90 should be named ending with ".f90", rather than ".f"
The main tool used to debug Intel compiler suite programs is the Gnu debugger, gdb. Allinea's commercial debugger, DDT, is available on many of the clusters. Usage instructions for DDT can be found here.