calim_cfd |
March 5, 2012 06:12 |
crash:parallel run and writetime?
Hello every1!
i'm trying to run a case here in parallel. I have AMI cyclic patches. I say this cuz with non cyclic patchs there's no crash!
when i run the case in 1 core no crashes occur, but when i run it in parallel, as amazing as it seems, the code crashes exactly at the time when the code is supposed to run data.
crash
Code:
Time = 100
DILUPBiCG: Solving for Ux, Initial residual = 0.0088670851, Final residual = 8.2588747e-06, No Iterations 2
DILUPBiCG: Solving for Uy, Initial residual = 0.006774242, Final residual = 4.4254254e-06, No Iterations 2
DILUPBiCG: Solving for Uz, Initial residual = 0.0065591327, Final residual = 3.0181564e-06, No Iterations 2
DILUPBiCG: Solving for h, Initial residual = 0.017110962, Final residual = 1.5308887e-05, No Iterations 2
DICPCG: Solving for p_rgh, Initial residual = 0.029165174, Final residual = 2.8152129e-05, No Iterations 77
time step continuity errors : sum local = 0.00040282475, global = -3.6998014e-05, cumulative = 0.016089871
rho max/min : 0.99440505 0.99214534
DILUPBiCG: Solving for epsilon, Initial residual = 0.00090743349, Final residual = 9.3285783e-06, No Iterations 2
bounding epsilon, min: 1.015437e-16 max: 22767.272 average: 594.21879
DILUPBiCG: Solving for k, Initial residual = 0.0047676626, Final residual = 2.1129995e-06, No Iterations 4
[3] #0 Foam::error::printStack(Foam::Ostream&)[1] #0 Foam::error::printStack(Foam::Ostream&)[0] #0 Foam::error::printStack(Foam::Ostream&)[2] #0 Foam::error::printStack(Foam::Ostream&) in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #1 Foam::sigSegv::sigHandler(int) in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/li in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so in "/"
opt/OpenFOAM-2.1.0[3] #1 /platforms/linuxGFoam::sigSegv::sigHandler(int)ccDPOpt/lib/libOpenFOAM.so"
[2] #1 Foam::sigSegv::sigHandler(int)bOpenFOAM.so"
[0] #1 Foam::sigSegv::sigHandler(int) in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #2 Uninterpreted:
[1] #3 Foam::externalWallHeatFluxTemperatureFvPatchScalarField::write(Foam::Ostream&) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[3] #2 Uninterpreted:
[3] #3 in Foam::externalWallHeatFluxTemperatureFvPatchScalarField::write(Foam::Ostream&) const"/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[2] #2 Uninterpreted:
[2] #3 Foam::externalWallHeatFluxTemperatureFvPatchScalarField::write(Foam::Ostream&) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[0] #2 Uninterpreted:
[0] #3 Foam::externalWallHeatFluxTemperatureFvPatchScalarField::write(Foam::Ostream&) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libcompressibleTurbulenceModel.so"
[1] #4 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libcompressibleTurbulenceModel.so"
[3] #4 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libcompressibleTurbulenceModel.so"
[2] #4 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libcompressibleTurbulenceModel.so"
[0] #4 Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::writeEntry(Foam::word const&, Foam::Ostream&) constFoam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::writeEntry(Foam::word const&, Foam::Ostream&) constFoam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::writeEntry(Foam::word const&, Foam::Ostream&) constFoam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::writeEntry(Foam::word const&, Foam::Ostream&) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[3] #5 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[1] #5 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[0] #5 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[2] #5 Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::writeData(Foam::Ostream&) constFoam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::writeData(Foam::Ostream&) constFoam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::writeData(Foam::Ostream&) constFoam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::writeData(Foam::Ostream&) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[3] #6 Foam::regIOobject::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[2] #6 Foam::regIOobject::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[1] #6 Foam::regIOobject::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[0] #6 Foam::regIOobject::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #7 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[3] #7 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[2] #7 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[0] #7 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[2] #8 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[0] #8 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[3] #8 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #8 Foam::objectRegistry::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[0] #9 Foam::Time::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[2] #9 Foam::Time::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[3] #9 Foam::Time::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[0] #10 Foam::regIOobject::write() const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[2] #10 Foam::regIOobject::write() const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #9 Foam::Time::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[3] #10 Foam::regIOobject::write() const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[2] #11 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[0] #11 in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #10 Foam::regIOobject::write() const in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[3] #11
in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so"
[1] #11 [2] in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[2] #12 __libc_start_main[0] in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[0] #12 __libc_start_main[3] in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[3] #12 __libc_start_main
in "/lib/libc.so.6"
[2] #13 in "/lib/libc.so.6"
[0] #13 [1] in "/opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/buoyantSimpleFoam"
[1] #12 __libc_start_main in "/lib/libc.so.6"
[3] #13
in "/lib/libc.so.6"
[1] #13
[2] at /usr/src/packages/BUILD/glibc-2.11.3/csu/../sysdeps/i386/elf/start.S:122
[BR-SBC-WS-296L:29767] *** Process received signal ***
[BR-SBC-WS-296L:29767] Signal: Segmentation fault (11)
[BR-SBC-WS-296L:29767] Signal code: (-6)
[BR-SBC-WS-296L:29767] Failing at address: 0x7447
[0] at /usr/src/packages/BUILD/glibc-2.11.3/csu/../sysdeps/i386/elf/start.S:122
[BR-SBC-WS-296L:29767] [ 0] [0xffffe40c]
[BR-SBC-WS-296L:29767] [ 1] [0xffffe424]
[BR-SBC-WS-296L:29767] [ 2] /lib/libc.so.6(gsignal+0x4f) [0xb59df8df]
[BR-SBC-WS-296L:29767] [ 3] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZN4Foam7sigSegv10sigHandlerEi+0x61) [0xb60c0d61]
[BR-SBC-WS-296L:29767] [ 4] [0xffffe400]
[BR-SBC-WS-296L:29767] [ 5] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libcompressibleTurbulenceModel.so(_ZNK4Foam49externalWallHeatFluxTemperatureFvPatchScalarField5writeERNS_7OstreamE+0x38) [0xb735c908]
[BR-SBC-WS-296L:29767] [ 6] buoyantSimpleFoam(_ZNK4Foam14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEE22GeometricBoundaryField10writeEntryERKNS_4wordERNS_7OstreamE+0x133) [0x80b0bd3]
[BR-SBC-WS-296L:29767] [ 7] buoyantSimpleFoam(_ZNK4Foam14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEE9writeDataERNS_7OstreamE+0x12f) [0x80b448f]
[BR-SBC-WS-296L:29767] [ 8] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam11regIOobject11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x3ff) [0xb5e5e86f]
[BR-SBC-WS-296L:29767] [ 9] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam14objectRegistry11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x94) [0xb5e61e34]
[BR-SBC-WS-296L:29767] [10] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam14objectRegistry11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x94) [0xb5e61e34]
[BR-SBC-WS-296L:29767] [11] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam4Time11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x391) [0xb5e85ea1]
[BR-SBC-WS-296L:29767] [12] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam11regIOobject5writeEv+0x6b) [0xb5e5eccb]
[BR-SBC-WS-296L:29767] [13] buoyantSimpleFoam() [0x806bb93]
[BR-SBC-WS-296L:29767] [14] /lib/libc.so.6(__libc_start_main+0xfe) [0xb59cac2e]
[BR-SBC-WS-296L:29767] [15] buoyantSimpleFoam() [0x8065291]
[BR-SBC-WS-296L:29767] *** End of error message ***
[BR-SBC-WS-296L:29765] *** Process received signal ***
[BR-SBC-WS-296L:29765] Signal: Segmentation fault (11)
[BR-SBC-WS-296L:29765] Signal code: (-6)
[BR-SBC-WS-296L:29765] Failing at address: 0x7445
[BR-SBC-WS-296L:29765] [ 0] [0xffffe40c]
[BR-SBC-WS-296L:29765] [ 1] [0xffffe424]
[BR-SBC-WS-296L:29765] [ 2] /lib/libc.so.6(gsignal+0x4f) [0xb5a9f8df]
[BR-SBC-WS-296L:29765] [ 3] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZN4Foam7sigSegv10sigHandlerEi+0x61) [0xb6180d61]
[BR-SBC-WS-296L:29765] [ 4] [0xffffe400]
[BR-SBC-WS-296L:29765] [ 5] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libcompressibleTurbulenceModel.so(_ZNK4Foam49externalWallHeatFluxTemperatureFvPatchScalarField5writeERNS_7OstreamE+0x38) [0xb741c908]
[BR-SBC-WS-296L:29765] [ 6] buoyantSimpleFoam(_ZNK4Foam14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEE22GeometricBoundaryField10writeEntryERKNS_4wordERNS_7OstreamE+0x133) [0x80b0bd3]
[BR-SBC-WS-296L:29765] [ 7] buoyantSimpleFoam(_ZNK4Foam14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEE9writeDataERNS_7OstreamE+0x12f) [0x80b448f]
[BR-SBC-WS-296L:29765] [ 8] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam11regIOobject11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x3ff) [0xb5f1e86f]
[BR-SBC-WS-296L:29765] [ 9] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam14objectRegistry11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x94) [0xb5f21e34]
[BR-SBC-WS-296L:29765] [10] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam14objectRegistry11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x94) [0xb5f21e34]
[BR-SBC-WS-296L:29765] [11] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam4Time11writeObjectENS_8IOstream12streamFormatENS1_13versionNumberENS1_15compressionTypeE+0x391) [0xb5f45ea1]
[BR-SBC-WS-296L:29765] [12] /opt/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZNK4Foam11regIOobject5writeEv+0x6b) [0xb5f1eccb]
[BR-SBC-WS-296L:29765] [13] buoyantSimpleFoam() [0x806bb93]
[BR-SBC-WS-296L:29765] [14] /lib/libc.so.6(__libc_start_main+0xfe) [0xb5a8ac2e]
[BR-SBC-WS-296L:29765] [15] buoyantSimpleFoam() [0x8065291]
[BR-SBC-WS-296L:29765] *** End of error message ***
--------------------------------------------------------------------------
mpirun noticed that process rank 2 with PID 29767 on node BR-SBC-WS-296L exited on signal 11 (Segmentation fault).
--------------------------------------------------------------------------
controldict
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.0.1 |
| \\ / A nd | Web: www.OpenFOAM.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application buoyantSimpleFoam;
startFrom latestTime;
startTime 0;
stopAt endTime;
endTime 2000;
deltaT 1;
writeControl adjustableRunTime;
writeInterval 100;
purgeWrite 0;
writeFormat binary;
writePrecision 8;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable yes;
//maxCo 0.3;
// Maximum diffusion number
//maxDi 10.0;
// ************************************************************************* //
i've tried scotch and hierarchical decompostion methods, different write times and yet i get crash... coincidence?? precedences? has any1 seen this b4?
any inputs are welcome!!
edit:
it turns out the problem was with the boundary condition externalWallHeatFluxTemperature. I had changed this BC cuz it was printing out all 3 parameters h, Ta and q, regardless of its input. I had to change it cuz another application, wallHeatFlux wouldn't run if i had all 3 parameters so i change the code from this
Code:
{
mixedFvPatchScalarField::write(os);
temperatureCoupledBase::write(os);
//if (q_ != 0)
//{
q_.writeEntry("q", os);
// this->writeEntry("value", os);
//}
//else
//{
h_.writeEntry("h", os);
Ta_.writeEntry("Ta", os);
this->writeEntry("value", os);
//}
}
to this
Code:
{
mixedFvPatchScalarField::write(os);
temperatureCoupledBase::write(os);
if (q_ != 0)
{
q_.writeEntry("q", os);
this->writeEntry("value", os);
}
else
{
h_.writeEntry("h", os);
Ta_.writeEntry("Ta", os);
this->writeEntry("value", os);
}
}
but i guess my if statement isnt that great.. the code has this form:
Code:
if (dict.found("q") && !dict.found("h") && !dict.found("Ta"))
{
oldMode_ = fixedHeatFlux;
q_ = scalarField("q", dict, p.size());
}
else if (dict.found("h") && dict.found("Ta") && !dict.found("q"))
{
oldMode_ = fixedHeatTransferCoeff;
h_ = scalarField("h", dict, p.size());
Ta_ = scalarField("Ta", dict, p.size());
}
but this if statement wont let the lib to be compiled!
any hints??
thank you so much
|