CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Installation

[OpenFOAM.com] OpenFOAMv1806 with amd aocc 1.2 / 1.3 compiler

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree5Likes
  • 2 Post By olesen
  • 1 Post By olesen
  • 2 Post By RaghavendraSwamyH

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   December 5, 2018, 12:16
Default OpenFOAMv1806 with amd aocc 1.2 / 1.3 compiler
  #1
New Member
 
davide
Join Date: Jun 2017
Posts: 9
Rep Power: 5
cfdx is on a distinguished road
Hi


I am trying to compile OpenFOAM v1806 with AMD compilers (AOCC v 1.2.1 and 1.3.0) for an AMD Epyc processor platform. The OS is Centos 7.5, open-mpi 3.1.3, gcc 7.3.1, clang 7.0.0 (for AOCC 1.3) and clang 6.0 (AOCC 1.2.1).


I get multiple errors during compilation (./Allwmake) with AOCC v 1.3. The first error encountered is:


Code:
In file included from buoyantBoussinesqPimpleFoam.C:62:
In file included from /cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/OpenFOAM/lnInclude/postProcess.H:131:
../buoyantBoussinesqSimpleFoam/createFields.H:107:5: error: use of undeclared identifier 'simple'; did you mean 'pimple'?
    simple.dict(),
    ^~~~~~
    pimple
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createPimpleControl.H:1:15: note: 'pimple' declared here
pimpleControl pimple(mesh);
              ^
In file included from coldEngineFoam.C:50:
In file included from /cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/OpenFOAM/lnInclude/postProcess.H:131:
../XiFoam/createFields.H:3:9: error: use of undeclared identifier 'psiuReactionThermo'
autoPtr<psiuReactionThermo> pThermo
        ^
../XiFoam/createFields.H:7:1: error: unknown type name 'psiuReactionThermo'
psiuReactionThermo& thermo = pThermo();
^
../XiFoam/createFields.H:7:30: error: use of undeclared identifier 'pThermo'
psiuReactionThermo& thermo = pThermo();
                             ^
../XiFoam/createFields.H:10:1: error: unknown type name 'basicSpecieMixture'
basicSpecieMixture& composition = thermo.composition();
^
../XiFoam/createFields.H:78:9: error: use of undeclared identifier 'laminarFlameSpeed'
autoPtr<laminarFlameSpeed> unstrainedLaminarFlameSpeed
        ^
5 errors generated.
make[2]: *** [/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/wmake/rules/General/transform:35: /cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/build/linux64ClangDPInt32Opt/applications/solvers/combustion/coldEngineFoam/coldEngineFoam.o] Error 1
make[1]: *** [/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/wmake/makefiles/apps:27: coldEngineFoam] Error 2
make[1]: *** Waiting for unfinished jobs....
followed by:


Code:
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createRDeltaT.H:1:16: error: no member named 'localEulerDdt' in namespace 'Foam::fv'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createRDeltaT.H:15:21: error: no member named 'localEulerDdt' in namespace 'Foam::fv'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:4:9: error: unknown type name 'psiReactionThermo'; did you mean 'rhoReactionThermo'?
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:4:36: error: use of undeclared identifier 'psiReactionThermo'; did you mean 'rhoReactionThermo'?
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:5:1: error: unknown type name 'psiReactionThermo'; did you mean 'rhoReactionThermo'?
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:48:1: error: unknown type name 'pressureControl'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:48:41: error: use of undeclared identifier 'pimple'; did you mean 'simple'?
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:65:25: error: use of undeclared identifier 'psiReactionThermo'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/combustion/reactingFoam/createFields.H:68:2: error: expected a type
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:33:9: error: use of undeclared identifier 'phaseChangeTwoPhaseMixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:36:24: error: use of undeclared identifier 'mixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:37:24: error: use of undeclared identifier 'mixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:39:33: error: use of undeclared identifier 'mixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:40:33: error: use of undeclared identifier 'mixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:59:42: error: use of undeclared identifier 'mixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/applications/solvers/multiphase/interPhaseChangeFoam/createFields.H:64:50: error: use of undeclared identifier 'mixture'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createRDeltaT.H:1:16: error: no member named 'localEulerDdt' in namespace 'Foam::fv'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createRDeltaT.H:15:21: error: no member named 'localEulerDdt' in namespace 'Foam::fv'
../interFoam/createFields.H:35:1: error: unknown type name 'immiscibleIncompressibleTwoPhaseMixture'
../interFoam/createFields.H:75:9: error: use of undeclared identifier 'incompressible'; did you mean 'compressible'?
../interFoam/createFields.H:77:5: error: use of undeclared identifier 'incompressible'; did you mean 'compressible'?
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createFvOptions.H:1:28: error: no member named 'options' in namespace 'Foam::fv'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createFvOptions.H:1:5: error: no member named 'options' in namespace 'Foam::fv'
/cluster/software/OpenFOAM/of1806_aocc13/OpenFOAM-v1806_aocc13/src/finiteVolume/lnInclude/createFvOptions.H:3:6: error: use of undeclared identifier 'fvOptions'
Also, the following error appears multiple times:

