===== Commit 2017-01-18 ===== Initialisation blas + eas ===== oo_meta ===== ==== mtMath ==== * mtBlas : modification de l'initialisation des Blas de Metafor (toutes les fonctions blas ayant été retirées des operateurs mathématiques utilisés dans les boucles parallélisées par TBB). * les blas/lapack n'ont pas été enlevées des calculs de * pseudoInverse (utilisé principalement en prépro mais aussi en ALE => à modifier) * SymMatrix : résolution de système via décomposition ldlt (pas utilisé à mon observation) * SymMatrix : résolution de système via décomposition Cholevsky (pas utilisé à mon observation) * calcul fréquentiel (Lanczos) vu que c'est utilisé soit en pré, soit en post-pro sur des systèmes globaux (donc hors zone TBB) * L'initialisation des blas est générique, mais sauf validation spécifique (apps/parallel), il n'y a pas de raison d'y recourir (passer par le paramètre -k de metafor.exe ou de battery.py ou à travers launch.py pour imposer le nombre de threads). Prière de ne pas fixer un nombre de threads dans les jeux de données ... en c++ : void Blas::setNumThreads(int n) en python : wrap.Blas.setNumThreads(n) L'utilisation des blas intel (mkl) permet toujours une configuration de divers aspects des MKL (les fonctions ont été renommées de manière à éviter toute confusion) static int getMklNumThreadsBlas(); static void setMklNumThreadsBlas(int n); static int getMklNumThreadsPardiso(); static void setMklNumThreadsPardiso(int n); static int getMklNumThreadsFFT(); static void setMklNumThreadsFFT(int n); static int getMklNumThreadsVML(); static void setMklNumThreadsVML(int n); * mtMath::Matrix : suppression d'une operation blas oubliée dans l'operateur * ==== mtElement ==== * EasCauchyMechVolIntegMeth : remplacement de mtMath::Matrix &k22Inv = getInverse(k22); k11 -= k12 * k22Inv * k21; par une version ne demandant pas le calcul explicite de k22Inv : mtMath::Matrix k22Invk21(nbModes,numberOfDof); k22.directSolve(k21, k22Invk21); k11 -= k12 * k22Invk21; même si la différence de temps de calcul est difficilement mesurable ===== Fichiers ajoutés/supprimés ===== Adding: Deleting: ===== Tests ajoutés/supprimés ===== Adding: Deleting: --- //[[L.Papeleux@ulg.ac.be|Luc Papeleux]] 2017/01/18 //