Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2013:09_20

Commit 2013-09-20

CPU Optimisation

CPU Optimisation

  • Suppression d'un bottleneck cpu dans les loadings:
    • lors du calcul des LoadingsSet (principalement rotation/radial/complexUniform), on récupérait l'info au pas de temps précédent en faisant un setStep(nt-1) pour ramener toute l'analyse au pas précédent puis à nouveau un setStep(nt) pour revenir au pas de temps courant
    • setStep : une opération excessivement couteuse
    • j'ai remplacé cette technique par la recherche du Step(nt-1) (duquel on peut retrouver l'info nécessaire au loading)
    • sur le début d'un test de profilage (~400 outil à faire tourner par pas de temps) le calcul des conditions limites (en début de pas de temps) passe de 783 sec à 0.782 sec !!!
  • Possibilité de ne pas créer les fichiers courbes (.v, .ascii) dans les extracteurs pour éviter de faire hurler les disques pendant les batteries (principalement pour monosMaterials2)
    • valuesmanager.setOnFile(False) : génère un vectorInMemory au lieu d'un VectorOnFile (attention, pas valable pour les sorties multiples : MatrixOnFile)

Batterie

Triangle Mesher

  • modification de la classe TriangleMesher pour qu'elle n'écrive plus ses fichiers temporaire (d'un nom abscon) n'importe où (généralement dans la racine du disque), mais écrive des fichiers nommé triangMesh dans le workspace.
    • nb : il faut evidemment que les cas tests soient écrits en format fonction (en “oldStyle”, le workspace n'existe pas au chargement)
  • Si il fallait pouvoir avoir plusieur mailleurs dans le même cas test, il suffit de donner un autre nom dans le constructeur :
class TriangleMesher:
    "Triangle interface"
    def __init__(self, target, domain, name="triangMesh"):
 

Projet tbb

  • Ajout d'un fichier de configuration win64-vs2012-tbb.cmake pour compiler avec tbbloop actif (dev only)

apps.remeshing.forge

Le cas test apps.remeshing.forge plante de manière aléatoire à l'étape 3, 4 ou 5 (pas toujours à la même étape dans des runs successifs!!!). Ne pouvant le fixer, il passe dans Failed (mais pourrait en ressortir au prochain commit). A FIXER SVP !!!

Fichiers ajoutés/supprimés

 
A oo_meta\CMake\win64-vs2012-tbb.cmake
R

Luc Papeleux 2013/09/20

commit/2013/09_20.txt · Last modified: 2016/03/30 15:23 (external edit)