CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Options to use mapFields in parallel (https://www.cfd-online.com/Forums/openfoam-solving/241230-options-use-mapfields-parallel.html)

WhiteW February 15, 2022 03:49

Options to use mapFields in parallel
 
Hello,
I have some problems to use mapFields with OpenFOAM.
I run an analysis with rhoSimpleFoam in parallel and I have both the decomposed and reconstructed simulation at the iteration 7000 (sim01).

Now I slightly changed the mesh, I added the boundary layers in some patches but the patches are the same (so mesh is consistent).
I'm trying to map the results of sim01 on the new mesh of sim02.
But there is a different error on each option of mapFields I try. I can map form and to both the decomposed or reconstructed cases.
MapFields seems to work only on the cavity tutorial case..
Here the errors Im getting with the different options.

mpirun -np 56 mapFieldsPar ../sim01/ -consistent -sourceTime 7000 -parallelTarget -parallel >logs/mapFields
Code:

#0  Foam::error::printStack(Foam::Ostream&)[42] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[45] #0  Foam::error::printStack(Foam::Ostream&)[24] #1  Foam::sigFpe::sigHandler(int)[1] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[42] #1  Foam::sigFpe::sigHandler(int) at ??:?
[24] #2  ?[10] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
 at ??:?
[45] #1  Foam::sigFpe::sigHandler(int)[1] #1  Foam::sigFpe::sigHandler(int)[48] #0  Foam::error::printStack(Foam::Ostream&)[12] #0  Foam::error::printStack(Foam::Ostream&) in /lib/x86_64-linux-gnu/libc.so.6
[24] #3  Foam::heRhoThermo<Foam::rhoThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleEnthalpy> > > >::calculate(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, bool)[41] #0  Foam::error::printStack(Foam::Ostream&)[32] #0  Foam::error::printStack(Foam::Ostream&)[46] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
 at ??:?
[42] #2  ? at ??:?
[10] #1  Foam::sigFpe::sigHandler(int)[24] #4  Foam::fluidThermo::addfvMeshConstructorToTable<Foam::heRhoThermo<Foam::rhoThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleEnthalpy> > > > >::New(Foam::fvMesh const&, Foam::word const&)[29] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[45] #2  ? at ??:?
 in /lib/x86_64-linux-gnu/libc.so.6
 at ??:?
[1] #2  ? at ??:?



mpirun -np 56 mapFields ../sim01/ -consistent -sourceTime 7000 -paralleSource -parallelTarget -parallel >logs/mapFields
or
mpirun -np 56 mapFields ../sim01/ -consistent -sourceTime 7000 >logs/mapFields -parallel

Code:

Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
^Cmpirun: abort is already in progress...hit ctrl-c again to forcibly terminate

mpirun: Forwarding signal 18 to job
[kigen:54076] *** Process received signal ***
[kigen:54076] Signal: Segmentation fault (11)
[kigen:54076] Signal code: Address not mapped (1)
[kigen:54076] Failing at address: 0x30
[kigen:54076] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x46520)[0x7f7a3e64d520]
[kigen:54076] [ 1] /lib/x86_64-linux-gnu/libpmix.so.2(PMIx_Finalize+0x53d)[0x7f7a3bf1e9ed]
[kigen:54076] [ 2] /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_pmix_ext3x.so(ext3x_client_finalize+0x3aa)[0x7f7a3c097caa]
[kigen:54076] [ 3] /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_hnp.so(+0x4bb6)[0x7f7a3e416bb6]
[kigen:54076] [ 4] /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_hnp.so(+0x4c55)[0x7f7a3e416c55]
[kigen:54076] [ 5] /lib/x86_64-linux-gnu/libevent_core-2.1.so.7(+0x1cebf)[0x7f7a3e84bebf]
[kigen:54076] [ 6] /lib/x86_64-linux-gnu/libevent_core-2.1.so.7(event_base_loop+0x52f)[0x7f7a3e84c75f]
[kigen:54076] [ 7] mpirun(+0x128c)[0x5575e827e28c]
[kigen:54076] [ 8] /lib/x86_64-linux-gnu/libc.so.6(+0x2dfd0)[0x7f7a3e634fd0]
[kigen:54076] [ 9] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x7d)[0x7f7a3e63507d]
[kigen:54076] [10] mpirun(+0x1425)[0x5575e827e425]
[kigen:54076] *** End of error message ***
Segmentation fault (core dumped)



