Author Topic: Running error on FEAP 8.6  (Read 11782 times)

jskim

  • New Member
  • *
  • Posts: 8
Running error on FEAP 8.6
« on: July 19, 2022, 03:53:29 AM »
Dear all,

I have used 8.4 version of FEAP, and recently downloaded a new version 8.6.1n (in Linux system).
I would like to ask questions because there were several problems in the process of installing.

1) I renamed the makefile.in-gfortran in  ./ver86 folder as makefile.in, and commented "ARCHIVELIB" and "ARPACKLIB".
I also commented "ARCHIVELIB" and "ARPACKLIB" in ./ver86/main folder.
Moreover, I removed "DSYM=Dsymutil" option based on previous post.
Is it correct to do all of the above things?

2) When I run the feap using an example file, it seems to work well.
So I moved to the next step to install parfeap at ./ver86/parfeap folder.
When I wrote down "make install" at ./ver86/packages/arpack/archive, I got three warning messages written as "unused dummy argument ...". Can I ignore these warning messages?

3) After installing parfeap, I tried to test a simple parellel example that works well on FEAP 8.4. (also in the serial feap 8.6)
Running parfeap provided two input files which seems well-partitioned.
However, when I enter "mpirun -n 2 parfeap(where ./ver86/parfeap/feap)" after partition process, it gave me the error message like below:

Quote
   
[user@test ex]$ mpirun -n 2 parfeap


    F I N I T E   E L E M E N T   A N A L Y S I S   P R O G R A M

           FEAP (C) Regents of the University of California
                         All Rights Reserved.
                       VERSION: Release 8.6.1n     
                          DATE: 14 February 2022   

         Files are set as:   Status  Filename

           Input   (read ) : Exists  Iex5p_0001                     
           Output  (write) : New     Oex5p_0001                     
           Restart (read ) : New     Rex5p_0001                     
           Restart (write) : New     Rex5p_0001                     
           Plots   (write) : New     Pex5p_0001                     

         Caution, existing write files will be overwritten.
 
Are filenames correct?( y or n; r = redefine all; s = stop) :At line 211 of file pcontr.f (unit = 15)
Fortran runtime error: Cannot open file '': No such file or directory

Error termination. Backtrace:
#0  0x14afa4d3f171 in ???
#1  0x14afa4d3fd19 in ???
#2  0x14afa4d40521 in ???
#3  0x14afa4f442a8 in ???
#4  0x14afa4f445ac in ???
#5  0x433dac in pcontr_
   at /home/user/fem/feap/src/ver86-test/program/pcontr.f:211
#6  0x4049fa in feap
   at /home/user/fem/feap/src/ver86-test/main/feap86.f:175
#7  0x4049fa in main
   at /home/user/fem/feap/src/ver86-test/main/feap86.f:181

How can I fix this error? Did I make a mistake during installation?

Thank you all in advance for any help, and hope you have great day :)

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1160
Re: Running error on FEAP 8.6
« Reply #1 on: July 19, 2022, 10:05:36 AM »
Some quick comments but not a solution

1) This is fine.  Though there was no need to comment ARCHIVELIB and ARPACKLIB in main/makefile.  Once commented in makefile.in, they are undefined and expand to nothing.  Commenting DSYM is needed.

2) The warning messages on the build can be ignored.

3) The error is being throw on the line that is trying to open the input file, so it is likely that the name has been malformed for some reason.  But from the error it is not clear which processor has the wrong name.  You could try debugging parfeap/mpi_start_FEAP.F to see what is in finp on the different ranks and/or debugging in program/pcontr.f for the same.

Can you give more information about the OS, its version, and the same for your compiler.

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1160
Re: Running error on FEAP 8.6
« Reply #2 on: July 19, 2022, 10:27:38 AM »
Additional thought.  Is the file Iex5p_0002 in the runtime directory?

jskim

  • New Member
  • *
  • Posts: 8
Re: Running error on FEAP 8.6
« Reply #3 on: July 19, 2022, 06:55:28 PM »
Thank you for your reply.

