I built typhon v 0.5 with pgi compilers v.9. I used metis v4 and cgns v.2.54, all built with pgi v.9.
Concerning mpich, it was provided by the pgi v.9 installation so it was built with it.
When I built typhon I had to declare explicitly the type of the function "erf" (lines 75 and76 in" EQNS/calc_flux_efm.f90") for pgf90 to recognize it, otherwise it would not compile the code: "real(krp) :: erf"
When typhon is built and installed I tryed to run the example "VALIDATION/VISCOUS/POISEUILLE" but I got an "allocation problem" either with "Typhon-seq" or "Typhon-mpi" executables :
$ Typhon-seq
******************************************************
* TYPHON V 0.5.0 *
******************************************************
##########################################
> LECTURE : fichier menu principal
0: ALLOCATE: 18446744073709551615 bytes requested; not enough memory
$
***********
$ Typhon-mpi
I am 1 among 1 procs
******************************************************
* TYPHON V 0.5.0 *
******************************************************
##########################################
> LECTURE : fichier menu principal
0: ALLOCATE: 18446744073709551615 bytes requested; not enough memory
$
Do you have any idea of the origin of such a problem?
Thank you in advance.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
- Since erf is not an intrinsic fortran function, its use can be dependent on your compiler.
- your error with POISEUILLE test case is surprising. It works fine with my executable. The amount of requested memory has no sense! Could you add debugging or tracing options (in SOURCE/defvar.make) in order to know the fortran lines involved there ? (I have no access to pgi compiler)
- you can also synchronize your version (see http://typhon.sourceforge.net/spip/spip.php?article19 )
- one last thing: running Typhon-mpi needs something like "mpirun -np 4 Typhon-mpi"
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The pgi debugger does not provide me much clue on the codes lines involved. It just says that teh errors occurs in the main program
pgdbg> list
#1: !----------------------------------------------------!
#2: ! PROGRAM : TYPHON Authors : J. Gressier (admin)
#3: ! see http://typhon.sf.net
#4: ! Created : July 2002
#5: !
#6: ! Plateforme de resolution de systemes d'equations
#7: ! par discretisation Volumes Finis / Singularites
#8: !
#9: ! Historique des versions (cf fichier VERSIONS)
#10: !
But I am not very familiar with this debugger so I will tell you if I can make him say more things when I get used to it.
Anyway, the error could be an issue of the pgi compiler version. Event though you do not have access to pgi at the moment, I supposed that before realeasing your codes you used some version of pgi to make tests. Which version did you use to perform your tests?
Finally, I give you the output of the "configure.sh", and the "defvar.make" that I got. Hope it helps :
I partially solved my problem :
- first by synchronizing my version
- second by using almost the same optimization options for the buiding of cngs, metis and typhon (-O2 for metis and cgns, and -O3 for typhon)
- third by using the -fPIC option for the compilation of typhon
The "Typhon-seq" executable works fine but I still have an issue with the "Typhon-mpi" executable. On the VISCOUS/POISEUILLE case I still have a problem with the reading of the cgns file :
$ mpirun -np 1 /home/modunlam/projets_temp/typhon-pgi-svn/typhon/local/typhon/Typhon-mpi I am 1 among 1 procs
******************************************************
TYPHON V 0.5.0 (678M)
******************************************************
###################################################
> PARAMETERS reading : main file (main.rpm)
#################################################
> PARAMETERS : parsing and initialization
* Project definition
. number of project zones : 1
. number of coupling relations : 0
2D framework
STEADY computation (pseudo unsteady convergence)
* Definition of output parameters
. file 1: VTK format
data set type:CELL
Poursuite de la lecture des parametres ZONE
- mesh definition
- Definition of Fluid Model
Laminar Navier-Stokes equations
Perfect Gas 'AIR'
- Definition of time integration parameters
. time step defined by stability condition
. IMPLICIT integration
Bi-Conjugate Gradient Stabilized iterative inversion (BiCG-Stab)
- Definition of spatial numerical parameters
numerical flux : HLLC
No high order extension
post-limiter: NONE
- Definition des parametres de raffinememt automatique (AMR)
- Definition of MPI parameters and strategy
- Number of coupled zones
* Definition of Boundary Conditions (BOCO)
family name TOP : condition ISOTHERMAL_WALL
family name BOTTOM : condition ISOTHERMAL_WALL
family name LEFT : condition SUBSONIC_INLET
family name RIGHT : condition SUBSONIC_OUTLET
* Definition of Connections
- Definition of Initial Conditions
Parsing parameters for uniform initial conditions
parsing PI = 1.02E5
parsing TI = 300.
parsing MACH = 0.05
- Probes definition
no used-defined probe
- Definition des parametres optionnels
- Check parameters consistency and further initialization
###############################################
> INPUTS : mesh and boundary conditions
* READING CGNS MESH: channel2d.cgns
. 1base(s) in CGNS file channel2d.cgns
- BASE BASE#1 : maillage surfacique
1 zone(s) dans la base 1
- Zone 1: typeUnstructured
lecture de maillage : 3131 x 1 x 1 noeuds
reading element connectivity: 3000 elements
. QUAD_4 : 3000 elements with 4 vertices
. BAR_2 : 260 elements with 2 vertices
. lecture de 4 conditions aux limites
. tagged element section*** : BC1_on_LEFT
type UserDefined, 30 items
Lecture CGNS: Probleme a la lecture des conditions aux limites
1
$
Any ideas?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
First, glad that you manage to compile Typhon. Can you send me
(gressier arobas isae dot fr) your
defvar.make file ? I'll change the
configure.sh so that it can handle
the pgi configuration.
Considering your mpi computation:
1. that's weird to run a 1 thread
parallel computation but I checked
it works on my computer
2. one message is not the same
<pre> . tagged element section*** : BC1_on_LEFT </pre>
mine are
<pre>
. linking boundary condition marks 1/4: LEFT
face tagging method
30 mesh faces tagged
. linking boundary condition marks 2/4: RIGHT
face tagging method
30 mesh faces tagged
. linking boundary condition marks 3/4: TOP
face tagging method
100 mesh faces tagged
. linking boundary condition marks 4/4: BOTTOM
face tagging method
100 mesh faces tagged
</pre>
It can be either due to the cgns library or your cgns file. can you send me the log of sequential run and your cgns file (to check I use the same).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello
I built typhon v 0.5 with pgi compilers v.9. I used metis v4 and cgns v.2.54, all built with pgi v.9.
Concerning mpich, it was provided by the pgi v.9 installation so it was built with it.
When I built typhon I had to declare explicitly the type of the function "erf" (lines 75 and76 in" EQNS/calc_flux_efm.f90") for pgf90 to recognize it, otherwise it would not compile the code: "real(krp) :: erf"
When typhon is built and installed I tryed to run the example "VALIDATION/VISCOUS/POISEUILLE" but I got an "allocation problem" either with "Typhon-seq" or "Typhon-mpi" executables :
$ Typhon-seq
******************************************************
* TYPHON V 0.5.0 *
******************************************************
##########################################
> LECTURE : fichier menu principal
0: ALLOCATE: 18446744073709551615 bytes requested; not enough memory
$
***********
$ Typhon-mpi
I am 1 among 1 procs
******************************************************
* TYPHON V 0.5.0 *
******************************************************
##########################################
> LECTURE : fichier menu principal
0: ALLOCATE: 18446744073709551615 bytes requested; not enough memory
$
Do you have any idea of the origin of such a problem?
Thank you in advance.
- Since erf is not an intrinsic fortran function, its use can be dependent on your compiler.
- your error with POISEUILLE test case is surprising. It works fine with my executable. The amount of requested memory has no sense! Could you add debugging or tracing options (in SOURCE/defvar.make) in order to know the fortran lines involved there ? (I have no access to pgi compiler)
- you can also synchronize your version (see http://typhon.sourceforge.net/spip/spip.php?article19 )
- one last thing: running Typhon-mpi needs something like "mpirun -np 4 Typhon-mpi"
The pgi debugger does not provide me much clue on the codes lines involved. It just says that teh errors occurs in the main program
pgdbg> list
#1: !----------------------------------------------------!
#2: ! PROGRAM : TYPHON Authors : J. Gressier (admin)
#3: ! see http://typhon.sf.net
#4: ! Created : July 2002
#5: !
#6: ! Plateforme de resolution de systemes d'equations
#7: ! par discretisation Volumes Finis / Singularites
#8: !
#9: ! Historique des versions (cf fichier VERSIONS)
#10: !
But I am not very familiar with this debugger so I will tell you if I can make him say more things when I get used to it.
Anyway, the error could be an issue of the pgi compiler version. Event though you do not have access to pgi at the moment, I supposed that before realeasing your codes you used some version of pgi to make tests. Which version did you use to perform your tests?
Finally, I give you the output of the "configure.sh", and the "defvar.make" that I got. Hope it helps :
$ ./configure.sh
TYPHON configuration
./configure.sh: line 16: mpi mpich lampi mpi_f90: command not found
checking native system… Linux
checking CPU model… x86_64
checking echo command… echo
checking diff command…which: no ndiff in (/home/modunlam/projets_temp/typhon-pgi/typhon/local/typhon:/opt/pgi/linux86-64/9.0/bin:/opt/pgi/linux86-64/9.0/mpi/mpich/bin:/usr/lib64/qt-3.3/bin:/opt/pgi/linux86-64/9.0/bin:/opt/pgi/linux86-64/9.0/mpi/mpich/bin:/usr/kerberos/bin:/usr/lib64/ccache:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/modunlam/bin)
/usr/bin/diff
checking fortran 90 compiler… /opt/pgi/linux86-64/9.0/bin/pgf90
checking pgf90 fortran 90 conformance… successfully compiled
checked
checking static library cgns… /home/modunlam/projets_temp/typhon-pgi/cgnslib_2.5/lib/libcgns.a
checking static library metis… /home/modunlam/projets_temp/typhon-pgi/metis-4.0/libmetis.a
checking static library fmpich… /opt/pgi/linux86-64/9.0/mpi/mpich/lib/libfmpich.a
checking static library mpich… /opt/pgi/linux86-64/9.0/mpi/mpich/lib/libmpich.a
checking static library mpichf90… /opt/pgi/linux86-64/9.0/mpi/mpich/lib/libmpichf90.a
checking pgf90 optimization options… -fastsse -Munroll=n:4 -Mipa=fast,inline -I/opt/pgi/linux86-64/9.0/mpi/mpich/include
checking -fastsse -Munroll=n:4 -Mipa=fast,inline -I/opt/pgi/linux86-64/9.0/mpi/mpich/include options… successfully compiled
checked
checking pgf90 debug options… -g -I/opt/pgi/linux86-64/9.0/mpi/mpich/include
checking -g -I/opt/pgi/linux86-64/9.0/mpi/mpich/include optsuccessfully compiled
checked
checking pgf90 profiling options… -fastsse -Munroll=n:4 -Mipa=fast,inline -I/opt/pgi/linux86-64/9.0/mpi/mpich/include -pg
checking -fastsse -Munroll=n:4 -Mipa=fast,inline -I/opt/pgi/linux86-64/9.0/mpi/mpich/include -pg options… successfully compiled
checked
checking fortran 90 module creation… extension mod
lower-case name
Configuration ended
Writing Shell configuration…
Writing Makefile configuration…
Done
to build TYPHON : cd SOURCE ; gmake clean ; gmake all OPT=opt
$
$ more SOURCE/defvar.make
# This file was created by configure.sh
SHELL = /bin/bash
MAKEDEPENDS = Util/make_depends lower
MOD = mod
CF = pgf90
FB = -I$(PRJINC)
FO_debug = -g -I/opt/pgi/linux86-64/9.0/mpi/mpich/include
FO_opt = -fastsse -Munroll=n:4 -Mipa=fast,inline -I/opt/pgi/linux86-64/9.0/mpi/mpich/include
FO_prof = -fastsse -Munroll=n:4 -Mipa=fast,inline -I/opt/pgi/linux86-64/9.0/mpi/mpich/include -pg
FO_ = $(FO_opt)
FO = $(FO_$(OPT))
LINKER = $(CF)
LINKSO = $(CF) -shared
METISLIB = /home/modunlam/projets_temp/typhon-pgi/metis-4.0/libmetis.a
CGNSLIB = /home/modunlam/projets_temp/typhon-pgi/cgnslib_2.5/lib/libcgns.a
#LAPACKLIB =
MPILIB = /opt/pgi/linux86-64/9.0/mpi/mpich/lib/libmpich.a
#MPIOPT = $(mpif90 -showme:compile)
#MPILIB = $(mpif90 -showme:link)
$
Sorry the precedent post was mine and I forgot to identify myself…
Hello
I partially solved my problem :
- first by synchronizing my version
- second by using almost the same optimization options for the buiding of cngs, metis and typhon (-O2 for metis and cgns, and -O3 for typhon)
- third by using the -fPIC option for the compilation of typhon
The "Typhon-seq" executable works fine but I still have an issue with the "Typhon-mpi" executable. On the VISCOUS/POISEUILLE case I still have a problem with the reading of the cgns file :
$ mpirun -np 1 /home/modunlam/projets_temp/typhon-pgi-svn/typhon/local/typhon/Typhon-mpi I am 1 among 1 procs
******************************************************
TYPHON V 0.5.0 (678M)
******************************************************
###################################################
> PARAMETERS reading : main file (main.rpm)
#################################################
> PARAMETERS : parsing and initialization
* Project definition
. number of project zones : 1
. number of coupling relations : 0
2D framework
STEADY computation (pseudo unsteady convergence)
* Definition of output parameters
. file 1: VTK format
data set type:CELL
Poursuite de la lecture des parametres ZONE
- mesh definition
- Definition of Fluid Model
Laminar Navier-Stokes equations
Perfect Gas 'AIR'
- Definition of time integration parameters
. time step defined by stability condition
. IMPLICIT integration
Bi-Conjugate Gradient Stabilized iterative inversion (BiCG-Stab)
- Definition of spatial numerical parameters
numerical flux : HLLC
No high order extension
post-limiter: NONE
- Definition des parametres de raffinememt automatique (AMR)
- Definition of MPI parameters and strategy
- Number of coupled zones
* Definition of Boundary Conditions (BOCO)
family name TOP : condition ISOTHERMAL_WALL
family name BOTTOM : condition ISOTHERMAL_WALL
family name LEFT : condition SUBSONIC_INLET
family name RIGHT : condition SUBSONIC_OUTLET
* Definition of Connections
- Definition of Initial Conditions
Parsing parameters for uniform initial conditions
parsing PI = 1.02E5
parsing TI = 300.
parsing MACH = 0.05
- Probes definition
no used-defined probe
- Definition des parametres optionnels
- Check parameters consistency and further initialization
#####################################
> MPI STRATEGY: preprocessing
###############################################
> INPUTS : mesh and boundary conditions
* READING CGNS MESH: channel2d.cgns
. 1base(s) in CGNS file channel2d.cgns
- BASE BASE#1 : maillage surfacique
1 zone(s) dans la base 1
- Zone 1: typeUnstructured
lecture de maillage : 3131 x 1 x 1 noeuds
reading element connectivity: 3000 elements
. QUAD_4 : 3000 elements with 4 vertices
. BAR_2 : 260 elements with 2 vertices
. lecture de 4 conditions aux limites
. tagged element section*** : BC1_on_LEFT
type UserDefined, 30 items
Lecture CGNS: Probleme a la lecture des conditions aux limites
1
$
Any ideas?
First, glad that you manage to compile Typhon. Can you send me
(gressier arobas isae dot fr) your
defvar.make file ? I'll change the
configure.sh so that it can handle
the pgi configuration.
Considering your mpi computation:
1. that's weird to run a 1 thread
parallel computation but I checked
it works on my computer
2. one message is not the same
<pre> . tagged element section*** : BC1_on_LEFT </pre>
mine are
<pre>
. linking boundary condition marks 1/4: LEFT
face tagging method
30 mesh faces tagged
. linking boundary condition marks 2/4: RIGHT
face tagging method
30 mesh faces tagged
. linking boundary condition marks 3/4: TOP
face tagging method
100 mesh faces tagged
. linking boundary condition marks 4/4: BOTTOM
face tagging method
100 mesh faces tagged
</pre>
It can be either due to the cgns library or your cgns file. can you send me the log of sequential run and your cgns file (to check I use the same).
The mpirun with one processus was only to check if "Typhon-mpi" worked well. I send you the files right now.