Il existe deux manières d’utiliser plusieurs cœurs :
Parallélisation interne
Certaines parties du processus du logiciel sont effectuées simultanément dans plusieurs threads. Il est recommandé d’utiliser uniquement des cœurs physiques, pas de cœurs logiques (virtuels). L’expérience des calculs scientifiques et techniques a montré que la parallélisation présente l’avantage d’être au maximum trois fois et demie plus rapide, quel que soit le nombre de cœurs. Certains processus, tels que le solveur itératif d’équations, ne sont pas adaptés à une telle parallélisation.
Parallélisation externe
Les calculs individuels sont effectués dans des threads individuels. Par exemple, vous pouvez exécuter quatre solveurs dans quatre threads pour calculer quatre combinaisons de charges différentes.
- RSTAB 9 : La parallélisation externe est utilisée.
- RFEM 6 : La parallélisation interne est utilisée dans certaines parties du programme - montage de matrice de rigidité locale, solveur direct ...
La partie de logiciel appelée « FemBase » est massivement parallélisée : Cette partie calcule les combinaisons de résultats et renvoie tous les résultats aux graphiques, aux tableaux et aux sections correspondantes. Elle peut par exemple lire le résultat de trois cas de charge dans trois threads et calculer la combinaison de résultats dans le quatrième.
La parallélisation externe est effectuée par le Solver Manager, qui a été spécialement développé pour RFEM 6.
Les calculs pour la vérification de l’acier, du bois, de l’aluminium et du béton doivent également être effectués en parallèle.
Tous les cas de charge calculés linéairement (linéarité physique) ont la même matrice de rigidité.
Les cas de charge calculés de manière non linéaire et les combinaisons de charges ont généralement des matrices de rigidité différentes, qui sont compilées séparément. (Mais même dans ces cas, nous essayons de regrouper les cas avec la même matrice de rigidité, qui n’est composée qu’une seule fois pour un groupe particulier.)