Code:
ld.lld: error: unknown argument: --add-needed
clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
Additional information:
clang -v
Code:
AOCC.LLVM.1.3.0.B34.2018_10_22 clang version 7.0.0 (CLANG: Jenkins AOCC_1_3_0_Release-Build#34) (based on LLVM AOCC.LLVM.1.3.0.B34.2018_10_22)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /cluster/software/aocc-1.3.0/AOCC-1.3.0-Compiler/bin
Found candidate GCC installation: /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-redhat-linux/4.8.2
Found candidate GCC installation: /usr/lib/gcc/x86_64-redhat-linux/4.8.5
Selected GCC installation: /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Selected multilib: .;@m64
gcc -v
Code:
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-7/root/usr/libexec/gcc/x86_64-redhat-linux/7/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-7/root/usr --mandir=/opt/rh/devtoolset-7/root/usr/share/man --infodir=/opt/rh/devtoolset-7/root/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 --enable-plugin --with-linker-hash-style=gnu --enable-initfini-array --with-default-libstdcxx-abi=gcc4-compatible --with-isl=/builddir/build/BUILD/gcc-7.3.1-20180303/obj-x86_64-redhat-linux/isl-install --enable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 7.3.1 20180303 (Red Hat 7.3.1-5) (GCC)

I tried already to delete from wmake/rules/linux64Clang/c and c++
Code:
-Xlinker --add-needed
but the compilation gave similar errors as above.


The compilation with AOCC 1.2.1 (clang 6.0) gives similar results





Am i making a mistake? Any idea what is going?


Thank you in advance for any suggestion!



P.s.: I compiled of1806 on the same machine with gcc 7.3.1 without problems.
cfdx is offline   Reply With Quote

Old   December 9, 2018, 06:21
Default
  #2
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,959
Blog Entries: 45
Rep Power: 122
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Quick answer: I don't know if they have been building with clang in their tests, but they will likely be interested in this, so please report this problem at their issue tracker: https://develop.openfoam.com
__________________
wyldckat is offline   Reply With Quote

Old   December 20, 2018, 14:38
Default
  #3
Senior Member
 
Mark Olesen
Join Date: Mar 2009
Location: http://olesenm.github.io/
Posts: 1,144
Rep Power: 28
olesen will become famous soon enougholesen will become famous soon enough
Quote:
Originally Posted by cfdx View Post
Hi

I am trying to compile OpenFOAM v1806 with AMD compilers (AOCC v 1.2.1 and 1.3.0) for an AMD Epyc processor platform. The OS is Centos 7.5, open-mpi 3.1.3, gcc 7.3.1, clang 7.0.0 (for AOCC 1.3) and clang 6.0 (AOCC 1.2.1).


...
P.s.: I compiled of1806 on the same machine with gcc 7.3.1 without problems.

This is an interesting one. We generally build with gcc 4.8.5, gcc-7.3.1 and clang 4 on a regular basis and intel on a less regular basis, but have keep a slight distance from the newer llvm versions. The clang compilers are really good (very picky) about picking up non-standard or slightly question constructions, but in other places the optimizer has removed conditionals that it thinks it doesn't need - resulting in a region of code being improperly initialized.


This might need some more investigation. Please open a gitlab issue for tracking it.


Cheers,
/mark
wyldckat and cfdx like this.
olesen is offline   Reply With Quote

Old   December 20, 2018, 20:20
Default
  #4
Senior Member
 
Mark Olesen
Join Date: Mar 2009
Location: http://olesenm.github.io/
Posts: 1,144
Rep Power: 28
olesen will become famous soon enougholesen will become famous soon enough
Just compiled through OpenFOAM-v1812 using clang 7.0.0 without needing to change anything.


I wonder if this was something that has been fixed in OpenFOAM since 1806, or if the AOCC is doing something different.
cfdx likes this.
olesen is offline   Reply With Quote

Old   January 2, 2019, 02:50
Default
  #5
New Member
 
davide
Join Date: Jun 2017
Posts: 9
Rep Power: 5
cfdx is on a distinguished road
Hi Mark

I ll give it a try with OpenFOAM 1812 and AOCC 1.2 . If the problems persist, I will open a gitlab issue.
cfdx is offline   Reply With Quote

Old   February 12, 2019, 02:53
Default
  #6
New Member
 
Join Date: Feb 2019
Posts: 3
Rep Power: 4
RaghavendraSwamyH is on a distinguished road
Quote:
Originally Posted by olesen View Post
Just compiled through OpenFOAM-v1812 using clang 7.0.0 without needing to change anything.


I wonder if this was something that has been fixed in OpenFOAM since 1806, or if the AOCC is doing something different.
- You could try with the patch resolution marked below for the reported issue,
OpenFOAM sources : 1812
AoCC compiler : 1.3.0


- OpenFOAM 1812 patch fix resolution to be built with AoCC compiler 1.3.0:

>>
File : OpenFOAM-v1812/etc/bashrc
--------------------------------------------------------------------------------------
+export WM_COMPILER=Clang

File : OpenFOAM-v1812/wmake/rules/linux64Clang/c++
--------------------------------------------------------------------------------------
+CC = clang++ -std=c++11 -m64 -fopenmp
+LINKEXE = $(CC) -fuse-ld=ld -Wl,-add-needed

File : OpenFOAM-v1812/wmake/rules/linux64Clang/c
--------------------------------------------------------------------------------------
+cc = clang -m64 -fopenmp
+cFLAGS = $(GFLAGS) $(cWARN) $(cOPT) $(cDBUG) $(LIB_HEADER_DIRS) -fPIC
+LINKEXE = $(cc) -fuse-ld=ld -Wl,-add-needed


File : ThirdParty-v1812/scotch_6.0.6/src/Make.inc/Makefile.inc.x86-64_pc_linux2
--------------------------------------------------------------------------------------
+AR = clang
+ARFLAGS = $(WM_CFLAGS) -shared -fPIC -o
+CCS = clang
+CCD = mpicc
+CFLAGS = $(WM_CFLAGS) -O3 -fPIC -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_PTHREAD -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -DSCOTCH_PTHREAD -Drestrict=__restrict -DIDXSIZE64
CLIBFLAGS =
+LDFLAGS = -lz -lm -lrt -pthread -Wl,-z,notext -fPIC

<<


- The issue is due to the deprecated “-Wl,-add-needed” flag which currently not supported by lld.
- Here the AOCC-1.3.0 with internal ld.lld [ AoCC provided LLD 1.3.0 ], does not support the deprecated "--add-needed" flag and by using the “-fuse-ld=ld -Wl,-add-needed”, the AOCC-1.3.0 tool chain successfully builds the OpenFOAM 1812 sources.
- By default llvm-7.0.1 uses the system linker which supports this flag and hence it builds the OpenFOAM 1812 sources.

Note :
- In addition to above, you can try out the flag “-march=znver1” for OpenFOAM optimization.
CapSizer and cfdx like this.
RaghavendraSwamyH is offline   Reply With Quote

Old   February 12, 2019, 07:16
Default
  #7
New Member
 
davide
Join Date: Jun 2017
Posts: 9
Rep Power: 5
cfdx is on a distinguished road
The link to the patch fix is not active. Could you post it again please?
cfdx is offline   Reply With Quote

Old   February 18, 2019, 04:37
Default
  #8
New Member
 
Join Date: Feb 2019
Posts: 3
Rep Power: 4
RaghavendraSwamyH is on a distinguished road
Quote:
Originally Posted by cfdx View Post
The link to the patch fix is not active. Could you post it again please?
1. Thank you, please find the required attachment patch
filename : OpenFOAM-1812_patch_diff_fix_AoCC-1.3.0.patch

2. Steps to patch and build OpenFOAM 1812 sources using AoCC 1.3.0 compiler,

>>
mkdir ~/1812_patched
cp ~/OpenFOAM-v1812.tgz ~/1812_patched
cp ~/ThirdParty-v1812.tgz ~/1812_patched
cd ~/1812_patched
tar xfz OpenFOAM-v1812.tgz
tar xfz ThirdParty-v1812.tgz


cd ~/
patch -p0 --follow-symlinks -i OpenFOAM-1812_patch_diff_fix_AoCC-1.3.0.patch

source ~/compiler/AOCC/release/1.3/setenv_AOCC.sh

echo "Set Compiler Settings "
unset C_INCLUDE_PATH
unset CPLUS_INCLUDE_PATH

# Set up OpenMPI to use AOCC
export PATH=/usr/lib64/openmpi/bin/:$PATH
export LD_LIBRARY_PATH=/usr/lib64/openmpi/lib/:$LD_LIBRARY_PATH
export OMPI_CC=clang
export OMPI_CXX=clang++
export OMPI_FC=flang

cd ~/1812_patched
source OpenFOAM-v1812/etc/bashrc

echo $WM_PROJECT_DIR
cd $WM_PROJECT_DIR


time ./Allwmake -j 64 all -k &> buildOpenFOAM_AoCC-1.3.log &
<<


3. Additionally, you can find additional resources and post queries related to AMD Optimizing C/C++ Compiler at link : https://community.amd.com/community/devgurus

Feel free to ask any further information.
Attached Files
File Type: patch OpenFOAM-1812_patch_diff_fix_AoCC-1.3.0.patch (2.9 KB, 11 views)

Last edited by RaghavendraSwamyH; February 19, 2019 at 05:51.
RaghavendraSwamyH is offline   Reply With Quote

Old   February 21, 2019, 05:23
Default
  #9
New Member
 
davide
Join Date: Jun 2017
Posts: 9
Rep Power: 5
cfdx is on a distinguished road
Thank you very much for the detailed instructions.

I followed your instructions but could not compile OF1812 successfully.

I get the following errors (all during the compilation of cfmesh) and a couple of warnings:

Code:
utilities/meshes/polyMeshGen/polyMeshGenFacesI.H:29:10: fatal error: 'omp.h' file not found
In addition, while testing this version, I recognized that all test-cases involving snappyhexmesh crash (both serial and in parallel), with e.g. the following message:

Code:
[0] #[1] #[3] #0  [4] #0  0  0  Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)[2] #0  Foam::error::printStack(Foam::Ostream&)--------------------------------------------------------------------------
A process has executed an operation involving a call to the
"fork()" system call to create a child process.  Open MPI is currently
operating in a condition that could result in memory corruption or
other system errors; your job may hang, crash, or produce silent
data corruption.  The use of fork() (or system() or other calls that
create child processes) is strongly discouraged.

The process that invoked fork was:

  Local host:          [[2745,1],4] (PID 59592)

If you are *absolutely sure* that your application will successfully
and correctly survive a call to fork(), you may disable this warning
by setting the mpi_warn_on_fork MCA parameter to 0.
--------------------------------------------------------------------------
[5] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
 at  at  at ??:?
??:?
??:?
 at  at [1] #1  ??:?
??:?
Foam::sigFpe::sigHandler(int)[4] #1  Foam::sigFpe::sigHandler(int)[5] #1  [2] #1Foam::sigFpe::sigHandler(int)  Foam::sigFpe::sigHandler(int)[3] #1  Foam::sigFpe::sigHandler(int)[0] #1  Foam::sigFpe::sigHandler(int) at ??:?
[3] #2  ? at ??:?
[5] #2  ? at ??:?
[0]  at #2  ???:?
[1] #2  ? at  at ??:?
[2] #2  ??:?
?[4] #2  ? in /usr/lib64/libpthread.so.0
[3] #3  Foam::polyMeshGeometry::checkCellDeterminant(bool, double, Foam::polyMesh const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<int> const&, Foam::List<int> const&, Foam::HashSet<int, Foam::Hash<int> >*) in /usr/lib64/libpthread.so.0
[5] #3  Foam::polyMeshGeometry::checkCellDeterminant(bool, double, Foam::polyMesh const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<int> const&, Foam::List<int> const&, Foam::HashSet<int, Foam::Hash<int> >*) in /usr/lib64/libpthread.so.0
[1] #3  Foam::polyMeshGeometry::checkCellDeterminant(bool, double, Foam::polyMesh const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<int> const&, Foam::List<int> const&, Foam::HashSet<int, Foam::Hash<int> >*) in /usr/lib64/libpthread.so.0
[4] #3  Foam::polyMeshGeometry::checkCellDeterminant(bool, double, Foam::polyMesh const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<int> const&, Foam::List<int> const&, Foam::HashSet<int, Foam::Hash<int> >*) in /usr/lib64/libpthread.so.0
[0] #3   in Foam::polyMeshGeometry::checkCellDeterminant(bool, double, Foam::polyMesh const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<int> const&, Foam::List<int> const&, Foam::HashSet<int, Foam::Hash<int> >*)/usr/lib64/libpthread.so.0
[2] #3  Foam::polyMeshGeometry::checkCellDeterminant(bool, double, Foam::polyMesh const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<int> const&, Foam::List<int> const&, Foam::HashSet<int, Foam::Hash<int> >*) at ??:?
 at [0] #4   at ??:?
Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::List<int> const&, Foam::List<Foam::Pair<int> > const&, Foam::HashSet<int, Foam::Hash<int> >&) at ??:?
 at  at ??:?
