commit:2014:09_04
This is an old revision of the document!
−Table of Contents
Commit 2014-09-04
- Solveurs symmétriques
- divers
Solveurs symmétriques
- Ayant noté qu'on essayait de résoudre des problèmes aux valeurs propres sur un système non symétrique, j'ai commencé par permettre la génération (en calculant la moyenne des termes potentiellement non symmétriques de la matrice de raideur, d'autres méthodes pourront être envisagées le cas échéant dans le futur…), le stoquage, la factorisation de systèmes d'équation symmétriques (au format skyline ou CSR)
- Afin de mieux coller à ce qu'elle contient la classe
DSSMatrix
a été renomméeCSRMatrix
: classe gérant le stockage d'une matrice au format CSR. Celle-ci pouvant être symétrique, structurellement symétrique ou non symétrique. Seule les 2 premières sont à ce jour utilisées dans Metafor. Plus dinfo sur le format CSR et son utilisation au travers des MKL ici . - Analyse sur base de apps.qs.tube (System dimension = 5427 - Dense system size = 29452329 )
DSS | Sym DSS | Skyline | Sym Skyline | |
---|---|---|---|---|
BuildK | 17.2 | 14.5 | 13.9 | 13.6 |
SolveK | 10.8 | 6.7 | 25.0 | 20.6 |
TSC-STP | 93 | 93 | 93 | 93 |
TSC-ITE | 213 | 211 | 213 | 211 |
Memory | 320047 | 162737 | 2057994 | 1028997 |
Memory Ratio | 1.09 % | 0.55 % | 6.99 % | 3.49 % |
* Utilisation : metafor.getSolverManager().setSymmetric(True)
- Pas testé sur le solveur iteratif (ca pourrait le faire & permettre d'utiliser d'autres solveurs genre GC, … dixit Romain)
ValuesManager
- interfacage python de la fonction size() et des operateurs [] et () de ValuesManager
divers
- Ajout d'une fonction Blas::getNumThreads()
- Toolbox.Utilities :
- _numTasks = 1 # nombre de taches à tourner en (opti) * ajout des fonctions d'interface : getNumTasks() / setNumTasks(numTasks) * suppression de la fonction recover (doublon de rebuildAsciiFromV()) * asciiFromV : Ajout de la possibilité de limiter les ascii aux 'nt' premiers pas de temps des .v (sans modifier ceux-ci) * Ajout d'une interface getValuesMAnager (reconstruisant ce qu'il faut…) pour faire des ascii from v à la main … * idem pour les
ObjectiveFunctions
: rerunObjectiveFunctionSet() / getObjectiveFunctionSet() * PythonInterpreter : Initialisation de NbTasks (variable globale de toolbox.utilities)… pour opti en
- Opti : implémentation (sur base du modèle battery) de l'execution de tests en dans les études paramétriques ===== Comp-Launch-battery ===== * Ajout des algorithmes multiImport dans battery.py / launch.py * ajout du setNbTasks(nbTasks) <note > N'oubliez pas d'updater vos linuxBin … </note> ==== Divers ==== ** ===== Fichiers ajoutés/supprimés ===== <code> A : R : </code> ===== Tests ajoutés/supprimés ===== <code> A : apps.qs.tubeDSS.py A : apps.qs.tubeSymDSS.py A : apps.qs.tubeSkyline.py A : apps.qs.tubeSymSkyline.py R : </code> — Luc Papeleux 2014/09/04
commit/2014/09_04.1409848297.txt.gz · Last modified: 2016/03/30 15:22 (external edit)