Convergence issues when running in parallel
Posted: Tue Mar 15, 2011 12:28 pm
Dear all,
I would like to use Code_Saturne in parallel mode and so I performed a few tests without being successful yet.
You will find attached the same case which I ran on a single core and then on 12 cores (on the same workstation). This case is just a simple atmospheric dispersion case (with a block structured mesh), and I just tried to correctly set the wind flow for the moment. When ran on a single processor, I get some good results (with a max velocity of 6.9 m/s). But when ran on 12 cores, I got some strange results (with a max velocity of about 24 m/s instead of 6.9 m/s) and some really weird pressure, velocity, temperature.... distributions across the domain. I think that I have some convergence issues in parallel mode as it's not running faster on 12 cores than on a single core.
You will see in the attached files that I strictly use the same subroutines for both single and parallel cases. I think I might be doing something wrong as I saw some specifications about the use of user subroutines in parallel mode in the user guide. But I can't figure out what as I'm not very familiar with parallel calculations.
I'm using Code_Saturne V2.0.1 with the default partitioner (I did not compiled metis nor scotch). Perhaps this could help ? I also visualized the domain partitions in Paraview and saw some strange decompositions (I think the domain is automatically split in equal cell numbers). I'm not sure that such a decomposition will help to solve my convergence issues (it's just a suggestion) ? But I can't figure out how to manually split the domain (just to check if that can be a solution to my problem).
Anyway, I'm waiting for some suggestions. Thank you in advance for your help.
Regards.
Nicolas MERIGOUX
I would like to use Code_Saturne in parallel mode and so I performed a few tests without being successful yet.
You will find attached the same case which I ran on a single core and then on 12 cores (on the same workstation). This case is just a simple atmospheric dispersion case (with a block structured mesh), and I just tried to correctly set the wind flow for the moment. When ran on a single processor, I get some good results (with a max velocity of 6.9 m/s). But when ran on 12 cores, I got some strange results (with a max velocity of about 24 m/s instead of 6.9 m/s) and some really weird pressure, velocity, temperature.... distributions across the domain. I think that I have some convergence issues in parallel mode as it's not running faster on 12 cores than on a single core.
You will see in the attached files that I strictly use the same subroutines for both single and parallel cases. I think I might be doing something wrong as I saw some specifications about the use of user subroutines in parallel mode in the user guide. But I can't figure out what as I'm not very familiar with parallel calculations.
I'm using Code_Saturne V2.0.1 with the default partitioner (I did not compiled metis nor scotch). Perhaps this could help ? I also visualized the domain partitions in Paraview and saw some strange decompositions (I think the domain is automatically split in equal cell numbers). I'm not sure that such a decomposition will help to solve my convergence issues (it's just a suggestion) ? But I can't figure out how to manually split the domain (just to check if that can be a solution to my problem).
Anyway, I'm waiting for some suggestions. Thank you in advance for your help.
Regards.
Nicolas MERIGOUX