[4] #??:?
4  ??:?
[1] #4  Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::List<int> const&, Foam::List<Foam::Pair<int> > const&, Foam::HashSet<int, Foam::Hash<int> >&)[5] #4  Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::List<int> const&, Foam::List<Foam::Pair<int> > const&, Foam::HashSet<int, Foam::Hash<int> >&)Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::List<int> const&, Foam::List<Foam::Pair<int> > const&, Foam::HashSet<int, Foam::Hash<int> >&)[2] #4  [3] #4  Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::List<int> const&, Foam::List<Foam::Pair<int> > const&, Foam::HashSet<int, Foam::Hash<int> >&)Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::List<int> const&, Foam::List<Foam::Pair<int> > const&, Foam::HashSet<int, Foam::Hash<int> >&) at ??:?
 at [5] #5  ??:?
Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::HashSet<int, Foam::Hash<int> >&)[3] #5  Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::HashSet<int, Foam::Hash<int> >&) at ??:?
[4] #5  Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::HashSet<int, Foam::Hash<int> >&) at ??:?
 at [1] #5   at Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::HashSet<int, Foam::Hash<int> >&)??:?
??:?
[2] #5  [0] #5  Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::HashSet<int, Foam::Hash<int> >&)Foam::motionSmootherAlgo::checkMesh(bool, Foam::polyMesh const&, Foam::dictionary const&, Foam::HashSet<int, Foam::Hash<int> >&) at ??:?
[3] #6  Foam::meshRefinement::mergePatchFacesUndo(double, double, Foam::List<int> const&, Foam::dictionary const&, Foam::List<int> const&) at ??:?
[5] #6  Foam::meshRefinement::mergePatchFacesUndo(double, double, Foam::List<int> const&, Foam::dictionary const&, Foam::List<int> const&) at ??:?
[4] #6  Foam::meshRefinement::mergePatchFacesUndo(double, double, Foam::List<int> const&, Foam::dictionary const&, Foam::List<int> const&) at ??:?
[2] #6  Foam::meshRefinement::mergePatchFacesUndo(double, double, Foam::List<int> const&, Foam::dictionary const&, Foam::List<int> const&) at  at ??:?
[0] #6  ??:?
Foam::meshRefinement::mergePatchFacesUndo(double, double, Foam::List<int> const&, Foam::dictionary const&, Foam::List<int> const&)[1] #6  Foam::meshRefinement::mergePatchFacesUndo(double, double, Foam::List<int> const&, Foam::dictionary const&, Foam::List<int> const&) at  at  at ??:?
 at  at ??:?
