|
[Sponsors] |
Solver runs parallel on 3 cores but not on 4 or more cores |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
October 18, 2013, 06:55 |
Solver runs parallel on 3 cores but not on 4 or more cores
|
#1 |
Member
Hrushi
Join Date: Jan 2013
Posts: 58
Rep Power: 13 |
Hi all,
I am trying to solve a differential equation and I have my own solver with my own boundary conditions. Solver works fine when run serially. Now I want to run it in parallel. There problem is, I can divide my domain on only 3 processors. When I try to run it on 4 processors or more, I run into floating point exception. But when I remove my custom boundary condition and run with a boundary condition say zeroGradient, solver works fine on any number of processors. Clearly, problem is with boundary conditions. Question is: why using custom boundary condition is causing program to fail beyond 3 processors? P.S. I do not have any interpolation term or any term which will cause a floating point exception in boundary condition. Yet, I encounter floating point exception. Thanks, Hrushi |
|
October 21, 2013, 07:15 |
|
#2 |
Member
Hrushi
Join Date: Jan 2013
Posts: 58
Rep Power: 13 |
Anyone? Any help?
|
|
October 21, 2013, 08:15 |
|
#3 |
Member
Join Date: Nov 2012
Posts: 83
Rep Power: 14 |
it is possible that with 3 processor the boundary patch isn't divided and is completely in one "processor mesh".
With 4 processor your patch is splitted and you get the error. i've done some programming in parallel it is possible to share some code? |
|
October 21, 2013, 09:03 |
|
#4 |
Member
Hrushi
Join Date: Jan 2013
Posts: 58
Rep Power: 13 |
Hi Henning,
Thank you for the reply. I tried dividing my domain in four subdomains such that the boundary in question lies only in single computational domain. However, I am still getting the same error. No success yet. : ( I cannot share entire code but I have shared main statement of my boundary condition which I debugged to be the main culprit. Can you/ anyone figure out what is going wrong? As far as I know, there is no variable here that will cause the boundary condition to give floating point exception. this->gradient()= -(Foam::cos(thetar_))*(scalar(1.414213562)/(scalar(2)*epsilon_))*(this->patchInternalField()*this->patchInternalField()-scalar(1)); Thanks and regards, Hrushi |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
2D pseudo-spectral (Chebyshev) parallel Helmholtz solver package | magicsquirrel | Main CFD Forum | 0 | July 13, 2011 11:45 |
Divergence detected when using parallel solver | Phil | FLUENT | 3 | May 9, 2008 09:17 |
Parallel solver, divergence | Phil | FLUENT | 0 | April 30, 2008 10:42 |
Which parallel solver is most suitable for my app? | zonexo | Main CFD Forum | 1 | November 17, 2006 10:46 |
direct parallel solver | sylvain | Main CFD Forum | 2 | June 25, 2001 08:56 |