Crash with dynamicMotionSolverFvMeshAMI
Hi all
I wanted to test the dynamicMotionSolverFvMeshAMI but my simulation of a centrifugal fan crashes immediately because of an unallocated autoPtr. The case has 9.3 million cells and consists of an impeller and a volute. The simulation is a restart from a dynamicMotionSolverFvMesh simulation where two revolutions were calculated without problems. Unfortunately I can't reproduce it with a smaller case. I hope the log file helps. Otherwise let me know if you need more information.
Kind regards David
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Link issues together to show that they're related. Learn more.
Activity
- Author
A further question: Is the warning message "Mesh already has volumes set!" critical?
- Author
It can be reproduced with the mixerVesselAMI2D-topologyChange tutorial if the decomposition is executed with the singleProcessorFaceSets for the AMI interface.
Kind regards David
- Kutalmış Berçin assigned to @kuti
assigned to @kuti
- Maintainer
Thanks for your report, could you please attach the files of the changed settings of the crashing tutorial?
- Author
Just uncomment the following line in decomposeParDict:
singleProcessorFaceSets ((AMI -1));
- Andrew Heather mentioned in commit db6c9c7b
mentioned in commit db6c9c7b
- Owner
- Author
Hi Andy
Yes, that solves the issue. Thank you very much!
I think dynamicMotionSolverFvMeshAMI.C might need also the following change at line 145:
for (polyPatch& pp : pbm) { if (!isA<processorPolyPatch>(pp)) { ...
Otherwise the mixer tutorial crashes if you run it with the corresponding debug flag.
Kind regards David
- Andrew Heather mentioned in commit 36266a7e
mentioned in commit 36266a7e
- Owner
Thanks, David - good catch - corrected in commit 36266a7e
Closing the issue; please re-open if needed.
- Andrew Heather closed
closed
- Author
I have to reopen the issue. There seems to be a memory leak. For the simulation on 2x3 cores (each of the two nodes equipped with 16 GB RAM), I monitored the memory consumption on the master with the following system call. The output is attached. The memory consumption goes up until the simulation crashes. This can be reproduced with pimpleFoam and also with moveDynamicMesh.
pimpleFoam_004_mon.log moveDynamicMesh_002.log moveDynamicMesh_002_mon.log
systemCall1 { type systemCall; libs (utilityFunctionObjects); master true; executeCalls ( "ps aux | head -1 >> pimpleFoam_004_mon.log; ps aux | sort -rnk 4 | head -3 >> pimpleFoam_004_mon.log" ); }
Remark: Not sure if it's really a problem but moveDynamicMesh reports open cells and severe non-orthogonality. That does not happen with dynamicMotionSolverFvMesh.
Kind regards David
Edited by David Hora - David Hora reopened
reopened
- Owner
Unfortunately the moveDynamicMesh output is misleading for this set-up - you should be able to safely ignore the warnings.
I have not seen the memory error before - can you share a test case?
- Author
The case is quite big. I will try to create a smaller test case and come back to you.
- Author
Sorry for the slow response. I'm still trying to create a smaller test case.
After an extension of the memory, other errors now occur in the previous case. You can find the ouput below (same case, same settings). I need more time to investigate this issue and will come back to you.
Courant Number mean: 0.1933196492 max: 56.9508296 Time = 4.5351474e-06 PIMPLE: iteration 1 1 --- patch:BLADE area:0.001161630211 1 --- patch:Passage_HUB area:0.0007918416122 1 --- patch:INBlock_HUB area:0.0004018639762 1 --- patch:INT-RS-SIDE-1 area:0.0002623836564 1 --- patch:INBlock_INFLOW area:0.0002214436175 1 --- patch:Passage_SHROUD area:0.0007220865847 1 --- patch:INBlock_SHROUD area:0.0008463001367 1 --- patch:INT-RS-SIDE-2 area:0.0002623836564 1 --- patch:OUTLET area:0.0001516126793 1 --- patch:WALL area:0.006387337608 1 --- patch:WALLCYL area:0.0009401648777 1 --- patch:WALLROT area:0.0001093215123 1 --- patch:WALLSLIP area:0.0001093215123 pre-topology change: patch BLADE size:183491 mag(faceAreas):0.001161630211 pre-topology change: patch Passage_HUB size:84168 mag(faceAreas):0.0007918416122 pre-topology change: patch INBlock_HUB size:12992 mag(faceAreas):0.0004018639762 pre-topology change: patch INT-RS-SIDE-1 size:81008 mag(faceAreas):0.0002623836564 pre-topology change: patch INBlock_INFLOW size:32704 mag(faceAreas):0.0002214436175 pre-topology change: patch Passage_SHROUD size:118979 mag(faceAreas):0.0007220865847 pre-topology change: patch INBlock_SHROUD size:12992 mag(faceAreas):0.0008463001367 pre-topology change: patch INT-RS-SIDE-2 size:81008 mag(faceAreas):0.0002623836564 pre-topology change: patch OUTLET size:5516 mag(faceAreas):0.0001516126793 pre-topology change: patch WALL size:40468 mag(faceAreas):0.006387337608 pre-topology change: patch WALLCYL size:12672 mag(faceAreas):0.0009401648777 pre-topology change: patch WALLROT size:3168 mag(faceAreas):0.0001093215123 pre-topology change: patch WALLSLIP size:3168 mag(faceAreas):0.0001093215123 AMI: Creating addressing and weights between 47012 source faces and 4752 target faces From Foam::label Foam::AMIInterpolation::calcDistribution(const primitivePatch&, const primitivePatch&) const in file AMIInterpolation/AMIInterpolation/AMIInterpolation.C at line 115 AMI local to processor0 AMIInterpolation: singlePatchProc:0 AMI: Patch source sum(weights) min:0.9964679038 max:1.003146064 average:1.00000288 AMI: Patch target sum(weights) min:0.9999782683 max:1.000082264 average:1.000046506 AMI: Patch INT-RS-SIDE-1 additional faces: 34007 AMI: Patch INT-RS-SIDE-2 additional faces: 76267 free(): invalid pointer [chmaglin01:08210] *** Process received signal *** [chmaglin01:08210] Signal: Aborted (6) [chmaglin01:08210] Signal code: (-6) [chmaglin01:08210] [ 0] /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0)[0x7ff79df263c0] [chmaglin01:08210] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7ff79dd6518b] [chmaglin01:08210] [ 2] /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7ff79dd44859] [chmaglin01:08210] [ 3] /lib/x86_64-linux-gnu/libc.so.6(+0x903ee)[0x7ff79ddaf3ee] [chmaglin01:08210] [ 4] /lib/x86_64-linux-gnu/libc.so.6(+0x9847c)[0x7ff79ddb747c] [chmaglin01:08210] [ 5] /lib/x86_64-linux-gnu/libc.so.6(+0x99cac)[0x7ff79ddb8cac] [chmaglin01:08210] [ 6] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam8polyMesh15resetPrimitivesEONS_7autoPtrINS_5FieldINS_6VectorIdEEEEEEONS1_INS_4ListINS_4faceEEEEEONS1_INS8_IiEEEESF_RKNS_5UListIiEESJ_b+0x166)[0x7ff79ea5f126] [chmaglin01:08210] [ 7] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libmeshTools.so(_ZN4Foam14polyTopoChange10changeMeshERNS_8polyMeshEbbbb+0x679)[0x7ff7a07e0eb9] [chmaglin01:08210] [ 8] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libdynamicFvMesh.so(_ZN4Foam28dynamicMotionSolverFvMeshAMI6updateEv+0x5d8)[0x7ff79f1f4698] [chmaglin01:08210] [ 9] pimpleFoam(+0x2de02)[0x5560d846be02] [chmaglin01:08210] [10] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0x7ff79dd460b3] [chmaglin01:08210] [11] pimpleFoam(+0x3154e)[0x5560d846f54e] [chmaglin01:08210] *** End of error message *** -------------------------------------------------------------------------- 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 2 with PID 0 on node chmaglin01 exited on signal 6 (Aborted). --------------------------------------------------------------------------
Courant Number mean: 0.1932223403 max: 56.8693064 Time = 1.36054422e-05 PIMPLE: iteration 1 1 --- patch:BLADE area:0.001161630211 1 --- patch:Passage_HUB area:0.0007918416122 1 --- patch:INBlock_HUB area:0.0004018639762 1 --- patch:INT-RS-SIDE-1 area:0.0002623836564 1 --- patch:INBlock_INFLOW area:0.0002214436175 1 --- patch:Passage_SHROUD area:0.0007220865847 1 --- patch:INBlock_SHROUD area:0.0008463001367 1 --- patch:INT-RS-SIDE-2 area:0.0002623836564 1 --- patch:OUTLET area:0.0001516126793 1 --- patch:WALL area:0.006387337608 1 --- patch:WALLCYL area:0.0009401648777 1 --- patch:WALLROT area:0.0001093215123 1 --- patch:WALLSLIP area:0.0001093215123 pre-topology change: patch BLADE size:183491 mag(faceAreas):0.001161630211 pre-topology change: patch Passage_HUB size:84168 mag(faceAreas):0.0007918416122 pre-topology change: patch INBlock_HUB size:12992 mag(faceAreas):0.0004018639762 pre-topology change: patch INT-RS-SIDE-1 size:81011 mag(faceAreas):0.0002623836564 pre-topology change: patch INBlock_INFLOW size:32704 mag(faceAreas):0.0002214436175 pre-topology change: patch Passage_SHROUD size:118979 mag(faceAreas):0.0007220865847 pre-topology change: patch INBlock_SHROUD size:12992 mag(faceAreas):0.0008463001367 pre-topology change: patch INT-RS-SIDE-2 size:81011 mag(faceAreas):0.0002623836564 pre-topology change: patch OUTLET size:5516 mag(faceAreas):0.0001516126793 pre-topology change: patch WALL size:40468 mag(faceAreas):0.006387337608 pre-topology change: patch WALLCYL size:12672 mag(faceAreas):0.0009401648777 pre-topology change: patch WALLROT size:3168 mag(faceAreas):0.0001093215123 pre-topology change: patch WALLSLIP size:3168 mag(faceAreas):0.0001093215123 AMI: Creating addressing and weights between 47012 source faces and 4752 target faces From Foam::label Foam::AMIInterpolation::calcDistribution(const primitivePatch&, const primitivePatch&) const in file AMIInterpolation/AMIInterpolation/AMIInterpolation.C at line 115 AMI local to processor0 AMIInterpolation: singlePatchProc:0 AMI: Patch source sum(weights) min:0.9966162167 max:1.003024364 average:1.000002998 AMI: Patch target sum(weights) min:0.999933856 max:1.000081133 average:1.000046429 AMI: Patch INT-RS-SIDE-1 additional faces: 34002 AMI: Patch INT-RS-SIDE-2 additional faces: 76262 From void Foam::AMIInterpolation::reset(Foam::autoPtr<Foam::mapDistribute>&&, Foam::autoPtr<Foam::mapDistribute>&&, Foam::labelListList&&, Foam::scalarListList&&, Foam::labelListList&&, Foam::scalarListList&&) in file AMIInterpolation/AMIInterpolation/AMIInterpolation.C at line 811 malloc_consolidate(): invalid chunk size [chmaglin01:09284] *** Process received signal *** [chmaglin01:09284] Signal: Aborted (6) [chmaglin01:09284] Signal code: (-6) [chmaglin01:09284] [ 0] /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0)[0x7f6d9ccc43c0] [chmaglin01:09284] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7f6d9cb0318b] [chmaglin01:09284] [ 2] /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7f6d9cae2859] [chmaglin01:09284] [ 3] /lib/x86_64-linux-gnu/libc.so.6(+0x903ee)[0x7f6d9cb4d3ee] [chmaglin01:09284] [ 4] /lib/x86_64-linux-gnu/libc.so.6(+0x9847c)[0x7f6d9cb5547c] [chmaglin01:09284] [ 5] /lib/x86_64-linux-gnu/libc.so.6(+0x98c58)[0x7f6d9cb55c58] [chmaglin01:09284] [ 6] /lib/x86_64-linux-gnu/libc.so.6(+0x9a160)[0x7f6d9cb57160] [chmaglin01:09284] [ 7] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libmeshTools.so(_ZN4Foam14PrimitivePatchINS_4ListINS_4faceEEERKNS_5FieldINS_6VectorIdEEEEED1Ev+0x14c)[0x7f6d9f27dfec] [chmaglin01:09284] [ 8] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam8faceZone15clearAddressingEv+0x38)[0x7f6d9d7e7fe8] [chmaglin01:09284] [ 9] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libmeshTools.so(_ZN4Foam8ZoneMeshINS_8faceZoneENS_8polyMeshEE15clearAddressingEv+0xd5)[0x7f6d9f2daa45] [chmaglin01:09284] [10] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam8polyMesh10updateMeshERKNS_11mapPolyMeshE+0x5d)[0x7f6d9d81716d] [chmaglin01:09284] [11] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libfiniteVolume.so(_ZN4Foam6fvMesh10updateMeshERKNS_11mapPolyMeshE+0x31)[0x7f6da0371db1] [chmaglin01:09284] [12] /cfd/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/lib/libdynamicFvMesh.so(_ZN4Foam28dynamicMotionSolverFvMeshAMI6updateEv+0x5fa)[0x7f6d9df926ba] [chmaglin01:09284] [13] pimpleFoam(+0x2de02)[0x564bfe9abe02] [chmaglin01:09284] [14] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0x7f6d9cae40b3] [chmaglin01:09284] [15] pimpleFoam(+0x3154e)[0x564bfe9af54e] [chmaglin01:09284] *** End of error message *** -------------------------------------------------------------------------- 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 2 with PID 0 on node chmaglin01 exited on signal 6 (Aborted). --------------------------------------------------------------------------
- Kutalmış Berçin added bug community labels
- Author
The arbitrary crashes were caused by a faulty memory module. Sorry for that.
I wasn't able to reproduce the increasing memory consumption with a smaller case. First tests with valgrind on the initial case didn't show any memory leaks. I will do further testing and let you know as soon as possible.
- Maintainer
thanks @dhora
I've been using Openfoam-v2112 with dynamicMotionSolverFvMeshAMI. There is a problem to restart the simulation. I'm using mixerVesselAMI2D-topologyChange tutorial to demonstrate the issue: [1] --> FOAM FATAL ERROR: (openfoam-2112) [1] Supplied field size is not equal to target patch size source patch = 0 target patch = 1440 supplied field = 2880 If I change the AMI boundary from "createAMIFaces 1" to "createAMIFaces 0" then the simulation can be restarted but the number of faces is now dobled to 2880 and the AMI Weights are all near 2.0. What is the solution to restart the simulation with the original number of AMI faces?
Thanks.
Alex Briones
Edited by Alejandro Briones- Maintainer
There is a problem using dynamicMotionSolverFvMeshAMI in the
incompressible/pimpleFoam/RAS/propeller
tutorial.- non-parallel
- different weights are reported
- attached both the original setup (with dynamicMotionSolverFvMesh) and with dynamicMotionSolverFvMeshAMI.
Original (running but truncated) log.pimpleFoam.explicit
Crashing: log.pimpleFoam
Reported by @matej
- Maintainer
Runs a lot better with
- using up-to-date points to calculate weights @andy
- PBiCGstab
- non-ortho corrector
- Andrew Heather mentioned in commit 1fc9313c
mentioned in commit 1fc9313c
- Owner
Resolved by 1fc9313c
- Andrew Heather closed
closed