[0] #7  ??:?
??:?
??:?
Foam::snappyRefineDriver::mergePatchFaces(bool, Foam::refinementParameters const&, Foam::dictionary const&) at [1] #7  [3] #7  [2] #7  ??:?
[4] #7  Foam::snappyRefineDriver::mergePatchFaces(bool, Foam::refinementParameters const&, Foam::dictionary const&)Foam::snappyRefineDriver::mergePatchFaces(bool, Foam::refinementParameters const&, Foam::dictionary const&)Foam::snappyRefineDriver::mergePatchFaces(bool, Foam::refinementParameters const&, Foam::dictionary const&)Foam::snappyRefineDriver::mergePatchFaces(bool, Foam::refinementParameters const&, Foam::dictionary const&)[5] #7  Foam::snappyRefineDriver::mergePatchFaces(bool, Foam::refinementParameters const&, Foam::dictionary const&) at ??:?
[3] #8  Foam::snappyRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&) at ??:?
[5] #8  Foam::snappyRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&) at  at ??:?
??:?
[2] #8  Foam::snappyRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&) at [0] #8   at ??:?
Foam::snappyRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&)[4] #8  ??:?
Foam::snappyRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&)[1] #8  Foam::snappyRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&) at  at ??:?
??:?
[5] #9  [3] #9   at ??:?
[2] #9   at ??:?
[4] #9   at  at ??:?
[1] #??:?
[0] #9  9  ?????? at  at ??:?
??:?
[3] #10  [5] #10  __libc_start_main__libc_start_main at ??:?
[2] #10  __libc_start_main at ??:?
[4] #10  __libc_start_main at  at ??:?
??:?
[0] #10  __libc_start_main[1] #10  __libc_start_main in /usr/lib64/libc.so.6
[3] #11   in /usr/lib64/libc.so.6
[5] #11   in /usr/lib64/libc.so.6
[2] #11   in /usr/lib64/libc.so.6
[4] #11   in /usr/lib64/libc.so.6
[1] #11   in /usr/lib64/libc.so.6
[0] #11  ?????? at ??:?
[node07:59591:0:59591] Caught signal 8 (Floating point exception: tkill(2) or tgkill(2))
 at ??:?
