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

[OpenFOAM.com] Does GAMG solver have something to do with CGAL or boost?

Register Blogs Community New Posts Updated Threads Search

Like Tree2Likes
  • 1 Post By wyldckat
  • 1 Post By syavash

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 16, 2019, 12:12
Default Does GAMG solver have something to do with CGAL or boost?
  #1
Senior Member
 
Syavash Asgari
Join Date: Apr 2010
Posts: 473
Rep Power: 18
syavash is on a distinguished road
Dear mates,

I have tried to install both OF1812 and the recently released OF1906 on a cluster. However, I cannot manage to use GAMG solver in either versions, not even in the tutorial cases. It gives me error that I cannot understand.

Now, my question here, is there a connection between CGAL/boost installation and proper compilation of GAMG solver? I ask because I could not manage to install CGAL/boost. However, OpenFOAM still has remained functional and I can use PCG algorithm and other stuff.

Kind Regards,
Syavash
syavash is offline   Reply With Quote

Old   July 16, 2019, 16:41
Default
  #2
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
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: GAMG should not depend on CGAL nor Boost. And if it did, you would likely never been able to run the solver, since it would not have compiled either.

Without being able to see the error message you are seeing, there isn't much we can suggest. My best guess is that perhaps it fails if you try to decompose a 100000 cell case with 200 cores, which results in 500 cells per subdomain, which can easily result in the default GAMG settings for minimum cells in the sub-matrix being larger then the number of faces on a patch.
__________________
wyldckat is offline   Reply With Quote

Old   July 17, 2019, 02:18
Default
  #3
Senior Member
 
Syavash Asgari
Join Date: Apr 2010
Posts: 473
Rep Power: 18
syavash is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Quick answer: GAMG should not depend on CGAL nor Boost. And if it did, you would likely never been able to run the solver, since it would not have compiled either.

Without being able to see the error message you are seeing, there isn't much we can suggest. My best guess is that perhaps it fails if you try to decompose a 100000 cell case with 200 cores, which results in 500 cells per subdomain, which can easily result in the default GAMG settings for minimum cells in the sub-matrix being larger then the number of faces on a patch.
Thanks for your reply Bruno,

I agree that I did not provided enough info. Here is the error message I get from executing ./Allrun in tutorial "airfoil2D" from simpleFoam:

Code:
Reading field p

Reading field U

Reading/calculating face flux field phi

Selecting incompressible transport model Newtonian
Selecting turbulence model type RAS
Selecting RAS turbulence model SpalartAllmaras
Selecting patchDistMethod meshWave
RAS
{
    RASModel        SpalartAllmaras;
    turbulence      on;
    printCoeffs     on;
    sigmaNut        0.66666;
    kappa           0.41;
    Cb1             0.1355;
    Cb2             0.622;
    Cw2             0.3;
    Cw3             2;
    Cv1             7.1;
    Cs              0.3;
}

No MRF models present

No finite volume options present

Starting time loop

Time = 1

smoothSolver:  Solving for Ux, Initial residual = 1, Final residual = 0.0611362, No Iterations 2
smoothSolver:  Solving for Uy, Initial residual = 1, Final residual = 0.0585177, No Iterations 2
#0  Foam::error::printStack(Foam::Ostream&) at ??:?
#1  Foam::sigFpe::sigHandler(int) at ??:?
#2  ? in /lib64/libpthread.so.0
#3  Foam::GAMGSolver::scale(Foam::Field<double>&, Foam::Field<double>&, Foam::lduMatrix const&, Foam::FieldField<Foam::Field, double> const&, Foam::UPtrList<Foam::lduInterfaceField const> const&, Foam::Field<double> const&, unsigned char) const at ??:?
#4  Foam::GAMGSolver::Vcycle(Foam::PtrList<Foam::lduMatrix::smoother> const&, Foam::Field<double>&, Foam::Field<double> const&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::PtrList<Foam::Field<double> >&, Foam::PtrList<Foam::Field<double> >&, unsigned char) const at ??:?
#5  Foam::GAMGSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const at ??:?
#6  Foam::fvMatrix<double>::solveSegregated(Foam::dictionary const&) at ??:?
#7  Foam::fvMatrix<double>::solveSegregatedOrCoupled(Foam::dictionary const&) at ??:?
#8  ? at ??:?
#9  __libc_start_main in /lib64/libc.so.6
#10  ? at ??:?
Please note that the execution was in serial and I did not change anything.

Regards,
Syavash
syavash is offline   Reply With Quote

Old   July 17, 2019, 18:57
Default
  #4
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
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 remember seeing this problem in the past and I have a very vague memory that the issue was due to a compiler version problem...

Questions:
  1. Which Linux Distribution are you using?
  2. Which compiler and compiler version are you using?
  3. Did you do any changes in the 'wmake/rules' folder?
  4. Do you have any special shell environment variables that have compiler options loaded into them?
