Atom topic feed | site map | contact | login | Protection des données personnelles | Powered by FluxBB | réalisation artaban
You are not logged in.
Hello,
When running a computation based on an "overloaded" version of Code_Aster in MPI with mpi_nbcpu = 2, the following appeared in the mess file.
!----------------------------------------------------------------------------------------------------------!
! <EXCEPTION> <CALCULEL6_54> !
! !
! Problème d'utilisation du parallélisme : !
! Les fonctionnalités de parallélisme utilisées ici (calculs distribués) conduisent à créer !
! des structures de données "incomplètes" (i.e. partiellement calculées sur chaque processeur). !
! !
! Malheureusement, dans la suite des traitements, le code a besoin que les structures de données soient !
! "complètes". On est donc obligé d'arreter le calcul. !
! !
! Conseils pour l'utilisateur : !
! 1) Il faut émettre une demande d'évolution du code pour que le calcul demandé aille à son terme. !
! 2) En attendant, il ne faut pas utiliser la "distribution" des structures de donnée. !
! Aujourd'hui, cela veut dire : !
! - éviter de se retrouver avec une "partition" du modèle dans la commande où le problème a été !
! détecté. !
! - pour cela, juste avant l'appel à la commande problématique, il faut appeler la commande : !
! MODI_MODELE(reuse=MO, MODELE=MO, PARTITION=_F(PARALLELISME='NON')) !
!----------------------------------------------------------------------------------------------------------!
This message doesn't appear with mpi_nbcpu =1 and the calculation runs (even if results seem to be quiet weird (this is under investigation)).
Hence the question: is "overloading" compatible with MPI parallel calculations?
I thank you in advance for any advices.
Bests,
Pierre
Last edited by pierre_j (2011-07-19 12:39:26)
Offline
Hi,
Discrete contact-based penalization is not available in parallel. Available contact methods when running in parallel are :
- CONTRAINTE
- GCP
- LAGRANGIEN
- CONTINUE
If friction is added :
- LAGRANGIEN (2D only)
- CONTINUE
This explains the error message, the overloading is not the cause here. When running sequential everything is OK of course.
TdS
Offline
Hi
Just for clarity. Does parallelism work for dual/quad-core processors or just machines with multiple single-core processors on the motherboard?
Todd.
Offline
Hi Todd,
Just for clarity. Does parallelism work for dual/quad-core processors or just machines with multiple single-core processors on the motherboard?
Parallelism in Code_Aster works for both multi-cores and multiple single-cores since you can install MPI (the standard we use to make Aster parallel) on a shared-memory machine with multi-cores.
However one will not obtain the same amount of speed-up on a 2*dual-core processors that one would expect from 4 single-core processors, each with access to its own memory.
Indeed for some operation, such as using an iterative solver, memory bandwidth is more important than sheer cpu power. And on modern personal computers dual/quad-core processors usually share the same memory bandwidth.
TdS
Offline
Thank you very much Thomas,
Bests,
Pierre
Offline
Indeed for some operation, such as using an iterative solver, memory bandwidth is more important than sheer cpu power. And on modern personal computers dual/quad-core processors usually share the same memory bandwidth.
And we can add that each MPI process will generate its own data in a temporary directory. So, one disk controller have to manage N dataflow. Limitation due to multiple disk access will be important that limitation in bandwidth memory.
Offline