[node07:59593:0:59593] Caught signal 8 (Floating point exception: tkill(2) or tgkill(2))
 at ??:?
[node07:59590:0:59590] Caught signal 8 (Floating point exception: tkill(2) or tgkill(2))
 at ??:?
[node07:59592:0:59592] Caught signal 8 (Floating point exception: tkill(2) or tgkill(2))
 at ??:?
 at ??:?
[node07:59587:0:59587] Caught signal 8 (Floating point exception: tkill(2) or tgkill(2))
[node07:59588:0:59588] Caught signal 8 (Floating point exception: tkill(2) or tgkill(2))
==== backtrace ====
 0 0x000000000000f59b raise()  ???:0
 1 0x000000000000f6d0 _L_unlock_13()  funlockfile.c:0
 2 0x00000000004458c0 Foam::polyMeshGeometry::checkCellDeterminant()  ???:0
 3 0x0000000000439e9a Foam::motionSmootherAlgo::checkMesh()  ???:0
 4 0x000000000043acc4 Foam::motionSmootherAlgo::checkMesh()  ???:0
 5 0x000000000020aeb7 Foam::meshRefinement::mergePatchFacesUndo()  ???:0
 6 0x0000000000197fa5 Foam::snappyRefineDriver::mergePatchFaces()  ???:0
 7 0x0000000000198be8 Foam::snappyRefineDriver::doRefine()  ???:0
 8 0x000000000041d604 main()  ???:0
 9 0x0000000000022445 __libc_start_main()  ???:0