I installed feap in CentOS 8.4 and used gcc compiler 8.5.0.
And all partitioned files including Iex5p_0002 are in the runtime directory.

I got more error messages as below:

Quote
(continued..)
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 50152059.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
  • PETSC ERROR: ------------------------------------------------------------------------
The problem is likely to come from openMPI, so I set the path of mpirun and mpiexec to "./petsc-3.13.2/gnu-opt/bin/mpirun(and mpiexec)" in bashrc file.
But there is still problem  :'(

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1160
Re: Running error on FEAP 8.6
« Reply #4 on: July 19, 2022, 08:47:20 PM »
Another possibility is a compiler mismatch on one of the components.  One should use the same compiler for the main code/archive as used to build petsc and parfeap.  Mismatches are sometimes ok but sometimes they lead to issues.

Have you checked that you can run the petsc examples?

jskim

  • New Member
  • *
  • Posts: 8
Re: Running error on FEAP 8.6
« Reply #5 on: July 20, 2022, 03:49:20 AM »
If you mean the make check in $PETSC_DIR, the results are shown as below:

Quote
[user@test petsc-3.13.2]$ make PETSC_DIR=/home/user/fem/feap/src/petsc-3.13.2 PETSC_ARCH=gnu-opt check
Running check examples to verify correct installation
Using PETSC_DIR=/home/user/fem/feap/src/petsc-3.13.2 and PETSC_ARCH=gnu-opt
C/C++ example src/snes/tutorials/ex19 run successfully with 1 MPI process
C/C++ example src/snes/tutorials/ex19 run successfully with 2 MPI processes
C/C++ example src/snes/tutorials/ex19 run successfully with hypre
C/C++ example src/snes/tutorials/ex19 run successfully with mumps
C/C++ example src/snes/tutorials/ex19 run successfully with superlu_dist
C/C++ example src/snes/tutorials/ex19 run successfully with ml
Fortran example src/snes/tutorials/ex5f run successfully with 1 MPI process
Completed test examples


I have one curious thing that, should I use gfortran compiler more than version of 10?
I changed the line including FF and CC in ver86/makefile.in like

Quote
  FF = gfortran   #FF=gfortran-10
  CC = gcc         #CC=gcc-10

so, wonder it could make problem.


Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1160
Re: Running error on FEAP 8.6
« Reply #6 on: July 20, 2022, 09:16:32 AM »
Some very old versions of gfortran may give problems.  What version are you using? What do you get if you run gfortran -v?  Also what do you see if you run /home/user/fem/feap/src/petsc-3.13.2/gnu-opt/bin/mpif90 -v?

I will also point out that petsc version 3.13 if a bit old, but that should not be the problem here.
« Last Edit: July 20, 2022, 09:59:45 AM by Prof. S. Govindjee »

jskim

  • New Member
  • *
  • Posts: 8
Re: Running error on FEAP 8.6
« Reply #7 on: July 20, 2022, 05:06:17 PM »
Dear Professor,

I shared my results as below:
1. gfortran -v
Quote
[user@test petsc-3.13.2]$ gfortran -v                                         
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.5.0 20210514 (Red Hat 8.5.0-4) (GCC)


2. $PETSC_DIR/gnu-opt/bin/mpif90 -v

Quote
[user@test petsc-3.13.2]$ $PETSC_DIR/gnu-opt/bin/mpif90 -v
Using built-in specs.
COLLECT_GCC=/usr/bin/gfortran
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.5.0 20210514 (Red Hat 8.5.0-4) (GCC)

Thank you for your time and help!
« Last Edit: July 20, 2022, 05:08:18 PM by jskim »

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1160
Re: Running error on FEAP 8.6
« Reply #8 on: July 20, 2022, 11:42:26 PM »
These should be ok.

I suggest going back to the original suggestion and debugging parfeap/mpi_start_FEAP.F to see what is in finp on the different ranks and/or debugging in program/pcontr.f for the same.