Table of Contents
Commit 2019-05-23
Ce commit est pour corriger une erreur dans la construction des arbres des boites (boundary volume hierarchy) utilisées dans la détection du contact.
Boundary volume hierarchy
Dans la stratégie de construction du haut vers le bas (Top Down Builder), j'ai malheureusement passé un vector par copie au lieu de référence lorsque nous effectuons un tri des facettes “maitre” selon un axe structural X ou Y ou Z. Je l'ai remarqué en utilisant l'outil d'Intel pour profiler le code au niveau du temps CPU. Par la même occasion, j'ai ajouté un gardien supplémentaire pour ne pas trier ce vecteur inutilement.
Suite à ma modification, le temps de calcul de la création des boundary volume hierarchy dans le test de redressage de tubes (cf. Romain Boman) passe de
SkinBoundaryVolumeHierarchy Tree : Building ... BVH Building Time:3.08s Tree Information Number of Nodes = 4759 Number of Leaves = 4760 Height = 14 Minimum Height = 12 Maximum Height = 4759
A
SkinBoundaryVolumeHierarchy Tree : Building ... BVH Building Time:0.05s Tree Information Number of Nodes = 4759 Number of Leaves = 4760 Height = 14 Minimum Height = 12 Maximum Height = 4759
Test Modifié
J'ai activé la recherche du contact avec le boundary volume hierarchy sur le test arcelor/tools/piedMilieu/drawing.py . On observe un gain significatif dans le temps de calcul car on passe de 230 sec à 57.89 sec sur la station Gaston par exemple.
Fichiers ajoutés/supprimés
[a]: [r]:
Cas tests ajoutés/supprimés
[a]: [r]:
— gaëtan 2019/05/23 17:30