10 0x0000000000410634 _start()  ???:0
===================
==== backtrace ====
 0 0x000000000000f59b raise()  ???:0
 1 0x000000000000f6d0 _L_unlock_13()  funlockfile.c:0
 2 0x00000000004458c0 Foam::polyMeshGeometry::checkCellDeterminant()  ???:0
 3 0x0000000000439e9a Foam::motionSmootherAlgo::checkMesh()  ???:0
 4 0x000000000043acc4 Foam::motionSmootherAlgo::checkMesh()  ???:0
 5 0x000000000020aeb7 Foam::meshRefinement::mergePatchFacesUndo()  ???:0
 6 0x0000000000197fa5 Foam::snappyRefineDriver::mergePatchFaces()  ???:0
 7 0x0000000000198be8 Foam::snappyRefineDriver::doRefine()  ???:0
 8 0x000000000041d604 main()  ???:0
 9 0x0000000000022445 __libc_start_main()  ???:0
10 0x0000000000410634 _start()  ???:0
===================
==== backtrace ====
 0 0x000000000000f59b raise()  ???:0
 1 0x000000000000f6d0 _L_unlock_13()  funlockfile.c:0
 2 0x00000000004458c0 Foam::polyMeshGeometry::checkCellDeterminant()  ???:0
 3 0x0000000000439e9a Foam::motionSmootherAlgo::checkMesh()  ???:0
 4 0x000000000043acc4 Foam::motionSmootherAlgo::checkMesh()  ???:0
 5 0x000000000020aeb7 Foam::meshRefinement::mergePatchFacesUndo()  ???:0
 6 0x0000000000197fa5 Foam::snappyRefineDriver::mergePatchFaces()  ???:0
 7 0x0000000000198be8 Foam::snappyRefineDriver::doRefine()  ???:0
 8 0x000000000041d604 main()  ???:0
 9 0x0000000000022445 __libc_start_main()  ???:0
