Reputation: 1
Hi I'm trying to compile and run a .f90 code using the intel fortran compiler (ifx) and the intel mpi library on a linux HPC.
I'm invoking the compiler through a .sh script with the following lines:
I_MPI_COMPILER_CONFIG_DIR=/mnt/gpfs01/home/ws/wsjt10/3dmpi mpiifort Flowsolver.f90 -o -fc=ifx -config="ifx" Flowsolver
mpirun -np 10 ./Flowsolver
Setting the config enviroment variable to a folder with a .conf file containing the compiler commands:
-O0
-init-zero
-init-arrays
-r8
In my output file I recieve the outputs:
/mnt/gpfs01/home/ws/wsjt10/3dmpi/mpif90-ifx.conf: line 1: -O0: command not found
/mnt/gpfs01/home/ws/wsjt10/3dmpi/mpif90-ifx.conf: line 2: -init-zero: command not found
/mnt/gpfs01/home/ws/wsjt10/3dmpi/mpif90-ifx.conf: line 3: -init-arrays: command not found
/mnt/gpfs01/home/ws/wsjt10/3dmpi/mpif90-ifx.conf: line 4: -r8: command not found
To my knowledge these are valid compiler commands (and I can for example compile a non MPI IFX code with these commands without issue) so I assume the format of the .conf file is incorrect in some way but to be honest I've had no luck trial and erroring it.
Does anyone more experienced with the MPI compiler wrappers know how I would specify compiler commands when running things through the MPI commands.
I have tried both
I_MPI_COMPILER_CONFIG_DIR=/mnt/gpfs01/home/ws/wsjt10/3dmpi mpiifort Flowsolver.f90 -o -fc=ifx -config="ifx" Flowsolver
and
export I_MPI_COMPILER_CONFIG_DIR=/mnt/gpfs01/home/ws/wsjt10/3dmpi
mpiifort Flowsolver.f90 -o -fc=ifx -config="ifx" Flowsolver
In my .sh script (these both do exactly the same thing and both get the same result, ie. command not found errors in the output file).
I've tried the windows format of the compiler options in the .conf file and obviously thats not worked.
There is almost no documentation that explains what I should be doing here.
I am convinced I'm doing something really stupid here so I do apologise if my amateurism shows.
Upvotes: 0
Views: 39