The last two questions is because I vaguely remember that the issue could have been due to an optimization flag that didn't work properly with OpenFOAM.
__________________
wyldckat is offline   Reply With Quote

Old   July 18, 2019, 02:10
Default
  #5
Senior Member
 
Syavash Asgari
Join Date: Apr 2010
Posts: 473
Rep Power: 18
syavash is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Quick answer: I remember seeing this problem in the past and I have a very vague memory that the issue was due to a compiler version problem...

Questions:
  1. Which Linux Distribution are you using?
  2. Which compiler and compiler version are you using?
  3. Did you do any changes in the 'wmake/rules' folder?
  4. Do you have any special shell environment variables that have compiler options loaded into them?
The last two questions is because I vaguely remember that the issue could have been due to an optimization flag that didn't work properly with OpenFOAM.

Thanks Bruno, I guess we are in the right track.

In response to your questions:

1-The distribution is CentOS 7.

2-I have used Intel compiler/2018a-eb to compile the foam.

3-Yes! I have added the following flags to the "c++" file under 'wmake/rules/linux64Icc':

Code:
-Nmpi -Nmkl -xCORE-AVX512
The first flag we had discussed before, it was essential to run foam in parallel, see:

Non-root installation of OpenFOAM 2.4.x, parallel issue

The other flags I added were recommended by HPC webpage. I had included them also in foam-2.3.1 installation but it was fine there!

4-Well, I have provided the alias I use to call foam 1906 below. There are some other modules but I cannot say that they use compiler options (honestly not sure!).

Code:
alias OF19='export FOAM_INST_DIR=/.../.../.../.../Ehsan ; module load buildenv-intel/2018a-eb; module load ParaView/5.4.1-nsc1-gcc-2018a-eb; module load HDF5/1.8.19-nsc1-intel-2018a-eb; export MPI_ROOT=$I_MPI_ROOT; source /.../.../.../.../Ehsan/OpenFOAM-v1906/etc/bashrc WM_NCOMPPROCS=4 WM_COMPILER=Icc WM_MPLIB=INTELMPI'
I hope it can help to resolve my issue!

Regards,
Syavash
syavash is offline   Reply With Quote

Old   July 18, 2019, 10:12
Default
  #6
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
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 answers:
  1. I don't remember if "mkl" can introduce problems or not.
  2. AVX is useless with OpenFOAM and could be causing problems.
  3. If after removing those two options and rebuilding OpenFOAM, it still gives this problem, then open a report here: https://develop.openfoam.com/Develop...AM-plus/issues
syavash likes this.
wyldckat is offline   Reply With Quote

Old   July 18, 2019, 10:51
Default
  #7
Senior Member
 
Syavash Asgari
Join Date: Apr 2010
Posts: 473
Rep Power: 18
syavash is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Quick answers:
  1. I don't remember if "mkl" can introduce problems or not.
  2. AVX is useless with OpenFOAM and could be causing problems.
  3. If after removing those two options and rebuilding OpenFOAM, it still gives this problem, then open a report here: https://develop.openfoam.com/Develop...AM-plus/issues
Thanks Bruno,

I will recompile foam without those two flags and then report back!

Regards,
Syavash
syavash is offline   Reply With Quote

Old   July 18, 2019, 14:15
Default
  #8
Senior Member
 
Syavash Asgari
Join Date: Apr 2010
Posts: 473
Rep Power: 18
syavash is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Quick answers:
  1. I don't remember if "mkl" can introduce problems or not.
  2. AVX is useless with OpenFOAM and could be causing problems.
  3. If after removing those two options and rebuilding OpenFOAM, it still gives this problem, then open a report here: https://develop.openfoam.com/Develop...AM-plus/issues
Bruno,

Thanks to your help, the issue resolved! I removed those flags and compiled foam from scratch. Now, GAMG works.

Regards,
Syavash
wyldckat likes this.
syavash is offline   Reply With Quote

Old   July 18, 2019, 18:25
Default
  #9
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
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
🥳 I'm glad that solved out the issue! (Nice, emoji characters seem to work!)
wyldckat is offline   Reply With Quote

Reply


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
parallel run is slower than serial run (pimpleFoam) !!! mechy OpenFOAM 18 August 17, 2016 17:19
Wrong fluctuation of pressure in transient simulation caitao OpenFOAM Running, Solving & CFD 2 March 5, 2015 21:33
Help for the small implementation in turbulence model shipman OpenFOAM Programming & Development 25 March 19, 2014 10:08
pimpleFoam: turbulence->correct(); is not executed when using residualControl hfs OpenFOAM Running, Solving & CFD 3 October 29, 2013 08:35
AMI interDyMFoam for mixer nu problem danny123 OpenFOAM Programming & Development 8 September 6, 2013 02:34


All times are GMT -4. The time now is 18:32.