10 0x0000000000410634 _start()  ???:0
===================
==== backtrace ====
 0 0x000000000000f59b raise()  ???:0
 1 0x000000000000f6d0 _L_unlock_13()  funlockfile.c:0
 2 0x00000000004458c0 Foam::polyMeshGeometry::checkCellDeterminant()  ???:0
 3 0x0000000000439e9a Foam::motionSmootherAlgo::checkMesh()  ???:0
 4 0x000000000043acc4 Foam::motionSmootherAlgo::checkMesh()  ???:0
 5 0x000000000020aeb7 Foam::meshRefinement::mergePatchFacesUndo()  ???:0
 6 0x0000000000197fa5 Foam::snappyRefineDriver::mergePatchFaces()  ???:0
 7 0x0000000000198be8 Foam::snappyRefineDriver::doRefine()  ???:0
 8 0x000000000041d604 main()  ???:0
 9 0x0000000000022445 __libc_start_main()  ???:0
10 0x0000000000410634 _start()  ???:0
===================
==== backtrace ====
 0 0x000000000000f59b raise()  ???:0
 1 0x000000000000f6d0 _L_unlock_13()  funlockfile.c:0
 2 0x00000000004458c0 Foam::polyMeshGeometry::checkCellDeterminant()  ???:0
 3 0x0000000000439e9a Foam::motionSmootherAlgo::checkMesh()  ???:0
 4 0x000000000043acc4 Foam::motionSmootherAlgo::checkMesh()  ???:0
 5 0x000000000020aeb7 Foam::meshRefinement::mergePatchFacesUndo()  ???:0
 6 0x0000000000197fa5 Foam::snappyRefineDriver::mergePatchFaces()  ???:0
 7 0x0000000000198be8 Foam::snappyRefineDriver::doRefine()  ???:0
 8 0x000000000041d604 main()  ???:0
 9 0x0000000000022445 __libc_start_main()  ???:0