I succeeded in map the fields using mapFieldsPar in serial as:

mapFieldsPar ../sim01/ -consistent -sourceTime 7000 >logs/mapFields

but then I get an error when I try to dun the analysis (the setting is the same as sim01)
mpirun -np 56 rhoSimpleFoam -parallel

Code:

/*---------------------------------------------------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2112                                  |
|  \\  /    A nd          | Website:  www.openfoam.com                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Build  : _14aeaf8dab-20211220 OPENFOAM=2112 version=v2112
Arch  : "LSB;label=32;scalar=64"
Exec  : rhoSimpleFoam -parallel
Date  : Feb 15 2022
Time  : 06:59:10
Host  : kigen
PID    : 52646
I/O    : uncollated
Case  : /home/nablawave/REPO/tccl_repo/sim_09
nProcs : 56
Hosts  :
(
    (kigen 56)
)
Pstream initialized with:
    floatTransfer      : 0
    nProcsSimpleSum    : 0
    commsType          : nonBlocking
    polling iterations : 0
trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 5, maxFileModificationPolls 20)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create mesh for time = 0


SIMPLE: convergence criteria
    field p_rgh        tolerance 0.001
    field p        tolerance 0.001
    field U        tolerance 0.0001
    field h        tolerance 0.0001
    field "(k|epsilon|omega)"        tolerance 0.0001

Reading thermophysical properties

Selecting thermodynamics package
{
    type            heRhoThermo;
    mixture        pureMixture;
    transport      const;
    thermo          hConst;
    equationOfState perfectGas;
    specie          specie;
    energy          sensibleEnthalpy;
}

[10] #0  Foam::error::printStack(Foam::Ostream&)[42] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[47] #0  Foam::error::printStack(Foam::Ostream&)[10] #1  Foam::sigFpe::sigHandler(int)[5] #0  Foam::error::printStack(Foam::Ostream&)[4] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[42] #1  Foam::sigFpe::sigHandler(int)[14] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[10] #2  ?[27] #0  Foam::error::printStack(Foam::Ostream&)[19] #0  Foam::error::printStack(Foam::Ostream&) in /lib/x86_64-linux-gnu/libc.so.6
[10] #3  Foam::heRhoThermo<Foam::rhoThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleEnthalpy> > > >::calculate(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, bool)[26] #0  Foam::error::printStack(Foam::Ostream&)[48] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[5] #1  Foam::sigFpe::sigHandler(int)[11] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[20] #0  Foam::error::printStack(Foam::Ostream&)[41] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[42] #2  ?[47] #1  Foam::sigFpe::sigHandler(int) at ??:?
[4] #1  Foam::sigFpe::sigHandler(int) at ??:?
[10] #4  Foam::fluidThermo::addfvMeshConstructorToTable<Foam::heRhoThermo<Foam::rhoThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleEnthalpy> > > > >::New(Foam::fvMesh const&, Foam::word const&) in /lib/x86_64-linux-gnu/libc.so.6
[42] #3  Foam::heRhoThermo<Foam::rhoThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleEnthalpy> > > >::calculate(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, bool)[31] #0  Foam::error::printStack(Foam::Ostream&)[40] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[14] #1  Foam::sigFpe::sigHandler(int) at ??:?
[26] #1  Foam::sigFpe::sigHandler(int) at ??:?
[27] #1  Foam::sigFpe::sigHandler(int) at ??:?



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