===== Commit 2015-12-11===== ==== Optimisation FVTM (3) ==== Troisième commit d'optimisation du transfert de données par FVTM. Deux "petites" modifs dans ce commit : J'ai continué d'extraire des routines de calculs des boucles imbriquées. Ensuite, lors de la recherche de l'élément qui correspond à une position donnée, je sauvegarde le bon élément de l'itération précédente et teste d'abord si cet élément correspond avant de boucler sur tout le maillage. Chaque modif réduit encore d'une dizaine de pourcents la durée du transfert. Pour ceux qui sont intéressés par le transfert de données, voici une idée des améliorations des temps de calcul pour le cas-test de backwardExtrusion en 3D, avec 3584 éléments, introduites par ce commit et les deux précédents. ''Global'' est le temps total, ''Integration'' regroupe le temps de l'intégration temporelle, ''Remeshing'' le temps des opérations de remaillage, transfert de données et rééquilibrage, et ''Other'' le reste. Pour info, j'ai réduit le temps normal d'intégration temporelle, donc le ratio réel intégration/remaillage est plus favorable. | Times | Original | Opti 1 | Opti 2 | Opti 3 | | Global User CPU Time | 1769.0 | 327.1 | 262.5 | 213.4 | | Integration User CPU Time | 101.6 | 99.6 | 102.3 | 101.8 | | Remeshing User CPU Time | 1665.4 | 225.5 | 158.1 | 109.5 | | Other User CPU Time | 2.0 | 2.0 | 2.1 | 2.1 | ===== Fichiers ajoutés/supprimés ===== A : R : ===== Tests ajoutés/supprimés ===== A : R : --- //[[pjoris@ulg.ac.be|Pierre Joris]] 2015/12/11 //