10 0x0000000000410634 _start()  ???:0
===================
==== backtrace ====
 0 0x000000000000f59b raise()  ???:0
 1 0x000000000000f6d0 _L_unlock_13()  funlockfile.c:0
 2 0x00000000004458c0 Foam::polyMeshGeometry::checkCellDeterminant()  ???:0
 3 0x0000000000439e9a Foam::motionSmootherAlgo::checkMesh()  ???:0
 4 0x000000000043acc4 Foam::motionSmootherAlgo::checkMesh()  ???:0
 5 0x000000000020aeb7 Foam::meshRefinement::mergePatchFacesUndo()  ???:0
 6 0x0000000000197fa5 Foam::snappyRefineDriver::mergePatchFaces()  ???:0
 7 0x0000000000198be8 Foam::snappyRefineDriver::doRefine()  ???:0
 8 0x000000000041d604 main()  ???:0
 9 0x0000000000022445 __libc_start_main()  ???:0
10 0x0000000000410634 _start()  ???:0
===================
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun noticed that process rank 3 with PID 0 on node node07 exited on signal 8 (Floating point exception).
Otherwise, all solvers I tested were working correctly.


A few additional questions:
Why compiling with -fopenmp ? As much as I know, OF uses only openMPI.
Did you test your compiled version on, for example, the motorBike tutorial?

Thank you!
cfdx is offline   Reply With Quote

Old   February 25, 2019, 03:57
Default
  #10
New Member
 
Join Date: Feb 2019
Posts: 3
Rep Power: 4
RaghavendraSwamyH is on a distinguished road
1. Please install the following package dependencies :

sudo apt-get install zlib1g-dev libc6-dev-amd64 libc6-dev-i386 flex bison libomp-dev

2. The libomp-dev package will resolve the "'omp.h' file not found" issue. It has the openmp support in the OpenFOAM 1812 sources.

3. Use the environment setting $unset FOAM_SIGFPE or $export FOAM_SIGFPE=false for the floating point related issue resolution.

4. Yes, it has been tested with the motorbike example.

Feel free to ask any further information.
RaghavendraSwamyH is offline   Reply With Quote

Old   February 27, 2019, 05:59
Default
  #11
New Member
 
davide
Join Date: Jun 2017
Posts: 9
Rep Power: 5
cfdx is on a distinguished road
Hi

I managed to compile OF with the AMD compiler on Ubuntu 16.04 by following your guide. Thank you!

On our cluster running centos 7.5 however, I had to compile twice. Basically, I followed your guide and after the first compilation I re-compiled without this step:

Code:
echo "Set Compiler Settings "
unset C_INCLUDE_PATH
unset CPLUS_INCLUDE_PATH
I assume that by doing so, the omp.h files delivered by the AMD compiler are used.

I tested on a couple of tutorials and everything seems fine.


Thank you!
cfdx is offline   Reply With Quote

Reply

Tags
1806, amd epyc, aocc, centos 7

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
AMD Epyc CFD benchmarks with Ansys Fluent flotus1 Hardware 55 November 12, 2018 06:33
Superlinear speedup in OpenFOAM 13 msrinath80 OpenFOAM Running, Solving & CFD 18 March 3, 2015 06:36
CFX11 + Fortran compiler ? Mohan CFX 20 March 30, 2011 19:56
OF 1.6 | Ubuntu 9.10 (64bit) | GLIBCXX_3.4.11 not found piprus OpenFOAM Installation 22 February 25, 2010 14:43
OpenFOAM 13 AMD quadcore parallel results msrinath80 OpenFOAM Running, Solving & CFD 1 November 11, 2007 00:23


All times are GMT -4. The time now is 06:16.